0000352825-23-000057.txt : 20230510 0000352825-23-000057.hdr.sgml : 20230510 20230510123106 ACCESSION NUMBER: 0000352825-23-000057 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 82 CONFORMED PERIOD OF REPORT: 20230331 FILED AS OF DATE: 20230510 DATE AS OF CHANGE: 20230510 FILER: COMPANY DATA: COMPANY CONFORMED NAME: FOSTER L B CO CENTRAL INDEX KEY: 0000352825 STANDARD INDUSTRIAL CLASSIFICATION: WHOLESALE-METALS SERVICE CENTERS & OFFICES [5051] IRS NUMBER: 251324733 STATE OF INCORPORATION: PA FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-10436 FILM NUMBER: 23905289 BUSINESS ADDRESS: STREET 1: 415 HOLIDAY DR CITY: PITTSBURGH STATE: PA ZIP: 15220 BUSINESS PHONE: 4129283431 MAIL ADDRESS: STREET 1: 415 HOLIDAY DR CITY: PITTSBURGH STATE: PA ZIP: 15220 10-Q 1 fstr-20230331.htm 10-Q fstr-20230331
false2023Q10000352825--12-31100003528252023-01-012023-03-3100003528252023-05-02xbrli:shares00003528252023-03-31iso4217:USD00003528252022-12-31iso4217:USDxbrli:shares0000352825us-gaap:ProductMember2023-01-012023-03-310000352825us-gaap:ProductMember2022-01-012022-03-310000352825us-gaap:ServiceMember2023-01-012023-03-310000352825us-gaap:ServiceMember2022-01-012022-03-3100003528252022-01-012022-03-3100003528252021-12-3100003528252022-03-310000352825us-gaap:CommonStockMember2022-12-310000352825us-gaap:AdditionalPaidInCapitalMember2022-12-310000352825us-gaap:RetainedEarningsMember2022-12-310000352825us-gaap:TreasuryStockCommonMember2022-12-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-12-310000352825us-gaap:NoncontrollingInterestMember2022-12-310000352825us-gaap:RetainedEarningsMember2023-01-012023-03-310000352825us-gaap:NoncontrollingInterestMember2023-01-012023-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-03-310000352825us-gaap:AdditionalPaidInCapitalMember2023-01-012023-03-310000352825us-gaap:TreasuryStockCommonMember2023-01-012023-03-310000352825us-gaap:CommonStockMember2023-03-310000352825us-gaap:AdditionalPaidInCapitalMember2023-03-310000352825us-gaap:RetainedEarningsMember2023-03-310000352825us-gaap:TreasuryStockCommonMember2023-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310000352825us-gaap:NoncontrollingInterestMember2023-03-310000352825us-gaap:CommonStockMember2021-12-310000352825us-gaap:AdditionalPaidInCapitalMember2021-12-310000352825us-gaap:RetainedEarningsMember2021-12-310000352825us-gaap:TreasuryStockCommonMember2021-12-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-310000352825us-gaap:NoncontrollingInterestMember2021-12-310000352825us-gaap:RetainedEarningsMember2022-01-012022-03-310000352825us-gaap:NoncontrollingInterestMember2022-01-012022-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-03-310000352825us-gaap:AdditionalPaidInCapitalMember2022-01-012022-03-310000352825us-gaap:TreasuryStockCommonMember2022-01-012022-03-310000352825us-gaap:CommonStockMember2022-03-310000352825us-gaap:AdditionalPaidInCapitalMember2022-03-310000352825us-gaap:RetainedEarningsMember2022-03-310000352825us-gaap:TreasuryStockCommonMember2022-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-310000352825us-gaap:NoncontrollingInterestMember2022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2022-01-012022-03-310000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:OperatingSegmentsMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:OperatingSegmentsMember2022-01-012022-03-310000352825us-gaap:OperatingSegmentsMember2023-01-012023-03-310000352825us-gaap:OperatingSegmentsMember2022-01-012022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2022-12-310000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2023-03-310000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2022-12-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:OperatingSegmentsMember2023-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:OperatingSegmentsMember2022-12-310000352825us-gaap:CorporateNonSegmentMember2023-03-310000352825us-gaap:CorporateNonSegmentMember2022-12-310000352825fstr:ChemtecEnergyServicesLLCMember2023-03-302023-03-300000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailProductsAndFrictionManagementMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailProductsAndFrictionManagementMember2022-01-012022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2022-01-012022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMember2022-01-012022-03-310000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:OtherPrecastConcreteProductsMemberfstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825fstr:OtherPrecastConcreteProductsMemberfstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825fstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMemberfstr:CoatingsAndMeasurementMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMemberfstr:CoatingsAndMeasurementMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMember2022-01-012022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2023-01-012023-03-310000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:TransferredAtPointInTimeMember2023-01-012023-03-310000352825us-gaap:TransferredAtPointInTimeMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredOverTimeMember2023-01-012023-03-310000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2023-01-012023-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:TransferredOverTimeMember2023-01-012023-03-310000352825us-gaap:TransferredOverTimeMember2023-01-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2022-01-012022-03-310000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:TransferredAtPointInTimeMember2022-01-012022-03-310000352825us-gaap:TransferredAtPointInTimeMember2022-01-012022-03-310000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredOverTimeMember2022-01-012022-03-310000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2022-01-012022-03-310000352825fstr:SteelProductsAndMeasurementMemberus-gaap:TransferredOverTimeMember2022-01-012022-03-310000352825us-gaap:TransferredOverTimeMember2022-01-012022-03-310000352825fstr:OverTimeInputMethodMember2023-01-012023-03-310000352825fstr:OverTimeInputMethodMember2022-01-012022-03-31xbrli:pure0000352825fstr:OverTimeOutputMethodMember2023-01-012023-03-310000352825fstr:OverTimeOutputMethodMember2022-01-012022-03-3100003528252023-04-012023-03-310000352825fstr:RailTechnologiesAndServicesSegmentMember2022-12-310000352825fstr:PrecastConcreteProductsMember2022-12-310000352825fstr:SteelProductsAndMeasurementMember2022-12-310000352825fstr:RailTechnologiesAndServicesSegmentMember2023-03-310000352825fstr:PrecastConcreteProductsMember2023-03-310000352825fstr:SteelProductsAndMeasurementMember2023-03-310000352825srt:WeightedAverageMemberus-gaap:NoncompeteAgreementsMember2023-01-012023-03-310000352825us-gaap:NoncompeteAgreementsMember2023-03-310000352825us-gaap:PatentsMembersrt:WeightedAverageMember2023-01-012023-03-310000352825us-gaap:PatentsMember2023-03-310000352825srt:WeightedAverageMemberus-gaap:CustomerRelationshipsMember2023-01-012023-03-310000352825us-gaap:CustomerRelationshipsMember2023-03-310000352825us-gaap:TrademarksAndTradeNamesMembersrt:WeightedAverageMember2023-01-012023-03-310000352825us-gaap:TrademarksAndTradeNamesMember2023-03-310000352825us-gaap:TechnologyBasedIntangibleAssetsMembersrt:WeightedAverageMember2023-01-012023-03-310000352825us-gaap:TechnologyBasedIntangibleAssetsMember2023-03-310000352825us-gaap:OffMarketFavorableLeaseMembersrt:WeightedAverageMember2023-01-012023-03-310000352825us-gaap:OffMarketFavorableLeaseMember2023-03-310000352825srt:WeightedAverageMemberus-gaap:NoncompeteAgreementsMember2022-01-012022-12-310000352825us-gaap:NoncompeteAgreementsMember2022-12-310000352825us-gaap:PatentsMembersrt:WeightedAverageMember2022-01-012022-12-310000352825us-gaap:PatentsMember2022-12-310000352825srt:WeightedAverageMemberus-gaap:CustomerRelationshipsMember2022-01-012022-12-310000352825us-gaap:CustomerRelationshipsMember2022-12-310000352825us-gaap:TrademarksAndTradeNamesMembersrt:WeightedAverageMember2022-01-012022-12-310000352825us-gaap:TrademarksAndTradeNamesMember2022-12-310000352825us-gaap:TechnologyBasedIntangibleAssetsMembersrt:WeightedAverageMember2022-01-012022-12-310000352825us-gaap:TechnologyBasedIntangibleAssetsMember2022-12-310000352825us-gaap:OffMarketFavorableLeaseMembersrt:WeightedAverageMember2022-01-012022-12-310000352825us-gaap:OffMarketFavorableLeaseMember2022-12-310000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-03-310000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-03-310000352825us-gaap:RevolvingCreditFacilityMemberfstr:FourthAmendedAndRestatedCreditAgreementMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-132021-08-130000352825us-gaap:RevolvingCreditFacilityMemberfstr:FourthAmendedAndRestatedCreditAgreementMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-130000352825us-gaap:RevolvingCreditFacilityMemberfstr:PriorCreditFacilityMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-132021-08-130000352825fstr:FourthAmendedAndRestatedCreditAgreementMemberus-gaap:DebtInstrumentRedemptionPeriodOneMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2023-03-31fstr:covenant0000352825fstr:FourthAmendedAndRestatedCreditAgreementMemberus-gaap:DebtInstrumentRedemptionPeriodOneMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-130000352825fstr:FourthAmendedAndRestatedCreditAgreementMemberus-gaap:DebtInstrumentRedemptionPeriodTwoMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-130000352825fstr:FourthAmendedAndRestatedCreditAgreementMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2021-08-1300003528252022-08-120000352825us-gaap:RevolvingCreditFacilityMemberfstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember2023-03-310000352825us-gaap:PerformanceSharesMember2023-01-012023-03-310000352825us-gaap:RestrictedStockMember2023-01-012023-03-310000352825us-gaap:RestrictedStockMember2022-01-012022-03-310000352825us-gaap:PerformanceSharesMember2022-01-012022-03-310000352825us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:RestrictedStockMember2023-01-012023-03-310000352825us-gaap:ShareBasedCompensationAwardTrancheTwoMembersrt:MinimumMemberus-gaap:RestrictedStockMember2023-01-012023-03-310000352825srt:DirectorMember2023-01-012023-03-310000352825us-gaap:RestrictedStockMember2022-12-310000352825fstr:DeferredStockUnitsMember2022-12-310000352825us-gaap:PerformanceSharesMember2022-12-310000352825fstr:DeferredStockUnitsMember2023-01-012023-03-310000352825us-gaap:RestrictedStockMember2023-03-310000352825fstr:DeferredStockUnitsMember2023-03-310000352825us-gaap:PerformanceSharesMember2023-03-310000352825us-gaap:FairValueInputsLevel1Member2023-03-310000352825us-gaap:FairValueInputsLevel2Member2023-03-310000352825us-gaap:FairValueInputsLevel3Member2023-03-310000352825us-gaap:FairValueInputsLevel1Member2022-12-310000352825us-gaap:FairValueInputsLevel2Member2022-12-310000352825us-gaap:FairValueInputsLevel3Member2022-12-3100003528252022-01-012022-12-310000352825us-gaap:SwapMember2023-01-012023-03-310000352825us-gaap:SwapMember2022-01-012022-03-310000352825country:US2023-01-012023-03-31fstr:plan0000352825country:CA2023-01-012023-03-310000352825country:GB2023-01-012023-03-310000352825country:US2022-01-012022-03-310000352825country:US2023-03-310000352825country:GB2022-01-012022-03-310000352825country:GB2023-03-310000352825us-gaap:PensionPlansDefinedBenefitMember2023-01-012023-03-310000352825country:CA2022-01-012022-03-310000352825fstr:UPRRMember2023-01-012023-03-310000352825fstr:UPRRMember2019-03-130000352825fstr:UPRRMember2019-03-132019-03-130000352825fstr:UprrMember2019-03-130000352825fstr:UprrMember2021-09-3000003528252017-06-05fstr:companyfstr:potentially_responsible_party00003528252020-03-26fstr:party

UNITED STATES
SECURITIES AND EXCHANGE COMMISSION
Washington, DC 20549
FORM 10-Q
(Mark One)
Quarterly Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934
for the quarterly period ended March 31, 2023
Or
Transition Report Pursuant to Section 13 or 15(d) of the Securities Exchange Act of 1934
for the transition period from                      to                     
Commission File Number: 000-10436
lbflogo.gif
L.B. Foster Company
(Exact name of registrant as specified in its charter)
Pennsylvania
25-1324733
(State of Incorporation)
(I. R. S. Employer Identification No.)
415 Holiday Drive, Suite 100, Pittsburgh, Pennsylvania
15220
(Address of principal executive offices)(Zip Code)
(412) 928-3400
(Registrant’s telephone number, including area code)
Securities registered pursuant to Section 12(b) of the Act:
Title of each classTrading Symbol(s)Name of each exchange on which registered
Common Stock, par value $0.01FSTRNASDAQ Global Select Market

Indicate by check mark whether the registrant (1) has filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that the registrant was required to file such reports), and (2) has been subject to such filing requirements for the past 90 days.   Yes ☒   No ☐

Indicate by check mark whether the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T (section 232.405 of this chapter) during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).   Yes ☒    No ☐
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, a smaller reporting company, or an emerging growth company. See the definitions of “large accelerated filer,” “accelerated filer,” “smaller reporting company,” and “emerging growth company” in Rule 12b-2 of the Exchange Act.
Large accelerated filer ☐
Accelerated filer
Non-accelerated filer ☐
Smaller reporting company
Emerging growth company
If an emerging growth company, indicate by check mark if the registrant has elected not to use the extended transition period for complying with any new or revised financial accounting standards provided pursuant to Section 13(a) of the Exchange Act.  ☐

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

As of May 2, 2023, there were 11,085,149 shares of the registrant’s common stock, par value $0.01 per share, outstanding.




L.B. FOSTER COMPANY AND SUBSIDIARIES
INDEX
 
Page

2

Part I. FINANCIAL INFORMATION
Item 1. Financial Statements
L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED BALANCE SHEETS
(In thousands, except share data)
March 31,
2023
December 31,
2022
(Unaudited)
ASSETS
Current assets:
Cash and cash equivalents$2,639 $2,882 
Accounts receivable - net (Note 5)54,904 82,455 
Contract assets - net (Note 3)31,207 33,613 
Inventories - net (Note 6)84,594 75,721 
Other current assets11,844 11,061 
Total current assets185,188 205,732 
Property, plant, and equipment - net78,960 85,344 
Operating lease right-of-use assets - net16,513 17,291 
Other assets:
Goodwill (Note 4)30,863 30,733 
Other intangibles - net (Note 4)22,549 23,831 
Deferred tax assets (Note 9) 24 
Other assets2,305 2,355 
TOTAL ASSETS$336,378 $365,310 
LIABILITIES AND STOCKHOLDERS’ EQUITY
Current liabilities:
Accounts payable $48,553 $48,782 
Deferred revenue14,556 19,452 
Accrued payroll and employee benefits4,176 10,558 
Current portion of accrued settlement (Note 13)8,000 8,000 
Current maturities of long-term debt (Note 7)117 127 
Other accrued liabilities13,100 16,192 
Total current liabilities88,502 103,111 
Long-term debt (Note 7)79,979 91,752 
Deferred tax liabilities (Note 9)1,753 3,109 
Long-term portion of accrued settlement (Note 13)8,000 8,000 
Long-term operating lease liabilities13,416 14,163 
Other long-term liabilities7,714 7,577 
Stockholders’ equity:
Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at March 31, 2023 and December 31, 2022, 11,115,779; shares outstanding at March 31, 2023 and December 31, 2022, 10,809,711 and 10,776,827, respectively
111 111 
Paid-in capital40,951 41,303 
Retained earnings121,017 123,169 
Treasury stock - at cost, 306,068 and 338,952 common stock shares at March 31, 2023 and December 31, 2022, respectively
(5,174)(6,240)
Accumulated other comprehensive loss(20,296)(21,165)
Total L.B. Foster Company stockholders’ equity136,609 137,178 
Noncontrolling interest405 420 
Total stockholders’ equity137,014 137,598 
TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY$336,378 $365,310 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
3

L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS
(Unaudited)
(In thousands, except per share data)
Three Months Ended
March 31,
20232022
Sales of goods$98,538 $84,421 
Sales of services16,950 14,373 
Total net sales115,488 98,794 
Cost of goods sold78,065 69,845 
Cost of services sold14,132 12,502 
Total cost of sales92,197 82,347 
Gross profit23,291 16,447 
Selling and administrative expenses21,423 17,298 
Amortization expense1,365 1,436 
Operating profit (loss)503 (2,287)
Interest expense - net1,388 370 
Other expense (income) - net1,827 (563)
Loss before income taxes(2,712)(2,094)
Income tax benefit(541)(508)
Net loss(2,171)(1,586)
Net loss attributable to noncontrolling interest(19)(20)
Net loss attributable to L.B. Foster Company$(2,152)$(1,566)
Basic loss per common share$(0.20)$(0.15)
Diluted loss per common share$(0.20)$(0.15)


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

L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE LOSS
(Unaudited)
(In thousands)
Three Months Ended
March 31,
20232022
Net loss$(2,171)$(1,586)
Other comprehensive income (loss), net of tax:
Foreign currency translation adjustment1,247 (880)
Unrealized (loss) gain on cash flow hedges, net of tax benefit of $0 and $188, respectively
(418)551 
Cash flow hedges reclassified to earnings, net of tax expense of $0 and $66, respectively
 93 
Reclassification of pension liability adjustments to earnings, net of tax expense of $2 and $16, respectively*
40 49 
Total comprehensive loss(1,302)(1,773)
Less comprehensive (loss) income attributable to noncontrolling interest:
Net loss attributable to noncontrolling interest(19)(20)
Foreign currency translation adjustment4 85 
Amounts attributable to noncontrolling interest(15)65 
Comprehensive loss attributable to L.B. Foster Company$(1,287)$(1,838)

 
*
Reclassifications out of “Accumulated other comprehensive loss” for pension obligations are charged to “Selling and administrative expenses” within the Condensed Consolidated Statements of Operations.

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

L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS
(Unaudited)
(In thousands)
Three Months Ended
March 31,
20232022
CASH FLOWS FROM OPERATING ACTIVITIES:
Net loss$(2,171)$(1,586)
Adjustments to reconcile net loss to cash provided by (used in) operating activities:
Deferred income taxes(1,233)(574)
Depreciation2,505 1,938 
Amortization1,365 1,436 
Equity in income of nonconsolidated investments(17)(87)
(Gain) loss on sales and disposals of property, plant, and equipment(14)23 
Stock-based compensation884 258 
Loss on asset divestitures2,033  
Change in operating assets and liabilities:
Accounts receivable26,239 (4,556)
Contract assets(860)1,116 
Inventories(15,564)(4,781)
Other current assets(791)(4,648)
Other noncurrent assets(1,439)818 
Accounts payable4,921 4,680 
Deferred revenue(707)5,907 
Accrued payroll and employee benefits(6,386)(4,181)
Other current liabilities(2,981)(2,377)
Other long-term liabilities1,148 (1,022)
Net cash provided by (used in) operating activities6,932 (7,636)
CASH FLOWS FROM INVESTING ACTIVITIES:
Proceeds from the sale of property, plant, and equipment16 30 
Capital expenditures on property, plant, and equipment(699)(1,764)
Proceeds from business dispositions5,344 1,195 
Net cash provided by (used in) investing activities4,661 (539)
CASH FLOWS FROM FINANCING ACTIVITIES:
Repayments of debt(55,133)(30,892)
Proceeds from debt43,086 35,301 
Treasury stock acquisitions(309)(397)
Investment of noncontrolling interest334  
Net cash (used in) provided by financing activities(12,022)4,012 
Effect of exchange rate changes on cash and cash equivalents186 30 
Net decrease in cash and cash equivalents(243)(4,133)
Cash and cash equivalents at beginning of period2,882 10,372 
Cash and cash equivalents at end of period$2,639 $6,239 
Supplemental disclosure of cash flow information:
Interest paid$1,425 $369 
Income taxes received$(1,564)$(44)


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

L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY
(Unaudited)
(Dollars in thousands)
Three Months Ended March 31, 2023
Common
Stock
Paid-in
Capital
Retained
Earnings
Treasury
Stock
Accumulated Other
Comprehensive Loss
Noncontrolling
Interest
Total Stockholders’
Equity
Balance, December 31, 2022$111 $41,303 $123,169 $(6,240)$(21,165)$420 $137,598 
Net loss— — (2,152)— — (19)(2,171)
Other comprehensive income, net of tax:
Pension liability adjustment— — — — 40 — 40 
Foreign currency translation adjustment— — — — 1,247 4 1,251 
Unrealized derivative loss on cash flow hedges— — — — (418)— (418)
Issuance of 32,884 common shares, net of shares withheld for taxes
— (1,236)— 1,066 — — (170)
Stock-based compensation— 884 — — — — 884 
Balance, March 31, 2023$111 $40,951 $121,017 $(5,174)$(20,296)$405 $137,014 

Three Months Ended March 31, 2022
Common
Stock
Paid-in
Capital
Retained
Earnings
Treasury
Stock
Accumulated Other
Comprehensive Loss
Noncontrolling
Interest
Total Stockholders’
Equity
Balance, December 31, 2021$111 $43,272 $168,733 $(10,179)$(18,845)$518 $183,610 
Net loss— — (1,566)— — (20)(1,586)
Other comprehensive loss, net of tax:
Pension liability adjustment— — — — 49 — 49 
Foreign currency translation adjustment— — — — (965)85 (880)
Unrealized derivative gain on cash flow hedges— — — — 551 — 551 
Cash flow hedges reclassified to earnings— — — — 93 — 93 
Issuance of 34,440 common shares, net of shares withheld for taxes
— (1,377)— 979 — — (398)
Stock-based compensation— 258 — — — — 258 
Balance, March 31, 2022$111 $42,153 $167,167 $(9,200)$(19,117)$583 $181,697 


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

L.B. FOSTER COMPANY AND SUBSIDIARIES
NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS
(Unaudited)
(Dollars in thousands, except share data)
Note 1. Financial Statements
Basis of Presentation
The accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States (“GAAP”) for interim financial information and with the instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. The year-end consolidated balance sheet data was derived from audited financial statements, but does not include all disclosures required by GAAP. In the opinion of management, all estimates and adjustments (consisting of normal recurring accruals) considered necessary for a fair presentation have been included. Operating results for the three months ended March 31, 2023 are not necessarily indicative of the results that may be expected for the year ending December 31, 2023. This Quarterly Report on Form 10-Q should be read in conjunction with the consolidated financial statements and footnotes thereto included in L.B. Foster Company’s Annual Report on Form 10-K for the year ended December 31, 2022. In this Quarterly Report on Form 10-Q, references to “we,” “us,” “our,” and the “Company” refer collectively to L.B. Foster Company and its consolidated subsidiaries.
Note 2. Business Segments
The Company is a global technology solutions provider of engineered, manufactured products and services that builds and supports infrastructure. The Company’s innovative engineering and product development solutions address the safety, reliability, and performance needs of its customers’ most challenging requirements. The Company maintains locations in North America, South America, Europe, and Asia. The Company’s segments represent components of the Company (a) that engage in activities from which revenue is generated and expenses are incurred, (b) whose operating results are regularly reviewed by the Chief Operating Decision Maker, who uses such information to make decisions about resources to be allocated to the segments, and (c) for which discrete financial information is available. Operating segments are evaluated on their segment profit contribution to the Company’s consolidated results. Other income and expenses, interest, income taxes, and certain other items are managed on a consolidated basis. The Company’s segment accounting policies are described in Note 2 Business Segments of the Notes to the Company’s Consolidated Financial Statements contained in its Annual Report on Form 10-K for the year ended December 31, 2022.

The operating results of the Company's reportable segments were as follows for the periods presented:
Three Months Ended
March 31, 2023
Three Months Ended
March 31, 2022
Net SalesSegment Operating Profit (Loss)Net SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$64,384 $2,388 $63,710 $1,039 
Precast Concrete Products24,288 (348)15,010 (791)
Steel Products and Measurement26,816 (8)20,074 (2,148)
Total$115,488 $2,032 $98,794 $(1,900)

Segment profit (loss) from operations, as shown above, includes allocated corporate operating expenses. Operating expenses related to corporate headquarter functions that directly support the segment activity are allocated based on segment headcount, revenue contribution, or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments.

A reconciliation of reportable segment net profit (loss) to the Company’s consolidated total for the periods presented:
Three Months Ended
March 31,
20232022
Operating profit (loss) for reportable segments$2,032 $(1,900)
Interest expense - net(1,388)(370)
Other (expense) income - net(1,827)563 
Unallocated corporate expenses and other unallocated charges(1,529)(387)
Loss before income taxes$(2,712)$(2,094)

8

The following table illustrates assets of the Company by reportable segment for the periods presented:
March 31,
2023
December 31,
2022
Rail, Technologies, and Services$163,001 $172,111 
Precast Concrete Products104,581 108,598 
Steel Products and Measurement38,236 54,516 
Unallocated corporate assets30,560 30,085 
Total$336,378 $365,310 

On March 30, 2023, the Company sold substantially all the operating assets of its Chemtec Energy Services LLC business (“Chemtec”) for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,033 loss on sale, recorded in “Other expense (income) - net.” The Chemtec business was reported in the Coatings and Measurement business unit within the Steel Products and Measurement segment.
Note 3. Revenue
The following table summarizes the Company’s net sales by major product and service category for the periods presented:
Three Months Ended
March 31,
20232022
Rail Products and Global Friction Management$56,048 $51,651 
Technology Services and Solutions8,336 12,059 
Rail, Technologies, and Services64,384 63,710 
Precast Concrete Buildings10,886 9,970 
Other Precast Concrete Products13,402 5,040 
Precast Concrete Products24,288 15,010 
Fabricated Steel Products10,517 12,604 
Coatings and Measurement16,299 7,470 
Steel Products and Measurement26,816 20,074 
Total net sales$115,488 $98,794 

The majority of the Company’s revenue is from products transferred and services rendered to customers at a point in time. The Company recognizes revenue at the point in time at which the customer obtains control of the product or service, which is generally when the product title passes to the customer upon shipment or the service has been rendered to the customer. In limited cases, title does not transfer and revenue is not recognized until the customer has received the products at a designated physical location.

Net sales by the timing of the transfer of goods and services was as follows for the periods presented:
Three Months Ended March 31, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$53,834 $13,402 $15,726 $82,962 
Over time10,550 10,886 11,090 32,526 
Total net sales$64,384 $24,288 $26,816 $115,488 
Three Months Ended March 31, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$49,166 $4,263 $15,062 $68,491 
Over time14,544 10,747 5,012 30,303 
Total net sales$63,710 $15,010 $20,074 $98,794 

The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Revenue under long-term agreements is generally recognized using an input measure based upon the proportion of actual costs incurred to estimated total project costs or an input measure based upon actual labor costs as a percentage of estimated total labor costs, depending
9

upon which measure the Company believes best depicts its performance to date under the terms of the contract. A certain portion of the Company’s revenue recognized over time under these long-term agreements is recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements.

Revenue recognized over time was as follows for the periods presented:
Three Months Ended March 31,Percentage of Total Net Sales
Three Months Ended March 31,
2023202220232022
Over time input method$16,211 $19,322 14.0 %19.6 %
Over time output method16,315 10,981 14.1 11.1 
Total over time sales$32,526 $30,303 28.2 %30.7 %

The timing of revenue recognition, billings, and cash collections results in billed receivables, costs in excess of billings (included in “Contract assets”), and billings in excess of costs (contract liabilities), included in “Deferred revenue” within the Condensed Consolidated Balance Sheets.

The following table sets forth the Company's contract assets:
Contract Assets
Balance as of December 31, 2022$33,613 
Net additions to contract assets1,290 
Transfers from contract asset balance to accounts receivable (3,696)
Balance as of March 31, 2023$31,207 

The following table sets forth the Company's contract liabilities:
Contract Liabilities
Balance as of December 31, 2022$6,781 
Revenue recognized from contract liabilities(3,443)
Increase in billings in excess of cost, excluding revenue recognized 1,983 
Other adjustments, including business divestiture(2,078)
Balance as of March 31, 2023$3,243 

The Company records provisions related to the allowance for credit losses associated with contract assets. Provisions are recorded based upon a specific review of individual contracts as necessary, and a standard provision over any remaining contract assets pooled together based on similar risk of credit loss. The development of these provisions is based on historical collection trends, accuracy of estimates within contract margin reporting, as well as the expectation that collection patterns and margin reporting will continue to adhere to patterns observed in recent years. These expectations are formed based on trends observed, as well as current and expected future conditions.

As of March 31, 2023, the Company had approximately $259,881 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 8.9% of the March 31, 2023 backlog was related to projects that are anticipated to extend beyond March 31, 2024.
Note 4. Goodwill and Other Intangible Assets
The following table presents the changes in goodwill balance by reportable segment for the period presented:
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Balance as of December 31, 2022$19,948 $10,785 $ $30,733 
Foreign currency translation impact130   130 
Balance as of March 31, 2023$20,078 $10,785 $ $30,863 
    
The Company performs goodwill impairment tests annually during the fourth quarter, and also performs interim goodwill impairment tests if it is determined that it is more likely than not that the fair value of a reporting unit is less than the carrying amount. Qualitative factors are assessed to determine whether it is more likely than not that the fair value of a reporting unit is less than the carrying amount, which included the impacts of current economic conditions, including but not limited to labor markets, supply chains, and
10

other inflationary costs. However, these factors can be unpredictable and are subject to change. No interim goodwill impairment test was required as a result of the evaluation of qualitative factors as of March 31, 2023. However, future impairment charges could result if future projections diverge unfavorably from current expectations in the Rail Technologies and Precast Concrete Products reporting units.

As of March 31, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:

March 31, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(23)$4 
Patents10330 (187)143 
Customer relationships1627,413 (14,965)12,448 
Trademarks and trade names167,957 (4,142)3,815 
Technology1432,253 (26,405)5,848 
Favorable lease6327 (36)291 
$68,307 $(45,758)$22,549 


December 31, 2022
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(16)$11 
Patents10330 (187)143 
Customer relationships1627,184 (14,129)13,055 
Trademarks and trade names167,933 (3,989)3,944 
Technology1432,201 (25,827)6,374 
Favorable lease6327 (23)304 
$68,002 $(44,171)$23,831 



Note 5. Accounts Receivable
Changes in reserves for uncollectible accounts, which are recorded as part of “Selling and administrative expenses” in the Condensed Consolidated Statements of Operations, were recorded as an expense of $155 and $61 for the three months ended March 31, 2023 and 2022, respectively.

The Company establishes the allowance for credit losses based on historical collection patterns and other subjective conditions as necessary, including current and expected market conditions. Trade receivables are pooled based on age, which groups receivables of similar credit risk together. Management maintains stringent credit review practices and works to maintain positive customer relationships to further mitigate credit risk.

The following table sets forth the Company’s allowance for credit losses:
Allowance for Credit Losses
Balance as of December 31, 2022$813 
Current period provision155 
Write-off against allowance(100)
Balance as of March 31, 2023$868 
11

Note 6. Inventory
Inventory is valued at average cost or net realizable value, whichever is lower. The Company’s components of inventory as of March 31, 2023 and December 31, 2022 are summarized in the following table:

March 31,
2023
December 31,
2022
Finished goods$47,754 $41,431 
Work-in-process8,844 9,693 
Raw materials27,996 24,597 
Inventories - net$84,594 $75,721 

Note 7. Long-Term Debt and Related Matters
Long-term debt consisted of the following:
March 31,
2023
December 31,
2022
Revolving credit facility$79,825 $91,567 
Finance leases and financing agreements271 312 
Total80,096 91,879 
Less current maturities(117)(127)
Long-term portion$79,979 $91,752 

On August 13, 2021, the Company, its domestic subsidiaries, and certain of its Canadian and United Kingdom subsidiaries (collectively, the “Borrowers”), entered into the Fourth Amended and Restated Credit Agreement (the “Credit Agreement”) with PNC Bank, N.A., Citizens Bank, N.A., Wells Fargo Bank, National Association, Bank of America, N.A., and BMO Harris Bank, National Association. The Credit Agreement, as amended, modifies the prior revolving credit facility, as amended, on terms more favorable to the Company and extends the maturity from April 30, 2024 to August 13, 2026. The Credit Agreement provides for a five-year, revolving credit facility that permits aggregate borrowings of the Borrowers up to $130,000 (a $15,000 increase over the previous commitment) with a sublimit of the equivalent of $25,000 U.S. dollars that is available to the Canadian and United Kingdom borrowers in the aggregate. The Credit Agreement’s incremental loan feature permits the Company to increase the available commitments under the facility by up to an additional $50,000 subject to the Company’s receipt of increased commitments from existing or new lenders and the satisfaction of certain conditions.

Borrowings under the Credit Agreement as amended, will bear interest at rates based upon either the base rate or SOFR rate plus applicable margins. The Credit Agreement includes two financial covenants: (a) Maximum Gross Leverage Ratio, defined as the Company’s consolidated Indebtedness (as defined in the Credit Agreement) divided by the Company’s consolidated EBITDA, which must not exceed (i) 3.25 to 1.00 for all testing periods other than during an Acquisition Period (as defined in the Credit Agreement), and (ii) 3.50 to 1.00 for all testing periods occurring during an Acquisition Period, and (b) Minimum Consolidated Fixed Charge Coverage Ratio, defined as the Company’s consolidated EBITDA divided by the Company’s Fixed Charges (as defined in the Credit Agreement), which must be more than 1.05 to 1.00.

On August 12, 2022, the Company entered into a second amendment to its Credit Agreement (“Second Amendment”) to obtain approval for the VanHooseCo acquisition (as defined below) and temporarily modify certain financial covenants to accommodate the transaction. The Second Amendment permitted the Company to acquire the operating assets of VanHooseCo and modified the Maximum Gross Leverage Ratio covenant to 3.75 through June 30, 2023 to accommodate the transaction.

As of March 31, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,084.
12

Note 8. Earnings Per Common Share
(Share amounts in thousands)

The following table sets forth the computation of basic and diluted loss per common share for the periods indicated:
Three Months Ended
March 31,
20232022
Numerator for basic and diluted loss per common share:
Net loss$(2,171)$(1,586)
Denominator:
Weighted average shares outstanding10,792 10,685 
Denominator for basic loss per common share10,792 10,685 
Denominator for diluted loss per common share - adjusted weighted average shares outstanding10,792 10,685 
Basic loss per common share$(0.20)$(0.15)
Diluted loss per common share$(0.20)$(0.15)

There were 101 and 122 anti-dilutive shares for the three months ended March 31, 2023 and 2022, respectively, excluded from the calculation.
Note 9. Income Taxes
For the three months ended March 31, 2023 and 2022, the Company recorded an income tax benefit of $541 and $508, respectively, on pre-tax losses of $2,712 and $2,094, respectively, for an effective income tax rate of 19.9% and 24.3%, respectively. Due to the full valuation allowance on domestic deferred tax assets, the Company's tax provision for the three months ended March 31, 2023 does not reflect any tax benefit for domestic pre-tax losses, and is primarily comprised of taxes on our Canadian and United Kingdom operations. The Company continued to maintain a full valuation allowance against its U.S. deferred tax assets, which is likely to result in significant variability of the effective tax rate in the current year. Changes in pre-tax income projections, combined with the seasonal nature of our businesses, could also impact the effective income tax rate each quarter.
Note 10. Stock-Based Compensation
The Company recorded stock-based compensation expense of $884 and $258 for the three months ended March 31, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of March 31, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,388. The Company will recognize this unrecognized compensation expense over the upcoming 2.9 years through March 2026.

Shares issued as a result of vested stock-based compensation awards generally will be from previously issued shares that have been reacquired by the Company and held as treasury stock or authorized and previously unissued common stock.

Restricted Stock, Performance Share Units, and Performance-Based Stock Awards
Under the 2022 Equity and Incentive Compensation Plan, successor to the 2006 Omnibus Plan, the Company grants eligible employees restricted stock and performance share units. The forfeitable restricted stock awards granted generally time-vest ratably over a three-year period, unless indicated otherwise by the underlying restricted stock award agreement. Awards of restricted stock are subject to a minimum one-year vesting period, including those granted to non-employee directors. Performance share units are offered annually under separate three-year long-term incentive programs. Performance share units are subject to forfeiture and will be converted into common stock of the Company based upon the Company’s performance relative to performance measures and conversion multiples, as defined in the underlying program. The Company has, on occasion, issued performance share units with longer performance periods as incentivization and retention tools. If the Company’s estimate of the number of performance share units expected to vest changes in a subsequent accounting period, cumulative compensation expense could increase or decrease. The change will be recognized in the current period for the vested shares and would change future expense over the remaining vesting period.

Since 2017, non-employee directors have been permitted to defer receipt of annual stock awards and equity elected to be received in lieu of quarterly cash compensation. If so elected, these deferred stock units will be issued as common stock six months after separation from their service on the Board of Directors. Since 2018, no non-employee directors have elected the option to receive deferred stock units of the Company’s common stock in lieu of director cash compensation.

13

In February 2023, the Compensation Committee approved the 2023-2025 Long Term Incentive Plan which includes grants of performance share units and restricted stock. The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the three months ended March 31, 2023:
Restricted
Stock
Deferred
Stock Units
Performance-Based Stock
and Share Units
Weighted Average
Grant Date Fair Value
Outstanding as of December 31, 2022174,173 46,268 108,478 $17.77 
Granted139,990  367,558 11.64 
Vested(57,329)  16.54 
Adjustment for incentive awards expected to vest  20,104 15.36 
Outstanding as of March 31, 2023256,834 46,268 496,140 $14.61 
Note 11. Fair Value Measurements
The Company determines the fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy includes three levels of inputs that may be used to measure fair value as described below:

Level 1: Observable inputs that reflect unadjusted quoted market prices in active markets for identical assets or liabilities.
Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly.
Level 3: Unobservable inputs that are not corroborated by market data.

The classification of a financial asset or liability within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement.

Fair Value Measurements at Reporting DateFair Value Measurements at Reporting Date
March 31,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $ $ $17 $17 $ $ 
Interest rate swaps1,511  1,511  1,930  1,930  
Total assets$1,528 $17 $1,511 $ $1,947 $17 $1,930 $ 

For the three months ended March 31, 2023 and 2022, the Company recognized interest income of $245 and interest expense of $97, respectively, from interest rate swaps.
Note 12. Retirement Plans
Retirement Plans
The Company has three retirement plans that cover its hourly and salaried employees in the United States: one defined benefit plan, which is frozen, and two defined contribution plans. Employees are eligible to participate in the appropriate plan based on employment classification. The Company’s contributions to the defined benefit and defined contribution plans are governed by the Employee Retirement Income Security Act of 1974, as amended (“ERISA”) and the Company’s policy and investment guidelines applicable to each respective plan. The Company’s policy is to contribute at least the minimum in accordance with the funding standards of ERISA.

The Company maintains one defined contribution plan for its employees in Canada. In the United Kingdom, the Company maintains two defined contribution plans and a defined benefit plan, which is frozen. These plans are discussed in further detail below.


14

United States Defined Benefit Plan
Net periodic pension costs for the United States defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$71 $49 
Expected return on plan assets(64)(66)
Recognized net actuarial loss16 18 
Net periodic pension cost$23 $1 

The Company expects to make total contributions of $400 to its to its United States defined benefit pension plan during 2023.

United Kingdom Defined Benefit Plan
Net periodic pension costs for the United Kingdom defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$55 $45 
Expected return on plan assets(83)(81)
Amortization of prior service costs and transition amount6 6 
Recognized net actuarial loss3 42 
Net periodic pension (income) cost$(19)$12 

United Kingdom regulations require trustees to adopt a prudent approach to funding required contributions to defined benefit pension plans. For the three months ended March 31, 2023, the Company contributed approximately $84 to the plan. The Company anticipates total contributions of approximately $340 to the United Kingdom pension plan during 2023.

Defined Contribution Plans
The Company sponsors five defined contribution plans for hourly and salaried employees across its domestic and international facilities. The following table summarizes the expense associated with the contributions made to these plans for the periods presented:
Three Months Ended
March 31,
20232022
United States$614 $305 
Canada62 61 
United Kingdom261 135 
$937 $501 
Note 13. Commitments and Contingent Liabilities
Product Liability Claims
The Company is subject to product warranty claims that arise in the ordinary course of its business. For certain manufactured products, the Company maintains a product warranty accrual, which is adjusted on a monthly basis as a percentage of cost of sales. In addition, the product warranty accrual is adjusted periodically based on the identification or resolution of known individual product warranty claims.

Union Pacific Railroad (“UPRR”) Concrete Tie Matter
On March 13, 2019, the Company and its subsidiary, CXT Incorporated (“CXT”), entered into a Settlement Agreement (the “Settlement Agreement”) with UPRR to resolve the pending litigation in the matter of Union Pacific Railroad Company v. L.B. Foster Company and CXT Incorporated, Case No. CI 15-564, in the District Court for Douglas County, Nebraska.

Under the Settlement Agreement, the Company and CXT will pay UPRR the aggregate amount of $50,000 without pre-judgment interest, which began with a $2,000 immediate payment, and with the remaining $48,000 paid in installments over a six-year period
15

commencing on the effective date of the Settlement Agreement through December 2024 pursuant to a Promissory Note. Additionally, commencing in January 2019 and through December 2024, UPRR agreed to purchase and has been purchasing from the Company and its subsidiaries and affiliates, a cumulative total amount of $48,000 of products and services, targeting $8,000 of annual purchases per year beginning March 13, 2019 per letters of intent under the Settlement Agreement. During the third quarter of 2021, in connection with the Company’s divestiture of its Piling Products division, the targeted annual purchases per year have been reduced to $6,000 for 2021 through 2024. The Settlement Agreement also includes a mutual release of all claims and liability regarding or relating to all CXT pre-stressed concrete railroad ties with no admission of liability and dismissal of the litigation with prejudice.

The expected payments under the UPRR Settlement Agreement for the remainder of the year ending December 31, 2023 and thereafter are as follows:
Year Ending December 31,
Remainder of 2023$8,000 
20248,000 
Total$16,000 

Environmental and Legal Proceedings
The Company is subject to national, state, foreign, provincial, and/or local laws and regulations relating to the protection of the environment. The Company’s efforts to comply with environmental regulations may have an adverse effect on its future earnings.

On June 5, 2017, a General Notice Letter was received from the United States Environmental Protection Agency (“EPA”) indicating that the Company may be a potentially responsible party (“PRP”) regarding the Portland Harbor Superfund Site cleanup along with numerous other companies. More than 140 other companies received such a notice. The Company and a predecessor owned and operated a facility near the harbor site for a period prior to 1982. The net present value and undiscounted costs of the selected remedy throughout the harbor site are estimated by the EPA to be approximately $1.1 billion and $1.7 billion, respectively, and the remedial work is expected to take as long as 13 years to complete. These costs may increase given that the remedy will not be initiated or completed for several years. The Company is reviewing the basis for its identification by the EPA and the nature of the historic operations of a Company predecessor near the site. Additionally, the Company executed a PRP agreement which provides for a private allocation process among almost 100 PRPs in a working group whose work is ongoing and involves a process that will ultimately conclude a proposed allocation of liability for cleanup of the site and various sub-areas. The Company does not have any individual risk sharing agreements in place with respect to the site, and was only associated with the site from 1976 to when it purchased the stock of a company whose assets it sold in 1982 and which was dissolved in 1994. On March 26, 2020, the EPA issued a Unilateral Administrative Order to two parties requiring them to perform remedial design work for that portion of the Harbor Superfund Site that includes the area closest to the facility; the Company was not a recipient of this Unilateral Administrative Order. The Company cannot predict the ultimate impact of these proceedings because of the large number of PRPs involved throughout the harbor site, the size and extent of the site, the degree of contamination of various wastes, varying environmental impacts throughout the harbor site, the scarcity of data related to the facility once operated by the Company and a predecessor, potential comparative liability between the allocation parties and regarding non-participants, and the speculative nature of the remediation costs. Based upon information currently available, management does not believe that the Company’s alleged PRP status regarding the Portland Harbor Superfund Site or other compliance with the present environmental protection laws will have a material adverse effect on the financial condition, results of operations, cash flows, competitive position, or capital expenditures of the Company. As more information develops and the allocation process is completed, and given the resolution of factors like those described above, an unfavorable resolution could have a material adverse effect. As of March 31, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,448 and $2,472, respectively.

The Company is also subject to other legal proceedings and claims that arise in the ordinary course of its business. Legal actions are subject to inherent uncertainties, and future events could change management’s assessment of the probability or estimated amount of potential losses from pending or threatened legal actions. Based on available information, it is the opinion of management that the ultimate resolution of pending or threatened legal actions, both individually and in the aggregate, will not result in losses having a material adverse effect on the Company’s financial position or liquidity as of March 31, 2023.

If management believes that, based on available information, it is at least reasonably possible that a material loss (or additional material loss in excess of any accrual) will be incurred in connection with any legal actions, the Company discloses an estimate of the possible loss or range of loss, either individually or in the aggregate, as appropriate, if such an estimate can be made, or discloses that an estimate cannot be made. Based on the Company’s assessment as of March 31, 2023, no such disclosures were considered necessary.
16

Item 2. Management’s Discussion and Analysis of Financial Condition and Results of Operations
(Dollars in thousands, except share data)
Forward-Looking Statements
This Quarterly Report on Form 10-Q contains “forward-looking” statements within the meaning of Section 21E of the Securities Exchange Act of 1934, as amended, and Section 27A of the Securities Act of 1933, as amended. Many of the forward-looking statements are located in “Management’s Discussion and Analysis of Financial Condition and Results of Operations” (“MD&A”). Forward-looking statements provide management’s current expectations of future events based on certain assumptions and include any statement that does not directly relate to any historical or current fact. Sentences containing words such as “believe,” “intend,” “plan,” “may,” “expect,” “should,” “could,” “anticipate,” “estimate,” “predict,” “project,” or their negatives, or other similar expressions of a future or forward-looking nature generally should be considered forward-looking statements. Forward-looking statements in this Quarterly Report on Form 10-Q are based on management’s current expectations and assumptions about future events that involve inherent risks and uncertainties and may concern, among other things, the Company’s expectations relating to our strategy, goals, projections, and plans regarding our financial position, liquidity, capital resources, and results of operations and decisions regarding our strategic growth initiatives, market position, and product development. While the Company considers these expectations and assumptions to be reasonable, they are inherently subject to significant business, economic, competitive, regulatory, and other risks and uncertainties, most of which are difficult to predict and many of which are beyond the Company’s control. The Company cautions readers that various factors could cause the actual results of the Company to differ materially from those indicated by forward-looking statements. Accordingly, investors should not place undue reliance on forward-looking statements as a prediction of actual results. Among the factors that could cause the actual results to differ materially from those indicated in the forward-looking statements are risks and uncertainties related to: the COVID-19 pandemic, and any future global health crises, and the related social, regulatory, and economic impacts and the response thereto by the Company, our employees, our customers, and national, state, or local governments; volatility in the prices of oil and natural gas and the related impact on the midstream energy markets, which could result in cost mitigation actions, including shutdowns or furlough periods; a continuation or worsening of the adverse economic conditions in the markets we serve, including recession, whether as a result of the current COVID-19 pandemic or otherwise, including its impact on labor markets, supply chains, and other inflationary costs, travel and demand for oil and gas, the continued volatility in the prices for oil and gas, governmental travel restrictions, project delays, and budget shortfalls, or otherwise; volatility in the global capital markets, including interest rate fluctuations, which could adversely affect our ability to access the capital markets on terms that are favorable to us; restrictions on our ability to draw on our credit agreement, including as a result of any future inability to comply with restrictive covenants contained therein; a continuing decrease in freight or transit rail traffic, including as a result of the ongoing COVID-19 pandemic, strikes, or labor stoppages; environmental matters, including any costs associated with any remediation and monitoring of such matters; the risk of doing business in international markets, including compliance with anti-corruption and bribery laws, foreign currency fluctuations and inflation, and trade restrictions or embargoes; our ability to effectuate our strategy, including cost reduction initiatives, and our ability to effectively integrate acquired businesses or to divest businesses, such as the recent dispositions of the Piling, Track Components, and Chemtec businesses, and acquisitions of the Skratch Enterprises Ltd., Intelligent Video Ltd., and VanHooseCo Precast LLC businesses and to realize anticipated benefits; costs of and impacts associated with shareholder activism; continued customer restrictions regarding the on-site presence of third party providers due to the COVID-19 pandemic; the timeliness and availability of materials from our major suppliers, including any continuation or worsening of the disruptions in the supply chain experienced as a result of the COVID-19 pandemic, as well as the impact on our access to supplies of customer preferences as to the origin of such supplies, such as customers’ concerns about conflict minerals; labor disputes; cyber-security risks such as data security breaches, malware, ransomware, “hacking,” and identity theft, which could disrupt our business and may result in misuse or misappropriation of confidential or proprietary information, and could result in the disruption or damage to our systems, increased costs and losses, or an adverse effect to our reputation; the continuing effectiveness of our ongoing implementation of an enterprise resource planning system; changes in current accounting estimates and their ultimate outcomes; the adequacy of internal and external sources of funds to meet financing needs, including our ability to negotiate any additional necessary amendments to our credit agreement or the terms of any new credit agreement, and reforms regarding the use of SOFR as a benchmark for establishing applicable interest rates; the Company’s ability to manage its working capital requirements and indebtedness; domestic and international taxes, including estimates that may impact taxes; domestic and foreign government regulations, including tariffs; economic conditions and regulatory changes caused by the United Kingdom’s exit from the European Union; geopolitical conditions, including the conflict in Ukraine; a lack of state or federal funding for new infrastructure projects; an increase in manufacturing or material costs; the loss of future revenues from current customers; and risks inherent in litigation and the outcome of litigation and product warranty claims. Should one or more of these risks or uncertainties materialize, or should the assumptions underlying the forward-looking statements prove incorrect, actual outcomes could vary materially from those indicated. Significant risks and uncertainties that may affect the operations, performance, and results of the Company’s business and forward-looking statements include, but are not limited to, those set forth under Item 1A, “Risk Factors,” and elsewhere in our Annual Report on Form 10-K for the year ended December 31, 2022, or as updated and/or amended by our other current or periodic filings with the Securities and Exchange Commission.
The forward-looking statements in this report are made as of the date of this report and we assume no obligation to update or revise any forward-looking statement, whether as a result of new information, future developments, or otherwise, except as required by the federal securities laws.
17

General Overview and Business Update
Results of the Quarter
Three Months Ended
March 31,
Percent
Change
Percent of Total Net Sales
Three Months Ended
March 31,
202320222023 vs. 202220232022
Net sales$115,488 $98,794 16.9 %100.0 %100.0 %
Gross profit23,291 16,447 41.6 20.2 16.6 
Expenses:
Selling and administrative expenses21,423 17,298 23.8 18.5 17.5 
Amortization expense1,365 1,436 (4.9)1.2 1.5 
Operating profit (loss)503 (2,287)122.0 0.4 (2.3)
Interest expense - net1,388 370 **1.2 0.4 
Other expense (income) - net1,827 (563)**1.6 (0.6)
Loss before income taxes(2,712)(2,094)(29.5)(2.3)(2.1)
Income tax benefit(541)(508)(6.5)(0.5)(0.5)
Net loss(2,171)(1,586)(36.9)(1.9)(1.6)
Net loss attributable to noncontrolling interest(19)(20)5.0 (0.0)(0.0)
Net loss attributable to L.B. Foster Company$(2,152)$(1,566)(37.4 %)(1.9 %)(1.6 %)
Diluted loss per common share$(0.20)$(0.15)
** Results of the calculation are not considered meaningful for presentation purposes.

L.B. Foster Company is a global technology solutions provider of engineered, manufactured products and services that builds and supports infrastructure. The Company’s innovative engineering and product development solutions address the safety, reliability, and performance needs of its customers’ most challenging requirements. The Company maintains locations in North America, South America, Europe, and Asia. The Company is organized and operates in three reporting segments: Rail, Technologies, and Services, Precast Concrete Products, and Steel Products and Measurement.
Acquisition and Divestiture Summary
On August 12, 2022, the Company acquired the operating assets of VanHooseCo Precast, LLC (“VanHooseCo”), a business specializing in precast concrete walls, water management products, and forms for the commercial and residential infrastructure markets for $52,146 net of cash acquired. VanHooseCo has been included in the Company’s Precast Concrete Products segment.

On June 21, 2022, the Company acquired the stock of Skratch Enterprises Ltd. (“Skratch”) for $7,402, which is inclusive of deferred payments withheld by the Company of $1,228, to be paid over the next four years or utilized to satisfy post-closing working capital adjustments or indemnity claims under the purchase agreement. Skratch is an industry leader in digital system integration with expertise in advanced digital display technologies and capabilities currently serving retail markets in the U.K. Skratch is reported within the Technology Services and Solutions business unit in the Rail, Technologies, and Services segment.

On August 1, 2022, the Company divested the assets of its Track Components business. Cash proceeds from the transaction were $7,795, subject to indemnification obligations and working capital adjustments and a loss on sale of $467 was recorded in “Other expense (income) - net.” The Track Components business was reported in the Rail Products business unit within the Rail, Technologies, and Services segment.

On March 30, 2023, the Company sold substantially all the operating assets of its Chemtec Energy Services LLC (“Chemtec”) business for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,033 loss on sale, recorded in “Other expense (income) - net.” The Chemtec business was reported in the Coatings and Measurement business unit within the Steel Products and Measurement segment.

Results Summary

Net sales of $115,488 for the three months ended March 31, 2023 increased by $16,694, or 16.9%, over the prior year quarter. The change in sales is due in part to the acquisitions of Skratch and VanHooseCo offset by the divestiture of the Track Components business. Organic growth and acquisitions drove a 11.5% and 9.3% increase in sales over the prior year quarter, respectively, with an offsetting 3.9% decline from divestitures.
18


Gross profit for the three months ended March 31, 2023 was $23,291, an increase of $6,844 over the prior year quarter, or 41.6%, and gross profit margins expanded by 360 basis points to 20.2%. The improvement in gross profit is due to the portfolio changes that are a part of the Company’s strategic transformation plan along with improved product mix and pricing.

Selling and administrative expenses for the three months ended March 31, 2023 increased by $4,125, or 23.8%, from the prior year quarter, due in part to the acquisition of VanHooseCo and Skratch, as well as higher personnel expenses. Selling and administrative expenses as a percent of net sales were 18.5% versus 17.5% in the prior year quarter, a 100 basis point increase. The recent acquisitions have a higher margin portfolio and higher selling and administrative costs.

Other expense - net for the three months ended March 31, 2023 was $1,827 while other income - net was $563 in the prior year quarter. Other expense - net for the three months ended March 31, 2023 was due to the $2,033 loss on the sale of Chemtec during the quarter.

The Company’s effective income tax rate for the three months ended March 31, 2023 was 19.9%, compared to 24.3% in the prior year quarter. Due to the full valuation allowance on domestic deferred tax assets, the Company’s tax provision for the three months ended March 31, 2023 does not reflect any tax benefit for domestic pre-tax losses, and is primarily comprised of taxes related to our Canadian and United Kingdom operations.

Net loss for the three months ended March 31, 2023 attributable to the Company was $2,152, or $0.20 per diluted share, unfavorable by $586, or $0.05 per diluted share, from the prior year quarter. The loss was primarily driven by the $2,033 loss on the sale of Chemtec during the three months ended March 31, 2023, which offset stronger comparable operating profit stemming from margin expansion.

The Company continues to execute its strategic transformation into a technology-focused, high growth infrastructure solutions provider, as evidenced by the number of recent portfolio actions taken, including the sale of Chemtec, which minimizes the Company's exposure to the energy market and allows for additional capacity to focus on its core growth platforms in Rail Technologies and Precast Concrete, and an increased focus on organic growth initiatives and debt reduction going into 2023. Proceeds from the Chemtec sale have contributed to the pay down of debt during the quarter and increased capacity under the credit agreement to further support its strategic initiatives.

Results of Operations - Segment Analysis

First Quarter 2023 Compared to First Quarter 2022

Rail, Technologies, and Services
Three Months Ended
March 31,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$64,384 $63,710 $674 1.1 %
Gross profit$14,284 $12,528 $1,756 14.0 %
Gross profit percentage22.2 %19.7 %2.5 %12.8 %
Segment operating profit$2,388 $1,039 $1,349 129.8 %
Segment operating profit percentage3.7 %1.6 %2.1 %131.3 %

The Rail, Technologies, and Services segment sales for the three months ended March 31, 2023 increased by $674, or 1.1%, compared to the prior year quarter. Net sales increased by 5.8% organically and by 1.3% from the acquisition of Skratch, offset by a 6.1% decrease from the divestiture of Track Components. The Global Friction Management business unit increase in sales was offset by sales decreases in the Technology Services and Solutions business unit. The Friction Management sales increase was driven by strength in domestic markets served. The sales decrease in the Technology Services and Solutions business unit was driven by the completion of the multi-year Crossrail project in late 2022.

The Rail, Technologies, and Services segment gross profit increased by $1,756, or 14.0% over the prior year quarter, and gross profit margins expanded 250 basis points to 22.2%. Gross profit increases in Rail Products and Global Friction Management were commensurate with higher sales levels, while weaker sale in Technology Services and Solutions drove a partially offsetting gross profit decline. The improvement in gross profit is due to the portfolio changes that are a part of the Company’s strategic transformation along with increased sales in the higher margin Global Friction Management business along with improved pricing. Operating profit was $2,388, a $1,349 increase over the prior year quarter, due primarily to higher gross profit levels.
19


During the current quarter, the Rail, Technologies, and Services segment had a decrease in new orders of $17,664, or 19.3%, compared to the prior year period. The decrease is due primarily to differences in customer order timing in the Rail Distribution business, as well as an unfavorable impact of $4,805 due to the Track Components divestiture. Backlog as of March 31, 2023 was $113,593, a decrease of $9,325, or 7.6%, versus the prior year quarter, $2,531 of which is related to the divested Track Components division.

Precast Concrete Products
Three Months Ended
March 31,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$24,288 $15,010 $9,278 61.8 %
Gross profit$5,521 $2,445 $3,076 125.8 %
Gross profit percentage22.7 %16.3 %6.4 %39.5 %
Segment operating loss$(348)$(791)$443 56.0 %
Segment operating loss percentage(1.4)%(5.3 %)3.9 %73.6 %

The Precast Concrete Products segment sales for the three months ended March 31, 2023 increased by $9,278, or 61.8%, compared to the prior year quarter. The VanHooseCo acquisition contributed $8,299, or 55.3%, of the increase in sales over the prior year quarter. Organic sales increased by $979, or 6.5%, which is a continued reflection of the strong demand environment in the southern and northeastern United States markets.

The Precast Concrete Products segment's gross profit for the three months ended March 31, 2023 increased by $3,076, and gross profit margins expanded by 640 basis points to 22.7%. The improvement in gross profit is due to the VanHooseCo acquisition as well as overall sales volumes and stronger margins from the legacy precast business, including the impact of improved pricing. Operating loss for the first quarter of 2023 was $348, a $443 improvement over the prior year quarter, due to higher gross profit levels, which was partially offset by an increase in selling and administrative expenses from the VanHooseCo acquisition, as well as increased personnel expenses.

During the quarter, the Precast Concrete Products segment had an increase in new orders and backlog of 89.2% and 21.2%, respectively, compared to the prior year quarter. The increase in new orders and backlog is due to the VanHooseCo acquisition and strong demand in the legacy business.

Steel Products and Measurement
Three Months Ended
March 31,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$26,816 $20,074 $6,742 33.6 %
Gross profit$3,486 $1,474 $2,012 136.5 %
Gross profit percentage13.0 %7.3 %5.7 %77.0 %
Segment operating loss$(8)$(2,148)$2,140 99.6 %
Segment operating loss percentage0.0 %(10.7)%10.7 %100.0 %

The Steel Products and Measurement segment sales for the three months ended March 31, 2023 increased by $6,742, or 33.6%, compared to the prior year quarter. The increase in sales for the first quarter of 2023 was attributable to the $8,819 increase in Coatings and Measurement sales over the prior year quarter, due to increased activity in both traditional and adjacent market applications. This increase was partially offset by a decrease in Fabricated Steel Products business unit sales of $2,087.

Steel Products and Measurement gross profit for the three months ended March 31, 2023 increased by $2,012, and gross profit margins increased 570 basis points to 13.0%. The increase in gross profit is primarily due to stronger margins in the Protective Coatings division attributable to higher volumes. The segment operating loss was reduced $2,140 from the prior year quarter, due to higher gross profit levels.

During the quarter, the Steel Products and Measurement segment had an increase in new orders and backlog of $4,697, or 18.9%, and $9,220, or 18.7%, respectively, compared to the prior year quarter. The increase is a result of improved order levels in the Fabricated Steel Products business unit and the Protective Coatings division due to strong demand in both traditional and adjacent market applications. The backlog increase was partially offset by a $5,657 decrease due to the Chemtec divestiture.
20


Liquidity and Capital Resources
The Company’s principal sources of liquidity are its existing cash and cash equivalents, cash generated by operations, and the available capacity under the revolving credit facility, which provides for a total commitment of up to $130,000, of which $49,091 was available for borrowing as of March 31, 2023, subject to covenant restrictions. The Company’s primary needs for liquidity relate to working capital requirements for operations, capital expenditures, debt service obligations, payments related to the Union Pacific Railroad Settlement, and acquisitions. The Company’s total debt, including finance leases, was $80,096 and $91,879 as of March 31, 2023 and December 31, 2022, respectively, and was primarily comprised of borrowings under its revolving credit facility.

The following table reflects available funding capacity, subject to covenant restrictions, as of March 31, 2023:
March 31, 2023
Cash and cash equivalents$2,639 
Credit agreement:
Total availability under the credit agreement130,000 
Outstanding borrowings on revolving credit facility(79,825)
Letters of credit outstanding(1,084)
Net availability under the revolving credit facility49,091 
Total available funding capacity$51,730 

The Company’s cash flows are impacted from period to period by fluctuations in working capital, as well as its overall profitability. While the Company places an emphasis on working capital management in its operations, factors such as its contract mix, commercial terms, days sales outstanding (“DSO”), and market conditions as well as seasonality may impact its working capital. The Company regularly assesses its receivables and contract assets for collectability and realization, and provides allowances for credit losses where appropriate. The Company believes that its reserves for credit losses are appropriate as of March 31, 2023, but adverse changes in the economic environment and adverse financial conditions of its customers may impact certain of its customers’ ability to access capital and pay the Company for its products and services, as well as impact demand for its products and services.

The changes in cash and cash equivalents for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended March 31,
20232022
Net cash provided by (used in) operating activities$6,932 $(7,636)
Net cash provided by (used in) investing activities4,661 (539)
Net cash (used in) provided by financing activities(12,022)4,012 
Effect of exchange rate changes on cash and cash equivalents186 30 
Net decrease in cash and cash equivalents$(243)$(4,133)

Cash Flow from Operating Activities
During the three months ended March 31, 2023, net cash provided by operating activities was $6,932, compared to cash used in operating activities of $7,636 during the prior year period. For the three months ended March 31, 2023, net loss and adjustments to reconcile net loss from operating activities provided $3,352, compared to $1,408 in the prior year period. Working capital and other assets and liabilities provided $3,580 in the current period, compared to using $9,044 in the prior year period. The Company received $2,967 during the three months ended March 31, 2023 associated with its federal income tax refund claims, which have now been collected in full.

Cash Flow from Investing Activities
Capital expenditures for the three months ended March 31, 2023 and 2022 were $699 and $1,764, respectively. The current period expenditures primarily relate to general plant and operational improvements throughout the Company, including corporate system and facility improvements. Expenditures for the three months ended March 31, 2022 primarily related to the implementation of the enterprise resource planning system at additional Company divisions and general plant and operational improvements throughout the Company. On March 30, 2023, the Company divested the assets of its Chemtec business, generating a cash inflow of $5,344 during the three months ended March 31, 2023.


Cash Flow from Financing Activities
21

During the three months ended March 31, 2023 and 2022, the Company had a decrease in outstanding debt of $12,047 and an increase of $4,409, respectively. The decrease in debt for the three months ended March 31, 2023 was due to both stronger operating cash flows as well as proceeds received from the Chemtec divestiture during the quarter. The increase in debt for the 2022 period was the result of funding working capital and other assets and liabilities. Treasury stock acquisitions of $309 and $397 for the three months ended March 31, 2023 and 2022, respectively, represent stock repurchases from employees to satisfy their income tax withholdings in connection with the vesting of stock awards.

During the first quarter of 2023, the Company’s Board of Directors authorized the repurchase of up to $15,000 of the Company’s common stock in open market transactions through February 2026. Repurchases are limited to up to $5,000 in any trailing 12-month period, with unused amounts carrying forward to future periods through the end of the authorization. Any repurchases will be subject to the Company’s liquidity, including availability of borrowings and covenant compliance under its revolving credit facility, and other capital needs of the business. No shares were repurchased in the first quarter of 2023 as part of the stock repurchase program.

Repurchases of shares of the Company’s common stock may be made from time to time in the open market or in such other manner as determined by the Company. The timing of the repurchases and the actual amount repurchased will depend on a variety of factors, including the market price of the Company’s shares, general market and economic conditions, and other factors. The stock repurchase program does not obligate the Company to acquire any particular amount of common stock and may be suspended or discontinued at any time.

Financial Condition
As of March 31, 2023, the Company had $2,639 in cash and cash equivalents. The Company’s cash management priority continues to be short-term maturities and the preservation of its principal balances. As of March 31, 2023, approximately $2,136 of the Company’s cash and cash equivalents were held in non-domestic bank accounts. The Company principally maintains its cash and cash equivalents in accounts held by major banks and financial institutions.

The Company’s principal uses of cash have been to fund its operations, including capital expenditures, acquisitions, and to service its indebtedness. The Company views its liquidity as being dependent on its results of operations, changes in working capital needs, and its borrowing capacity. As of March 31, 2023, the Company's revolving credit facility had $49,091 of net availability, while the Company had $80,096 in total debt.

On August 13, 2021, the Company entered into the Credit Agreement, which increased the total commitments under the revolving credit facility to $130,000 from $115,000, extended the maturity date from April 30, 2024 to August 13, 2026, and provided more favorable covenant terms. Borrowings under the Credit Agreement bear interest rates based upon either the base rate or SOFR rate plus applicable margins. The Company believes that the combination of its cash and cash equivalents, cash generated from operations, and the capacity under its revolving credit facility should provide the Company with sufficient liquidity to provide the flexibility to operate the business in a prudent manner and enable the Company to continue to service its outstanding debt. On August 12, 2022, the Company amended its Credit Agreement to obtain approval for the VanHooseCo acquisition and temporarily modify certain financial covenants to accommodate the transaction. The Second Amendment permitted the Company to acquire the operating assets of VanHooseCo and modified the maximum Gross Leverage Ratio covenant to 3.75 through June 30, 2023 to accommodate the transaction. The Second Amendment also added an additional tier to the pricing grid and provided for the conversion from LIBOR-based to SOFR-based borrowings. For a discussion of the terms and availability of the credit facilities, please refer to Note 7 of the Notes to Condensed Consolidated Financial Statements contained in this Quarterly Report on Form 10-Q.

To reduce the impact of interest rate changes on outstanding variable-rate debt, the Company amended and entered into SOFR-based interest rate swaps with notional values totaling $20,000 and $20,000, effective August 12, 2022 and August 31, 2022, respectively, at which point the agreements effectively converted a portion of the debt from variable to fixed-rate borrowings during the term of the swap contract.


22

Segment Backlog
Total Company backlog is summarized by business segment in the following table for the periods indicated:
Backlog
March 31,
2023
December 31,
2022
March 31,
2022
Rail, Technologies, and Services$113,593 $105,241 $122,918 
Precast Concrete Products87,737 80,501 72,369 
Steel Products and Measurement58,551 86,509 49,331 
Total backlog $259,881 $272,251 $244,618 

The Company’s backlog represents the sales price of received customer purchase orders and any contracts for which the performance obligations have not been met, and therefore are precluded from revenue recognition. Although the Company believes that the orders included in backlog are firm, customers may cancel or change their orders with limited advance notice; however, these instances have been rare. Backlog should not be considered a reliable indicator of the Company’s ability to achieve any particular level of revenue or financial performance. While a considerable portion of the Company’s business is backlog-driven, certain product lines within the Company are not driven by backlog as the orders are fulfilled shortly after they are received.
The Company defines new orders as a contractual agreement between the Company and a third-party in which the Company will, or has the ability to, satisfy the performance obligations of the promised products or services under the terms of the agreement.

Critical Accounting Estimates
The Condensed Consolidated Financial Statements have been prepared in conformity with accounting principles generally accepted in the United States. When more than one accounting principle, or method of its application, is generally accepted, management selects the principle or method that, in its opinion, is appropriate in the Company’s specific circumstances. Application of these accounting principles requires management to reach opinions regarding estimates about the future resolution of existing uncertainties. As a result, actual results could differ from these estimates. In preparing these financial statements, management has reached its opinions regarding the best estimates and judgments of the amounts and disclosures included in the financial statements giving due regard to materiality. A summary of the Company’s critical accounting policies and estimates is included in Item 7. Management’s Discussion and Analysis of Financial Condition and Results of Operations - Critical Accounting Policies and Estimates in the Company’s Annual Report on Form 10-K for the year ended December 31, 2022.
Item 3. Quantitative and Qualitative Disclosures about Market Risk
This item is not applicable to a smaller reporting company.
Item 4. Controls and Procedures
Evaluation of Disclosure Controls and Procedures
L.B. Foster Company carried out an evaluation, under the supervision and with the participation of the Company’s management, including the Chief Executive Officer and the Chief Financial Officer, of the effectiveness of the design and operation of the Company’s disclosure controls and procedures (as defined in Rules 13a-15(e) and 15d-15(e) under the Securities Exchange Act of 1934, as amended) as of March 31, 2023. Based upon that evaluation, the Chief Executive Officer and Chief Financial Officer concluded that the Company’s disclosure controls and procedures were effective as of such date such that the information required to be disclosed by the Company in reports filed under the Exchange Act is (i) recorded, processed, summarized, and reported within the time periods specified in the SEC’s rules and forms and (ii) accumulated and communicated to management, including the chief executive officer, chief financial officer, or person performing such functions, as appropriate to allow timely decisions regarding disclosure.

Changes in Internal Control Over Financial Reporting
There were no changes to our “internal control over financial reporting” (as such term is defined in Rules 13a-15(f) and 15d-15(f) under the Exchange Act) that occurred during the three months ended March 31, 2023, and that have materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

Limitations on Effectiveness of Controls and Procedures
In designing and evaluating disclosure controls and procedures and internal control over financial reporting, management recognizes that any controls and procedures, no matter how well designed and operated, can provide only reasonable assurance of achieving the desired control objectives. In addition, the design of disclosure controls and procedures and internal control over financial reporting must reflect the fact that there are resource constraints and that management is required to apply judgment in evaluating the benefits of possible controls and procedures relative to their costs.

23

PART II. OTHER INFORMATION
(Dollars in thousands, except share data)
Item 1. Legal Proceedings
See Note 13 of the Notes to Condensed Consolidated Financial Statements included in this Quarterly Report on Form 10-Q, which is incorporated herein by reference.
Item 1A. Risk Factors
This item is not applicable to a smaller reporting company.
Item 2. Unregistered Sales of Equity Securities and Use of Proceeds
The Company’s purchases of equity securities for the three months ended March 31, 2023 were as follows:
Total number of shares purchased (1)Average price paid per shareTotal number of shares purchased as part of publicly announced plans or programs (2)Approximate dollar value of shares that may yet be purchased under the plans or programs
January 1, 2023 - January 31, 20231,126 $10.49 — $15,000 
February 1, 2023 - February 28, 202318,632 12.80 — 15,000 
March 1, 2023 - March 31, 20234,687 12.52 — 15,000 
Total24,445 $12.64 — $15,000 

1.Reflects shares withheld by the Company to pay taxes upon vesting of restricted stock.
2.On March 3, 2023, the Board of Directors authorized the repurchase of up to $15,000 of the Company’s common shares until February 2026.
Item 3. Defaults Upon Senior Securities
Not applicable.
Item 4. Mine Safety Disclosures
This item is not applicable to the Company.
Item 5. Other Information
None.
24

Item 6. Exhibits
See Exhibit Index below.

Exhibit Index
Exhibit NumberDescription
*10.1
*10.2
*10.3
*31.1
*31.2
*32.0
*101.INS
XBRL Instance Document-the instance document does not appear in the Interactive Data File because its XBRL tags are embedded within the Inline XBRL document.
*101.SCHXBRL Taxonomy Extension Schema Document.
*101.CALXBRL Taxonomy Extension Calculation Linkbase Document.
*101.DEFXBRL Taxonomy Extension Definition Linkbase Document.
*101.LABXBRL Taxonomy Extension Label Linkbase Document.
*101.PREXBRL Taxonomy Extension Presentation Linkbase Document.
*104Cover Page Interactive Data File (formatted as inline XBRL and contained in Exhibit 101)
 
*
Exhibits marked with an asterisk are filed herewith.

25

SIGNATURE
Pursuant to the requirements 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.
 
L.B. FOSTER COMPANY
(Registrant)
Date:May 10, 2023By: /s/ William M. Thalman
William M. Thalman
Senior Vice President
and Chief Financial Officer
(Duly Authorized Officer of Registrant)

26
EX-10.1 2 ex-101q12023.htm EX-10.1 Document
Exhibit 10.1

Annual Executive Incentive
Compensation Plan (ExIP)

L. B. FOSTER COMPANY
ANNUAL EXECUTIVE INCENTIVE COMPENSATION PROGRAM
2023


The purpose of this document is to establish in writing the performance goals and other terms applicable to cash financial performance awards for each fiscal year of the Company which constitutes a Performance Period (the “Program”) as authorized under the L.B. Foster Company Executive Annual Incentive Compensation Plan (“ExIP”).

I. DEFINITIONS
a.Defined terms used but not defined herein shall have the meanings ascribed to them in the Executive Incentive Plan master document under which each annual Program is established.
II. TERMS AND CONDITIONS
a.Unless otherwise determined by the Compensation Committee, the Performance Period shall be one calendar year.
b.Each Participant shall receive a cash award in an amount equal to Participant’s base compensation multiplied by a target percentage established by the Committee based upon the position held by the Participant as approved by the Compensation Committee and set forth on Exhibit B, on file with the Committee (the “Target Percentage”) (an “Award”). The amount of any Award earned and payable is calculated with reference to the percentage achievement of certain Performance Measures established by the Committee and as described below.
c.Participant’s base compensation shall be the Participant’s salary on March 1 of the applicable Performance Period, rounded to the nearest whole dollar.
d.Participants in the Program are listed on Exhibit B on file with the Committee, which identifies each Participant’s title and Company operating unit, and Target Percentage for the applicable Performance Period.
e.A Participant’s right, if any, to receive payout of an Award, if earned, shall be contingent upon Participant having executed a Confidentiality, Intellectual Property and Non-Compete Agreement in a form satisfactory to the Committee. Further, in order to receive any payout of an Award, the Participant must have begun employment with the Company by October 1 of the Program’s Performance Period.
f.In the event a Participant changes from one position to another position or is promoted into one of the positions approved by the Committee during the Performance Period, the Target Percentage and base compensation for such Participant shall be pro-rated as applicable to each position held during the Performance Period, and such Award will be determined on the pro-rated basis based on the number of full months employed during the Performance Period.
g.In order to be eligible to receive any payout of an Award, if earned, a Participant must be actively employed by the Company on the date the Award is paid. In no event is a Participant entitled to any pro-rata payment of an Award under the terms of this Program, except to the extent the Board has approved a Participant’s retirement or termination from the Company, in which case the Committee may



provide a pro-rata payment based on the Participant’s active employment before the Board-approved retirement or termination.
III. CALCULATING PAYOUT OF AWARDS
The payout of Awards shall be calculated as set forth below:

a.A Participant’s Award shall be determined and allocated by multiplying the Award by the Company’s adjusted level of attainment of the financial Performance Measures identified below, weighted as shown below:
Performance Measure
CEO, CFO; CGO
SVP, HR & Admin; SVP & General Counsel; and Controller & CAO
Executive SVPs or VPs Responsible for Operating Unit(s)
Corporate Adjusted EBITDA75%20%
Corporate Working Capital25%---
Operating Unit Adjusted EBITDA--50%

Operating Unit Working Capital
---30%
b.The amount of an Award shall be calculated and adjusted upward or downward based on the level of attainment of the above Performance Measures, Adjusted EBITDA (Corporate and Operating Unit), and Working Capital (Corporate and Operating Unit), utilizing the targets as set forth in the tables below. (Tables shown below describe targets for the Consolidated Corporate Group. Targets for the business groups are shown in Exhibit A.) Straight-line interpolation will be used to determine the achievement between each level.
Adjusted EBITDA Multiplier 1
Target
Adjusted EBITDA
Multiplier
$32,000200%
$26,400100%
$21,12050%
Less than $21,1200%




Working Capital 1
Target Working Capital
20.7%200%
21.4%100%
21.8%50%
Greater than 21.8%0%
1 Targets and Multipliers for Business Groups are shown on Exhibit A, on file with the Committee
c.Individual payout targets are shown on Exhibit B, on file with the Committee

2



d.Operating results of an acquisition will be immediately included in the financial results, with Compensation Committee approval.
e.Definitions of the Performance Measures and possible financial adjustments are noted on Schedule 1.0 attached hereto.
III. RECOUPMENT
All Awards granted hereunder are made subject to the L.B. Foster Executive Recoupment Policy which is incorporated herein by reference (the “Policy.”) The Policy provides for the clawback by the Company and repayment by the Participant of cash awards paid hereunder in the event of an accounting restatement applicable to any financial reporting period within the Performance Period due to noncompliance of the Company with any financial reporting requirement under the securities or other applicable laws.

IV. COMPENSATION COMMITTEE
As set forth in the ExIP document, the Compensation Committee retains all rights and discretion to modify, eliminate, or replace the ExIP and the Program at any time. The Committee will interpret and apply the ExIP and this Program at its discretion, and may adjust financial Performance Measures, weighting, and/or multipliers as it deems appropriate in its sole discretion, or increase, decrease, or eliminate any Award or payout hereunder. All determinations with respect to any Award shall be made by the Committee and shall be final, conclusive and binding on the Company, the Participant and any and all interested parties.

The undersigned Chairman of the Compensation Committee hereby certifies, on behalf of the Committee, that the performance goals and other material terms applicable have been determined and approved at the Committee meeting held in February of the
Program’s Performance Period.
_____________________________
John E. Kunz
Chairman, Compensation Committee

_____________________________
Date

3



Schedule 1.0

PERFORMANCE MEASURES AND ADJUSTMENTS

Adjusted Earnings Before Interest, Taxes, Depreciation and Amortization (Adjusted EBITDA): shall mean with respect to the Company or an Operating Unit, for the Fiscal Year (a) income from continuing operations; (b) plus income tax expense; (c) plus interest expense; (d) minus interest income; (e) plus depreciation expense; and (f) plus amortization expense; (g) plus and minus the adjustments below. Adjusted EBITDA is to be calculated including the effect of expense associated with the program.

Working Capital as a Percentage of Sales (“W/C as a % of Sales”): shall mean with respect to the Company, or as applicable, for an Operating Unit, for the Fiscal Year, the average monthly balances (in all cases calculated utilizing a 13-point average method) of Inventory, Contract Assets and Accounts Receivable less the average monthly balances of Accounts Payable and Deferred Revenue divided by annual net sales. Results shall be determined incorporating approved adjustments below

The following adjustments are guidelines subject to board approval.

Adjustment Description
Unplanned reductions or add-backs to results for gains and losses
Adjusted
EBITDA
Working Capital
Effects of changes in accounting or tax lawXX
Divestitures of properties, businesses, investments, equity in affiliates or held for sale as discontinued operationsXX
Costs of an acquisition or potential acquisition, and purchase accounting of an acquisition completed during the year.XX
Any significant or non-recurring item(s) (these items include, but are not limited to a restructuring, long-lived asset impairment, warranty costs, product liability, legal settlement, environmental charges) that in total exceed $200,000 in EBITDA (favorable or unfavorable)XX
The impact on any Operating Unit attributable to any administrative intercompany charges related to transfer pricing compliance where the consolidated impact is zero.XX
Other adjustments for unforeseen extraordinary circumstances as deemed appropriate in the sole discretion of the Compensation Committee of the Board of DirectorsXX



4

EX-10.2 3 ex-102q12023.htm EX-10.2 Document
Exhibit 10.2
RESTRICTED STOCK AGREEMENT
(EXECUTIVE)
(Section 6 Of The 2022 Equity and Incentive Compensation Plan)

This Restricted Stock Agreement set forth below (this “Agreement”) is dated as of _________________ (the “Issue Date”) and is between L. B. Foster Company, a Pennsylvania corporation (“Company”), and ________________ (the “Shareholder”).
The Company has established its 2022 Equity and Incentive Compensation Plan (the “Plan”), to advance the interests of the Company and its Shareholders by providing incentives to certain eligible persons who contribute significantly to the strategic and long-term performance objectives and growth of the Company. All capitalized terms not otherwise defined in this Agreement have the same meaning given them in the Plan.
Pursuant to the provisions of the Plan, the Committee has full power and authority to direct the execution and delivery of this Agreement in the name and on behalf of the Company and has authorized the execution and delivery of this Agreement.
AGREEMENT
The parties, intending to be legally bound hereby, agree as follows:
Section 1.Issuance of Stock. Subject and pursuant to all terms and conditions stated in this Agreement and in the Plan, as of the Issue Date the Company hereby grants to Shareholder ________ restricted shares of Company Common Stock, par value $0.01 per share (the “Common Stock”) pursuant to Section 6 of the Plan. For purposes of this Agreement, the “Shares” shall include all of the shares of Common Stock issued to Shareholder pursuant to this Agreement or issued with respect to such shares of Common Stock, including, but not limited to, shares of Company capital stock issued by way of a stock dividend or stock split or in connection with a combination of shares, recapitalization, merger, consolidation or other reorganization.
Section 2.Vesting; Rights; Obligations; and Restrictions on Transfer.
(a)None of the Shares may be sold, transferred, pledged, hypothecated or otherwise encumbered or disposed of until they have vested in accordance with the terms of this Section 2. Except as set forth in this Section 2, effective at the close of business on the date Shareholder ceases to be employed by the Company or an affiliate of the Company, any Shares that are not vested in accordance with this Section 2, and any dividends accrued pursuant to Section 2(c) below, shall be automatically forfeited without any further obligation on the part of the Company. Shareholder hereby assigns and transfers any forfeited Shares and the stock certificate(s) or other evidence of ownership representing such Shares to the Company.
(b)All of the Shares will vest 33 1/3% on each of the first, second, and third anniversaries. However, if a Change of Control occurs prior to the end of the full vesting period and (i) Shareholder experiences an involuntary Separation from Service by the Company other than (A) a Termination for Cause, (B) death, or (C) Disability, or the Shareholder terminates for Good Reason (as defined below) within the 90-day period immediately preceding a Change of Control, or on or within the two-year period immediately following a Change of Control, or (ii) the acquiring entity in a Change of Control does not assume this Agreement and convert the Shares into a substantially comparable award of capital stock or other equity incentive instrument in such acquiring entity as determined by the Board of Directors, any unvested Shares shall immediately vest. Vesting shall be tolled during any period in which Shareholder is on



an approved leave of absence from employment with the Company or an affiliate of the Company.
(c)Subject to the foregoing provisions of this Section 2 and the provisions of the Plan, Shareholder shall have all rights of a shareholder with respect to the Shares, including the right to vote the Shares and to receive dividends, provided, however, that until such time as the Shares, or portion thereof, shall have vested, the Company shall accrue on its books and records for the benefit of the Shareholder an amount equal to the dividend payment that would otherwise have been received on the Shares but for this agreement to accrue the dividend payments. Dividends accrued for the benefit of the Shareholder shall be payable as the Shares vest with payment to be made by the Company, or its agent, within ten (10) business days after vesting. For purposes of clarity, if this Agreement provides that only a portion of the Shares vest on a given date, accrued dividends shall only be payable on that portion of Shares vesting and not on any Shares that remain unvested.
(d)For purposes of this Agreement, “Good Reason” means the Shareholder’s Separation from Service as a result of the occurrence, without the Shareholder’s written consent, of one of the following events:
(i)A material reduction in the Shareholder’s annual base salary (unless such reduction relates to an across-the-board reduction similarly affecting Shareholder and all or substantially all other executives of the Company and its affiliates);
(ii)The Company (or the Subsidiary employing Shareholder) makes or causes to be made a material adverse change in the Shareholder’s position, authority, duties or responsibilities which results in a significant diminution in the Shareholder’s position, authority, duties or responsibilities, excluding any change made in connection with (A) a reassignment to a New Job Position (as defined herein), or (B) a termination of Shareholder’s employment with the Company for Disability, Termination for Cause, death, or temporarily as a result of Participant’s incapacity or other absence for an extended period; (For purposes of this Agreement, “New Job Position” means a change in the Shareholder’s position, authority, duties or responsibilities with the Company or any affiliate due to the Shareholder’s demonstrated inadequate or unsatisfactory performance, provided the Shareholder had been notified of such inadequate performance and had been given at least 30 days to cure such inadequate performance.);
(iii)A relocation of the Company’s principal place of business, or of Shareholder’s own office as assigned to Shareholder by the Company or the Subsidiary employing Shareholder to a location that increases Shareholder’s normal work commute by more than 50 miles; or
(iv)Any other action by the Company or the Subsidiary employing Shareholder that constitutes a material breach of the employment agreement, if any, under which Shareholder’s services are to be performed.
In order for Shareholder to terminate for Good Reason, (A) the Company must be notified by Shareholder in writing within 90 days of the event constituting Good Reason, (B) the event must remain uncorrected by the Company for 30 days following such notice (the “Notice Period”), and (C) such termination must occur within 60 days after the expiration of the Notice Period.
2


(e)The certificates, if any, representing unvested Shares will bear the following or similar legend:
“The securities represented by this certificate are subject to forfeiture and restrictions on transfer as set forth in the Restricted Stock Agreement between the issuer and the initial holder of these shares. A copy of that document may be obtained by the holder without charge at the issuer’s principal place of business or upon written request.”
Section 3.Investment Representation. Shareholder hereby acknowledges that the Shares cannot be sold, transferred, assigned, pledged or hypothecated in the absence of an effective registration statement for the shares under the Securities Act of 1933, as amended (the “Securities Act”), and applicable state securities laws or an applicable exemption from the registration requirements of the Securities Act and any applicable state securities laws or as otherwise provided herein or in the Plan. Shareholder also agrees that the Shares which Shareholder acquires pursuant to this Agreement will not be sold or otherwise disposed of in any manner which would constitute a violation of any applicable securities laws, whether federal or state.
Section 4.Book Entry Account. At the discretion of the Company, certificates for the shares may not be issued. In lieu of certificates, the Company may establish a book entry account for the Shares, until vested, in the name of the Shareholder with the Company’s transfer agent for its Common Stock.
Section 5.Income Taxes. Shareholder acknowledges that any income for federal, state, or local income tax purposes that Shareholder is required to recognize on account of the issuance of the Shares to Shareholder shall be subject to withholding of tax by the Company. In order to satisfy Shareholder’s statutory withholding tax obligations, if any, on account of the vesting of Shares hereunder, the Company shall withhold a number of vested Shares issued hereunder equal to the applicable statutory withholding tax obligation for such Shareholder. Shareholder agrees further to notify the Company promptly if Shareholder files an election pursuant to Section 83(b) of the Internal Revenue Code of 1986, as amended (the “Code”), with respect to any Shares.
Section 6.No Right to Employment. Neither the Plan nor this Agreement shall be deemed to give Shareholder any right to continue to be employed by the Company, nor shall the Plan or the Agreement be deemed to limit in any way the Company’s right to terminate the employment of the Shareholder at any time.
Section 7.Further Assistance. Shareholder will provide assistance reasonably requested by the Company in connection with actions taken by Shareholder while employed by the Company, including but not limited to assistance in connection with any lawsuits or other claims against the Company arising from events during the period in which Shareholder was employed by the Company.
Section 8.Binding Effect; No Third Party Beneficiaries. This Agreement shall be binding upon and inure to the benefit of the Company and Shareholder and their respective heirs, representatives, successors and permitted assigns. This Agreement shall not confer any rights or remedies upon any person other than the Company and the Shareholder and their respective heirs, representatives, successors and permitted assigns. The parties agree that this Agreement shall survive the issuance of the Shares.
Section 9.Agreement to Abide by Plan; Conflict between Plan and Agreement. The Plan is hereby incorporated by reference into this Agreement and is made a part hereof as though fully set forth in this Agreement. Shareholder, by execution of this Agreement, represents that he or she is familiar with the terms and provisions of the Plan and agrees to abide by all of
3


the terms and conditions of this Agreement and the Plan. Shareholder accepts as binding, conclusive and final all decisions or interpretations of the Committee upon any question arising under the Plan or this Agreement (including, without limitation, the date of any termination of Shareholder’s employment with the Company). In the event of any conflict between the Plan and this Agreement, the Plan shall control and this Agreement shall be deemed to be modified accordingly, except to the extent that the Plan gives the Committee the express authority to vary the terms of the Plan by means of this Agreement, in which case this Agreement shall govern.
Section 10.Entire Agreement. Except as otherwise provided herein, this Agreement and the Plan, which Shareholder has reviewed and accepted in connection with the grant of the Shares reflected by this Agreement, constitute the entire agreement between the parties and supersede any prior understandings, agreements, or representations by or between the parties, written or oral, to the extent they related in any way to the subject matter of this Agreement.
Section 11.Choice of Law. To the extent not superseded by federal law, the laws of the Commonwealth of Pennsylvania (without regard to the conflicts laws thereof) shall control in all matters relating to this Agreement and any action relating to this Agreement must be brought in State or Federal Courts located in the Commonwealth of Pennsylvania.
Section 12.Notice. All notices, requests, demands, claims, and other communications under this Agreement shall be in writing. Any notice, request, demand, claim, or other communication under this Agreement shall be deemed duly given if (and then two business days after) it is sent by registered or certified mail, return receipt requested, postage prepaid, and addressed to the intended recipient at the following address: If to the Company, L. B. Foster Company, 415 Holiday Drive, Suite 100, Pittsburgh, PA 15220, Attn: Secretary; and if to the Shareholder, to his or her address as it appears on the Company’s records. Either party to this Agreement may send any notice, request, demand, claim, or other communication under this Agreement to the intended recipient at such address using any other means (including personal delivery, expedited courier, messenger service, telecopy, ordinary mail, or electronic mail), but no such notice, request, demand, claim, or other communication shall be deemed to have been duly given unless and until it actually is received by the intended recipient. Either party to this Agreement may change the address to which notices, requests, demands, claims, and other communications hereunder are to be delivered by giving the other party notice in the manner set forth in this section.
Section 13.Counterparts. This Agreement may be executed in one or more counterparts, each of which shall be deemed an original but all of which together shall constitute one and the same instrument.
Section 14.Amendments. This Agreement may be amended or modified at any time by an instrument in writing signed by the parties hereto, or as otherwise provided under the Plan. Notwithstanding, the Company may, in its sole discretion and without the Shareholder’s consent, modify or amend the terms of this Agreement, impose conditions on the timing and effectiveness of the issuance of the Shares, or take any other action it deems necessary or advisable, to cause this Award to be excepted from Section 409A of the Code (or to comply therewith to the extent the Company determines it is not excepted).
Section 15.Acknowledgments.
(a)By accepting the Shares, the Shareholder acknowledges receipt of a copy of the Plan and agrees to be bound by the terms and conditions set forth in the Plan and this Agreement, as in effect and/or amended from time to time.
(b)The Plan and related documents may be delivered to you electronically. Such means of delivery may include but do not necessarily include the delivery of a link to a Company intranet site or the internet site of a third party involved
4


in administering the Plan, the delivery of the documents via e-mail or CD-ROM or such other delivery determined at the Committee’s discretion. Both Internet Email and the World Wide Web are required in order to access documents electronically.
(c)This Award is intended to be excepted from coverage under Section 409A of the Code and the regulations promulgated thereunder and shall be interpreted and construed accordingly. Notwithstanding, Shareholder recognizes and acknowledges that Section 409A of the Code may impose upon the Shareholder certain taxes or interest charges for which the Shareholder is and shall remain solely responsible.
(d)Shareholder acknowledges that, by receipt of this Award, Shareholder has read this Section 15 and consents to the electronic delivery of the Plan and related documents, as described in this Section 15. Shareholder acknowledges that Shareholder may receive from the Company a paper copy of any documents delivered electronically at no cost if Shareholder contacts the Company’s General Counsel by telephone at (412) 928-7829 or by mail to L.B. Foster Company, 415 Holiday Drive, Suite 100, Pittsburgh, PA 15220 ATTN: General Counsel. Shareholder further acknowledges that Shareholder will be provided with a paper copy of any documents delivered electronically if electronic delivery fails.

5


IN WITNESS WHEREOF, the Company has caused a duly authorized officer to execute this Agreement on its behalf, and the Shareholder has placed his/her signature hereon, effective as of the Issue Date.

L. B. FOSTER COMPANY


                     By:

Name:    John E. Kunz
Title: Director and Chairman of the Compensation Committee

ACCEPTED AND AGREED TO:

                     , Shareholder
6
EX-10.3 4 ex-103q12023.htm EX-10.3 Document
    Exhibit 10.3

Performance Share Unit Program
    


L. B. Foster Company
2023 PERFORMANCE SHARE UNIT PROGRAM
(2023-2025)

[DATE]
[NAME AND ADDRESS]
Dear [NAME]:
Pursuant to the terms and conditions of the L. B. Foster Company 2023 Performance Share Unit Program (the “Program”), a component of the Long-Term Incentive Program, the Compensation Committee of the Board of Directors of L. B. Foster Company (the “Committee”) has awarded you ___________ Performance Share Units (the “Award”). The terms and conditions of your Award are governed by the provisions of the Program document attached hereto as Exhibit A, the terms of which are hereby incorporated by reference. Capitalized terms not otherwise defined herein shall each have the meaning assigned to them in the Program.
_________________________________________
Name:    ___________________________________
Title:    ___________________________________

I hereby acknowledge and accept the Award described above subject to all of the terms and conditions of the Program including, without limitation, the forfeiture and covenant provisions set forth in Sections 11, 12 and 13 of the Program, regardless of whether the Award ever results in a payment under the Program. I further acknowledge receipt of a copy of the Program document and the L. B. Foster 2022 Equity and Incentive Compensation Plan, and I agree to be bound by all the provisions of the Program and the Plan, as amended from time to time.
By signing below, I acknowledge that: (i) I have read and understand the Program including, without limitation, the provisions that require me to repay monies to the Company if (A) I breach Section 11 or 12 of the Program or (B) the Company is required to prepare an accounting restatement to the extent set forth in Section 13(c) of the Program; (ii) the Performance Share Units that have been awarded to me have no independent economic value, but rather are mere units of measurement to be used in calculating benefits, if any, available under the Program; (iii) I agree to accept as binding, conclusive and final all decisions or interpretations of the Compensation Committee upon any questions arising under this Award, the Program or the Plan; and (iv) my decision to participate in the Program is completely voluntary and done with full knowledge of its terms. I further acknowledge and agree that, except as otherwise specifically provided in the Program, in the event I terminate employment prior to the Payment Date, the Performance Share Units awarded to me shall be cancelled and forfeited, whether payable or not, without payment by the Company or any Subsidiary.


Signature: ____________________________    Date: ______________________________
    Name



Performance Share Unit Program
    

Exhibit A

L. B. FOSTER COMPANY
2023 PERFORMANCE SHARE UNIT PROGRAM
(2023-2025)

L. B. FOSTER COMPANY, a Pennsylvania corporation (the "Company"), hereby establishes this L. B. FOSTER COMPANY 2023 PERFORMANCE SHARE UNIT PROGRAM (the "Program"), in accordance with the provisions of the L. B. FOSTER COMPANY 2023 Equity and Incentive Compensation Plan (the “Plan”), and the terms and conditions provided herein.
WHEREAS, the Company maintains the Plan for the benefit of its and its Subsidiaries’ key employees; and
WHEREAS, in order to align the interests of key employees with the interests of the Company's shareholders and to enhance the Company's ability to retain the employment of its key employees, the Company desires to provide long-term incentive compensation; and
WHEREAS, Section 8 of the Plan authorizes the Company to make performance-based awards.
NOW, THEREFORE, the Compensation Committee of the Board of Directors of the Company ("Compensation Committee") hereby adopts the Program on the following terms and conditions:
1.Plan. In addition to the terms and conditions set forth herein, Awards under the Program are subject to, and governed by, the terms and conditions set forth in the Plan, which are hereby incorporated by reference. Unless the context otherwise requires, capitalized terms used in this Program and not otherwise defined herein shall have the meanings set forth in the Plan. In the event of any conflict between the provisions of the Program and the Plan, the Compensation Committee shall have full authority and discretion to resolve such conflict and any such determination shall be final, conclusive and binding on the Participant and all interested parties.
2.Effective Date. The effective date of this Program is January 1, 2023.
3.Eligibility. The Committee shall select those individuals who shall participate in the Program (the "Participants"). In the event that an employee is hired by the Company or a Subsidiary during the Performance Period, upon recommendation by the CEO, the Committee shall determine whether such employee will become a Participant in the Program, subject to such terms, conditions and adjustments as the Committee determines to be necessary or desirable.
4.Performance Share Unit Awards.
(a)The Committee shall determine the number of performance share units (the "Performance Share Units") to be awarded to each Participant. Each Performance Share Unit awarded under the Program shall represent a contingent right to receive up to two shares of the Company's common stock (the “Common Stock”) as described more fully herein, to the extent such Performance Share Unit is earned and becomes payable pursuant to the terms of this Program. Performance Share Units have no independent economic value, but rather are mere units of measurement used for purpose of calculating the number of shares, if any, to be paid under the Program.

(b)Performance Share Units shall be increased and/or decreased in accordance with the terms of the Program as described more fully herein. Notwithstanding any provision of this Program to the contrary the Committee, in its sole discretion, may increase or reduce the amount of any Performance Share Units that would otherwise be earned by a Participant upon attainment of the Performance Conditions (as defined below) if it concludes that such reduction is necessary or appropriate.



5.Performance Conditions of the Performance Share Units. The total number of shares of the Company’s Common Stock that may be earned by a Participant will be based on the Company's attainment of performance goals relating to the Company's return on invested capital ("ROIC") and Earnings Before Interest, Taxes, Depreciation and Amortization (“Cumulative EBITDA”) during the Performance Period (as defined below) as approved by (and in accordance with the procedures established by) the Committee on February 14, 2023 and on file with the Committee (the "Performance Conditions"), for the performance period of January 1, 2023 through December 31, 2025 (the "Performance Period"); provided, however, that except as otherwise specifically provided herein, the ability to earn shares of the Company’s Common Stock and to receive payment thereon under the Program is expressly contingent upon achievement of the threshold for the Performance Conditions and otherwise satisfying all other terms and conditions of the Program.
6.Issuance and Distribution.
(a)After the end of the Performance Period, the Committee shall certify in writing the extent to which the applicable Performance Conditions and any other material terms of the Program have been achieved. For purposes of this provision, and for so long as the Code permits, the approved minutes of the Committee meeting in which the certification is made may be treated as written certification.
(b)Subject to the terms and conditions of this Program, Performance Share Units will be settled and paid in shares of the Company's common stock in the calendar year immediately following the end of the Performance Period on a date determined in the Company's discretion, but in no event later than March 15th of such calendar year (the "Payment Date").
(c)Notwithstanding any other provision of this Program, in the event of a Change of Control, the Committee may, in its sole discretion, terminate the Program and, unless otherwise determined by the Committee, the Participant shall be deemed to earn shares of the Company’s Common Stock at the target level; provided, however, the Participant shall only be entitled to a prorated portion of such shares of the Company’s Common Stock determined based on the ratio of the number of complete months the Participant is employed or serves during the Performance Period through the date of the change of control to the total number of originally scheduled months in the Performance Period (or the number of originally scheduled remaining months in the Performance Period if the Participant becomes an employee of the Company and/or its Subsidiaries after the start of the Performance Period). Any such earned shares of the Company’s Common Stock shall be issued contemporaneous with the Change of Control on the closing date of the Change of Control; provided, further, in the event of a Change of Control, Performance Share Units may, in the Committee’s discretion, be settled in cash and/or securities or other property.
7.Dividends. Performance Share Units will not be credited with dividends that are paid on the Company's Common Stock.
8.Change in Participant's Status. In the event a Participant's employment with the Company or any Subsidiary is terminated (i) by reason of Retirement on or after January 1, 2023 (or such earlier date as may be expressly authorized by the Committee), or (ii) on account of death or total and permanent Disability prior to the Payment Date, the Participant shall be entitled to retain the Performance Share Units and receive payment therefore to the extent earned and payable pursuant to the provisions of this Program; provided, however, the Participant shall only be entitled to retain a prorated portion of the Performance Share Units determined at the end of the Performance Period and based on the ratio of the number of complete months the Participant is employed or serves during the Performance Period to the total number of months in the Performance Period (or the number of remaining months in the Performance Period if the Participant becomes an employee of the Company and/or its Subsidiaries after the start of the Performance Period). In the event a Participant's employment with the Company or any Subsidiary is terminated for any other reason, including, but not limited to, by the Participant voluntarily, or by the Company on account of a Termination for Cause or without cause, prior to the Payment Date, the Performance Share Units awarded to the Participant shall be cancelled and forfeited, whether payable or not, without payment by the Company or any Subsidiary. Any payments due a deceased Participant shall be paid to his estate as provided herein after the end of the Performance Period.



9.Responsibilities of the Compensation Committee. In addition to the authority granted to the Compensation Committee under the Plan, the Compensation Committee has responsibility for all aspects of the Program's administration, including but not limited to: ensuring that the Program is administered in accordance with the provisions of the Program and the Plan; approving Participants; authorizing Performance Share Unit Awards to Participants; and adjusting Performance Share Units as authorized hereunder consistent with the terms of the Program and the Plan. All decisions of the Compensation Committee under the Program shall be final, conclusive and binding on all interest parties. No member of the Compensation Committee shall be liable for any action or determination made in good faith as to the Program or any Performance Share Units awarded thereunder.
10.Tax Consequences/Withholding.
(a)It is intended that: (i) a Participant's Performance Share Units shall be considered to be subject to a substantial risk of forfeiture in accordance with those terms as defined in Section 409A and 3121(v)(2) of the Code; and (ii) a Participant shall have merely an unfunded, unsecured promise to be paid a benefit, and such unfunded promise shall not consist of a transfer of "property" within the meaning of Code Section 83.
(b)Participant acknowledges that any income for foreign, federal, state or local income tax purposes, including payroll taxes, that the Participant is required to recognize on account of the vesting of the Performance Share Units and/or issuance of the shares of Common Stock under this Award to Participant shall be subject to withholding of tax by the Company. In accordance with administrative procedures established by the Company, in order to satisfy Participant’s minimum statutory withholding tax obligations, if any, on account of the vesting of the Performance Share Units and/or issuance of shares of Common Stock under this Award, the Company will withhold from the Performance Share Units to be issued to the Participant a sufficient number of whole shares distributable in connection with this Award equal to the applicable minimum statutory withholding tax obligation.
(c)This Program is intended to be excepted from coverage under Section 409A and shall be construed accordingly. Notwithstanding any provision of this Program to the contrary, if any benefit provided under this Program is subject to the provisions of Section 409A, the provisions of the Program will be administered, interpreted and construed in a manner necessary to comply with Section 409A (or disregarded to the extent such provision cannot be so administered, interpreted or construed). Notwithstanding, Section 409A may impose upon the Participant certain taxes or other charges for which the Participant is and shall remain solely responsible, and nothing contained in this Program or the Plan shall be construed to obligate the Compensation Committee, the Company or any Subsidiary for any such taxes or other charges
11.Non-Competition.
(a)The Participants hereunder agree that this Section 11 is reasonable and necessary in order to protect the legitimate business interests and goodwill of the Company, including the Company's trade secrets, valuable confidential business and professional information, substantial relationships with prospective and existing customers and clients, and specialized training provided to Participants and other employees of the Company. The Participants acknowledge and recognize the highly competitive nature of the business of the Company and its Subsidiaries and accordingly agree that during the term of each of their employment and for a period of two (2) years after the termination thereof:
(i)The Participants will not directly or indirectly engage in any business substantially similar to any line of business conducted by the Company or any of its Subsidiaries, including, but not limited to, where such engagement is as an officer, director, proprietor, employee, partner, investor (other than as a holder of less than 1% of the outstanding capital stock of a publicly traded corporation), consultant, advisor, agent or sales representative, in any geographic region in which the Company or any of its Subsidiaries conducted business;



(ii)The Participants will not contact, solicit, perform services for, or accept business from any customer or prospective customer of the Company or any of its Subsidiaries in any line of business conducted by the Company or any of its subsidiaries;
(iii)The Participants will not directly or indirectly induce any employee of the Company or any of its Subsidiaries to: (1) engage in any activity or conduct which is prohibited pursuant to subparagraph 11(a)(i) or (2) terminate such employee's employment with the Company or any of its Subsidiaries. Moreover, the Participants will not directly or indirectly employ or offer employment (in connection with any business substantially similar to any line of business conducted by the Company or any of its Subsidiaries) to any person who was employed by the Company or any of its Subsidiaries unless such person shall have ceased to be employed by the Company or any of its Subsidiaries for a period of at least 12 months; and
(iv)The Participants will not directly or indirectly assist others in engaging in any of the activities, which are prohibited under subparagraphs (a)(i-iii) above.
(b)It is expressly understood and agreed that although the Participants and the Company consider the restrictions contained in this Section 11 to be reasonable, if a final judicial determination is made by a court of competent jurisdiction that the time or territory or any other restriction contained in this Program is an unenforceable restriction against any Participant, the provisions of this Program shall not be rendered void but shall be deemed amended to apply as to such maximum time and territory and to such maximum extent as such court may judicially determine or indicate to be enforceable against such Participant. Alternatively, if any court of competent jurisdiction finds that any restriction contained in this Program is unenforceable, and such restriction cannot be amended so as to make it enforceable, such finding shall not affect the enforceability of any of the other restrictions contained herein. The restrictive covenants set forth in this Section 11 shall be extended by any amount of time that a Participant is in breach of such covenants, such that the Company receives the full benefit of the time duration set forth above.
12.Confidential Information and Trade Secrets. The Participants and the Company agree that certain materials, including, but not limited to, information, data and other materials relating to customers, development programs, costs, marketing, trading, investment, sales activities, promotion, credit and financial data, manufacturing processes, financing methods, plans or the business and affairs of the Company and its Subsidiaries, constitute proprietary confidential information and trade secrets. Accordingly, the Participants will not at any time during or after a Participant's employment with the Company (including any Subsidiary) disclose or use for such Participant's own benefit or purposes or the benefit or purposes of any other person, firm, partnership, joint venture, association, corporation or other business organization, entity or enterprise other than the Company and any of its affiliates, any proprietary confidential information or trade secrets, provided that the foregoing shall not apply to information which is not unique to the Company or any of its Subsidiaries or which is generally known to the industry or the public other than as a result of such Participant's breach of this covenant. The Participants agree that upon termination of employment with the Company (including any Subsidiary) for any reason, the Participants will immediately return to the Company all memoranda, books, papers, plans, information, letters and other data, and all copies thereof or therefrom, which in any way relate to the business of the Company and its Subsidiaries, except that the Participants may retain personal notes, notebooks and diaries. The Participants further agree that the Participants will not retain or use for their own account at any time any trade names, trademark or other proprietary business designation used or owned in connection with the business of the Company or any of its Subsidiaries.
13.Remedies/Forfeiture/Recoupment.
(a)The Participants acknowledge that a violation or attempted violation on a Participant's part of Sections 11 and 12 will cause irreparable damage to the Company and its Subsidiaries, and the Participants therefore agree that the Company and its Subsidiaries shall be entitled as a matter of right to an injunction, out of any court of competent jurisdiction, restraining any violation or further violation of such promises by the Participants or a Participant's employees, partners or agents. The Participants agree that such right to an injunction is cumulative and in addition to whatever other



remedies the Company (including any Subsidiary) may have under law or equity, and the Participants' obligations to make timely payment to the Company as set forth in Section 13(b) of this Program. The Participants further acknowledge and agree that a Participant's Performance Share Units shall be cancelled and forfeited without payment by the Company if such Participant breaches any of his or her obligations set forth in Section 11 and 12 herein.
(b)At any point after becoming aware of a breach of any obligation set forth in Sections 11 and/or 12 of this Program, the Company shall provide notice of such breach to a Participant. By agreeing to participate in this Program, the Participants agree that within ten (10) days after the date the Company provides such notice, a Participant shall pay to the Company in cash an amount equal to any and all distributions paid to or on behalf of such Participant under this Program within the six (6) months prior to the date of the earliest breach. The Participant agrees that failure to make such timely payment to the Company constitutes an independent and material breach of the terms and conditions of this Program, for which the Company may seek recovery of the unpaid amount as liquidated damages, in addition to all other rights and remedies the Company may have resulting from a Participant's breach of the obligations set forth in Sections 11 and 12. The Participants agree that timely payment to the Company as set forth in this provision of the Program is reasonable and necessary because the compensatory damages that will result from breaches of Sections 11 and/or 12 cannot readily be ascertained. Further, the Participants agree that timely payment to the Company as set forth in this provision of the Program is not a penalty, and it does not preclude the Company from seeking all other remedies that may be available to the Company, including without limitation those set forth in this Section 13.
(c)Notwithstanding any other provisions herein, any Performance Share Units or other compensation (equity or cash) subject to recovery under any law, government regulation, stock exchange listing requirement, or Company policy, including the L.B. Foster Executive Recoupment Policy (incorporated herein by reference), shall be subject to such deductions, recoupment, and clawback as may be required to be made pursuant to such law, government regulation, stock exchange listing requirement or Company policy, as may be in effect from time to time, and which may operate to create additional rights for the Company with respect to this Award and any other compensation paid or payable by the Company and recovery of such amounts relating thereto.  By accepting this Award, Participant agrees and acknowledges that he or she is obligated to cooperate with, and provide any and all assistance necessary to, the Company to recover, recoup, or recapture this Award or any other applicable compensatory amounts pursuant to such law, government regulation, stock exchange listing requirement or Company policy. Such cooperation and assistance shall include, but is not limited to, executing, completing and submitting any documentation necessary to recover, recoup or recapture this Award or such other compensatory amounts from Participant’s accounts, or pending or future compensation or other grants.
14.Assignment/Nonassignment.
(a)The Company shall have the right to assign this Program, including without limitation Section 11, and the Participants agree to remain obligated by all provisions of this Program that are assigned to any successor, assign or surviving entity. The obligations of the Company under the Program shall be binding upon the successors and assigns of the Company. Any successor to the Company is an intended third party beneficiary of this Program.
(b)The Performance Share Units shall not be sold, pledged, assigned, hypothecated, transferred or disposed of (a "Transfer") in any manner, other than by will or the laws of descent and distribution. Any attempt by a Participant to Transfer the Performance Share Units in violation of the terms of the Program shall render the Performance Share Units null and void, and result in the immediate forfeiture of such Performance Share Units, without payment by the Company or any Subsidiary.
15.Impact on Benefit Plans. Payments under the Program shall not be considered as earnings for purposes of the Company's and/or Affiliate's qualified retirement plans or any such retirement or benefit plan unless specifically provided for therein. Nothing herein shall prevent the Company or any Affiliate from maintaining additional compensation plans and arrangements for its employees.



16.Changes in Stock. In the event of a stock split, stock dividend, or similar event, the Performance Share Units and the shares of Company common stock on which the Performance Conditions are based shall be appropriately adjusted to prevent dilution or enlargement of the rights of Participants which would otherwise result from any such transaction, provided such adjustment shall be consistent with Code Section 409A. In the case of a Change of Control, any obligation under the Program shall be handled in accordance with the terms of Section 6(c) hereof.
17.Governing Law, Jurisdiction, and Venue.
(a)This Program shall be governed by and construed in accordance with the laws of the Commonwealth of Pennsylvania, without giving effect to the principles of conflicts of law.
(b)Participant hereby irrevocably submits to the personal and exclusive jurisdiction of the United States District Court for the Western District of Pennsylvania or the Court of Common Pleas of Allegheny County, Pennsylvania in any action or proceeding arising out of, or relating to, this Program (whether such action or proceeding arises under contract, tort, equity or otherwise). Participant hereby irrevocably waives any objection which Participant now or hereafter may have to the laying of venue or personal jurisdiction of any such action or proceeding brought in said courts.
(c)Jurisdiction over, and venue of, any such action or proceeding shall be exclusively vested in the United States District Court for the Western District of Pennsylvania or the Court of Common Pleas of Allegheny County, Pennsylvania.
(d)Provided that the Company commences any such action or proceeding in the courts identified in Section 17(b), Participant irrevocably waives Participant's right to object to or challenge the above selected forum on the basis of inconvenience or unfairness under 28 U.S.C. § 1404, 42 Pa. C.S. § 5322 or similar state or federal statutes. Participant agrees to reimburse the Company for all of the attorney fees and costs it incurs to oppose Participant's efforts to challenge or object to litigation proceeding in the courts identified in Section 17(b) with respect to actions arising out of or relating to this Program (whether such actions arise under contract, tort, equity or otherwise).
18.Failure to Enforce Not a Waiver. The failure of the Company to enforce at any time any provision of this Program shall in no way be construed to be a waiver of such provision or of any other provision hereof.
19.Severability. In the event that any one or more of the provisions of this Program shall be held to be invalid, illegal or unenforceable, the validity, legality or enforceability of the remaining provisions shall not in any way be affected or impaired thereby.
20.Funding. The Program is not funded and all amounts payable hereunder, if any, shall be paid from the general assets of the Company or its Affiliate, as applicable. No provision contained in this Program or the Plan and no action taken pursuant to the provisions of this Program or the Plan shall create a trust of any kind or require the Company to maintain or set aside any specific funds to pay benefits hereunder. To the extent a Participant acquires a right to receive payments from the Company under the Program, such right shall be no greater than the right of any unsecured general creditor of the Company.
21.Headings. The descriptive headings of the Sections of this Program are inserted for convenience of reference only and shall not constitute a part of this Program.
22.Amendment or Termination of this Program. This Program may be modified, amended, suspended or terminated by the Committee at any time. Notwithstanding the foregoing or any provision of this Program to the contrary, the Committee may, in the sole discretion and without the Participants’ consent, modify or amend the terms of the Program or a Performance Grant, or take any other action it deems necessary or advisable, to cause the Program to comply with Section 409A. Any modification, amendment, suspension or termination shall only be effective upon a writing issued by the Committee, and a Participant shall not offer evidence of any purported oral modifications or amendments to vary or contradict the terms of this Program document.



    IN WITNESS WHEREOF, the undersigned has executed this Program on the day and year indicated below. This Program may be executed in more than one counterpart, each of which is deemed to be an original and all of which taken together constitute one and the same agreement.

EX-31.1 5 ex-311q12023.htm EX-31.1 Document
Exhibit 31.1
Certification under Section 302 of the
Sarbanes-Oxley Act of 2002
I, John F. Kasel, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of L.B. Foster Company;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer(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:
(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
5.The registrant’s other certifying officer(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):
(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
 
Date:May 10, 2023 /s/ John F. Kasel
Name: John F. Kasel
Title: President and Chief Executive Officer


EX-31.2 6 ex-312q12023.htm EX-31.2 Document
Exhibit 31.2
Certification under Section 302 of the
Sarbanes-Oxley Act of 2002
I, William M. Thalman, certify that:
1.I have reviewed this Quarterly Report on Form 10-Q of L.B. Foster Company;
2.Based on my knowledge, this report does not contain any untrue statement of a material fact or omit to state a material fact necessary to make the statements made, in light of the circumstances under which such statements were made, not misleading with respect to the period covered by this report;
3.Based on my knowledge, the financial statements, and other financial information included in this report, fairly present in all material respects the financial condition, results of operations and cash flows of the registrant as of, and for, the periods presented in this report;
4.The registrant’s other certifying officer(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:
(a) Designed such disclosure controls and procedures, or caused such disclosure controls and procedures to be designed under our supervision, to ensure that material information relating to the registrant, including its consolidated subsidiaries, is made known to us by others within those entities, particularly during the period in which this report is being prepared;
(b) Designed such internal control over financial reporting, or caused such internal control over financial reporting to be designed under our supervision, to provide reasonable assurance regarding the reliability of financial reporting and the preparation of financial statements for external purposes in accordance with generally accepted accounting principles;
(c) Evaluated the effectiveness of the registrant’s disclosure controls and procedures and presented in this report our conclusions about the effectiveness of the disclosure controls and procedures, as of the end of the period covered by this report based on such evaluation; and
(d) Disclosed in this report any change in the registrant’s internal control over financial reporting that occurred during the registrant’s most recent fiscal quarter (the registrant’s fourth fiscal quarter in the case of an annual report) that has materially affected, or is reasonably likely to materially affect, the registrant’s internal control over financial reporting; and
5.The registrant’s other certifying officer(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):
(a) All significant deficiencies and material weaknesses in the design or operation of internal control over financial reporting which are reasonably likely to adversely affect the registrant’s ability to record, process, summarize and report financial information; and
(b) Any fraud, whether or not material, that involves management or other employees who have a significant role in the registrant’s internal control over financial reporting.
 
Date:May 10, 2023 /s/ William M. Thalman
Name: William M. Thalman
Title: Senior Vice President
and Chief Financial Officer


EX-32.0 7 ex-320q12023.htm EX-32.0 Document
Exhibit 32.0
CERTIFICATE PURSUANT TO 18 U.S.C. SECTION 1350, AS ADOPTED PURSUANT TO SECTION 906 OF THE SARBANES-OXLEY ACT OF 2002
In connection with the Quarterly Report of L.B. Foster Company (the “Company”) on Form 10-Q for the period ended March 31, 2023, as filed with the Securities and Exchange Commission on the date hereof (the “Report”), the undersigned certify pursuant to Section 906 of the Sarbanes-Oxley Act of 2002 that:
1.The Report fully complies with the requirements of Section 13(a) or 15(d) of the Securities Exchange Act of 1934; and
2.The information contained in this Report fairly presents, in all material respects, the financial condition and results of operations of the Company.


Date:May 10, 2023 /s/ John F. Kasel
Name: John F. Kasel
Title: President and Chief Executive Officer
 
Date:May 10, 2023 /s/ William M. Thalman
Name: William M. Thalman
Title: Senior Vice President
and Chief Financial Officer


EX-101.SCH 8 fstr-20230331.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - Condensed Consolidated Balance Sheets link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - Condensed Consolidated Statements of Operations link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - Condensed Consolidated Statements of Comprehensive Loss link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - Condensed Consolidated Statements of Cash Flows link:presentationLink link:calculationLink link:definitionLink 0000008 - Statement - Condensed Consolidated Statements of Stockholders' Equity link:presentationLink link:calculationLink link:definitionLink 0000009 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Financial Statements link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Business Segments link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Revenue link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Goodwill and Other Intangible Assets link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Accounts Receivable link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Inventory link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Long-term Debt and Related Matters link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Earnings Per Common Share link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000019 - Disclosure - Stock-Based Compensation link:presentationLink link:calculationLink link:definitionLink 0000020 - Disclosure - Fair Value Measurements link:presentationLink link:calculationLink link:definitionLink 0000021 - Disclosure - Retirement Plans link:presentationLink link:calculationLink link:definitionLink 0000022 - Disclosure - Commitments and Contingent Liabilities link:presentationLink link:calculationLink link:definitionLink 0000023 - Disclosure - Financial Statements (Policies) link:presentationLink link:calculationLink link:definitionLink 0000024 - Disclosure - Business Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 0000025 - Disclosure - Revenue (Tables) link:presentationLink link:calculationLink link:definitionLink 0000026 - Disclosure - Goodwill and Other Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 0000027 - Disclosure - Accounts Receivable (Tables) link:presentationLink link:calculationLink link:definitionLink 0000028 - Disclosure - Inventory (Tables) link:presentationLink link:calculationLink link:definitionLink 0000029 - Disclosure - Long-term Debt and Related Matters (Tables) link:presentationLink link:calculationLink link:definitionLink 0000030 - Disclosure - Earnings Per Common Share (Tables) link:presentationLink link:calculationLink link:definitionLink 0000031 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 0000032 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 0000033 - Disclosure - Retirement Plans (Tables) link:presentationLink link:calculationLink link:definitionLink 0000034 - Disclosure - Commitments and Contingent Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 0000035 - Disclosure - Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 0000036 - Disclosure - Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 0000037 - Disclosure - Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 0000038 - Disclosure - Business Segments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000039 - Disclosure - Revenue - Sales by Major Product Line (Details) link:presentationLink link:calculationLink link:definitionLink 0000040 - Disclosure - Revenue - Timing of Transfer (Details) link:presentationLink link:calculationLink link:definitionLink 0000041 - Disclosure - Revenue - Over Time Sales (Details) link:presentationLink link:calculationLink link:definitionLink 0000042 - Disclosure - Revenue - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000043 - Disclosure - Revenue - Contract with Customer (Details) link:presentationLink link:calculationLink link:definitionLink 0000044 - Disclosure - Revenue - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 0000044 - Disclosure - Revenue - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 0000045 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 0000046 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) link:presentationLink link:calculationLink link:definitionLink 0000047 - Disclosure - Accounts Receivable - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000048 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 0000049 - Disclosure - Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 0000050 - Disclosure - Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 0000050 - Disclosure - Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 0000051 - Disclosure - Long-term Debt and Related Matters - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000052 - Disclosure - Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details) link:presentationLink link:calculationLink link:definitionLink 0000053 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 0000054 - Disclosure - Stock-Based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000055 - Disclosure - Stock-Based Compensation - Restricted Stock and Performance Share Units (Details) link:presentationLink link:calculationLink link:definitionLink 0000056 - Disclosure - Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 0000057 - Disclosure - Fair Value Measurements - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000058 - Disclosure - Retirement Plans - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000059 - Disclosure - Retirement Plans - Schedule Of Net Benefit Costs (Details) link:presentationLink link:calculationLink link:definitionLink 0000060 - Disclosure - Retirement Plans - Schedule of Costs of Retirement Plans (Details) link:presentationLink link:calculationLink link:definitionLink 0000061 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 0000062 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 9 fstr-20230331_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 10 fstr-20230331_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 11 fstr-20230331_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Increase (Decrease) in Stockholders' Equity Increase (Decrease) in Stockholders' Equity [Roll Forward] Net loss Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Reserve for uncollectible accounts, expense Current period provision Accounts Receivable, Credit Loss Expense (Reversal) Other long-term liabilities Increase (Decrease) in Other Noncurrent Liabilities Deferred tax assets (Note 9) Deferred Income Tax Assets, Net Entity Address, Postal Zip Code Entity Address, Postal Zip Code Debt Instrument [Axis] Debt Instrument [Axis] Finance leases and financing agreements Finance Lease, Liability Line of credit facility, maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Contract With Customer Liability [Roll Forward] Contract With Customer Liability [Roll Forward] Contract With Customer Liability Income Tax Disclosure [Abstract] Current maturities of long-term debt (Note 7) Less current maturities Long-Term Debt and Lease Obligation, Current Paid-in capital Additional Paid in Capital Number of potentially responsible parties included in agreement Number of Potentially Responsible Parties Included in Agreement Number of Potentially Responsible Parties Included in Agreement Line of credit, accordion feature, lower borrowing capacity Line of Credit, Accordion Feature, Lower Borrowing Capacity Option Line of Credit, Accordion Feature, Lower Borrowing Capacity Option Range [Domain] Statistical Measurement [Domain] Depreciation Depreciation Defined benefit plan, expected future employer contributions, current fiscal year Defined Benefit Plan, Expected Future Employer Contributions, Current Fiscal Year Net periodic pension (income) cost Defined Benefit Plan, Net Periodic Benefit Cost (Credit) Effect of exchange rate changes on cash and cash equivalents Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Including Disposal Group and Discontinued Operations Property, plant, and equipment - net Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization Contract assets transferred to receivables Transfers from contract asset balance to accounts receivable Contract with Customer, Asset, Reclassified to Receivable Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Net loss attributable to L.B. Foster Company Net Income (Loss) Attributable to Parent Payment period Litigation Settlement Installment Payment Term Litigation Settlement Installment Payment Term Anti-dilutive shares (in shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Amortization of prior service costs and transition amount Defined Benefit Plan, Amortization of Prior Service Cost (Credit) Accounts Receivable Additional Disclosures [Abstract] Equity Component [Domain] Equity Component [Domain] Total assets Assets, Fair Value Disclosure Total Debt and Lease Obligation Treasury stock - at cost, 306,068 and 338,952 common stock shares at March 31, 2023 and December 31, 2022, respectively Treasury Stock, Common, Value Contract assets - net (Note 3) Contract assets Balance as of December 31, 2022 Balance as of March 31, 2023 Contract with Customer, Asset, after Allowance for Credit Loss PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association [Member] PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association Supplemental disclosure of cash flow information: Supplemental Cash Flow Information [Abstract] Derivative Instrument [Axis] Derivative Instrument [Axis] Goodwill [Line Items] Goodwill [Line Items] Statement of Cash Flows [Abstract] Revolving credit facility Line of credit facility, amount outstanding Long-Term Line of Credit Entity Address, State Entity Address, State or Province Level 1 Fair Value, Inputs, Level 1 [Member] Other comprehensive income, net of tax: Other Comprehensive Income (Loss), Net of Tax [Abstract] Other adjustments, including business divestiture Contract With Customer, Liability, Other Adjustments Contract With Customer, Liability, Other Adjustments Accounts receivable Increase (Decrease) in Accounts and Other Receivables Award Type [Axis] Award Type [Axis] Denominator: Weighted Average Number of Shares Outstanding, Basic [Abstract] Net cash provided by (used in) operating activities Net Cash Provided by (Used in) Operating Activities Interest rate swaps Derivative Asset Proceeds from business dispositions Proceeds from Divestiture of Businesses Other Precast Concrete Products Other Precast Concrete Products [Member] Other Precast Concrete Products Lender Name [Axis] Lender Name [Axis] Legal Entity [Axis] Legal Entity [Axis] Accounts Receivable Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Share-based Compensation Arrangement by Share-based Payment Award Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] CASH FLOWS FROM INVESTING ACTIVITIES: Net Cash Provided by (Used in) Investing Activities [Abstract] Weighted average shares outstanding (in shares) Weighted Average Number of Shares Issued, Basic Issuance of common shares, net of share withheld for taxes Stock Issued During Period, Value, New Issues Technology Technology-Based Intangible Assets [Member] Litigation settlement amount, non-current Litigation Settlement, Amount Awarded to Other Party, Non-Current Litigation Settlement, Amount Awarded to Other Party, Non-Current Entity Common Stock, Shares Outstanding (in shares) Entity Common Stock, Shares Outstanding Fair Value, Measurements, Fair Value Hierarchy [Domain] Fair Value Hierarchy and NAV [Domain] Revolving credit facility Revolving Credit Facility [Member] Anticipated clean period Remedial Work Anticipated Clean Up Period Remedial Work Anticipated Clean Up Period Document Type Document Type Point in time Transferred at Point in Time [Member] Restricted Stock, Deferred Stock Units and Performance Share Units Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward] Line of credit facility increase over previous commitment Line of Credit Facility, Increase (Decrease), Net Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Outstanding, Beginning balance (usd per share) Outstanding, Ending balance (usd per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value Segments [Axis] Segments [Axis] Long-term Debt and Related Matters Debt Disclosure [Text Block] Products and Services [Domain] Product and Service [Domain] Entity Shell Company Entity Shell Company Deferred income taxes Deferred Income Tax Expense (Benefit) UPRR UPRR [Member] The UPRR Consolidation Items [Domain] Consolidation Items [Domain] Schedule of Contract with Customer, Contract Asset, Contract Liability Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Document Period End Date Document Period End Date Vesting period one Share-Based Payment Arrangement, Tranche One [Member] Over time input method Over Time Input Method [Member] Over Time Input Method Schedule of Costs of Retirement Plans Schedule of Costs of Retirement Plans [Table Text Block] TOTAL ASSETS Assets Assets Write-off against allowance Accounts Receivable, Allowance for Credit Loss, Writeoff Debt Disclosure [Abstract] Earnings Per Share [Abstract] Income Statement Location [Axis] Income Statement Location [Axis] Defined benefit plan, contributions by employer Defined Benefit Plan, Plan Assets, Contributions by Employer Performance-Based Stock and Share Units Performance Shares [Member] Other accrued liabilities Accrued Liabilities, Current Number of financial covenants Debt Instrument, Number Of Financial Covenants Debt Instrument, Number Of Financial Covenants Net cash (used in) provided by financing activities Net Cash Provided by (Used in) Financing Activities Accounting Policies [Abstract] Accrued payroll and employee benefits Employee-related Liabilities, Current Loss on asset divestitures Gain (Loss) on Disposition of Business Loss before income taxes Loss before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Stockholders’ equity: Stockholders' Equity Attributable to Parent [Abstract] Segments [Domain] Segments [Domain] Schedule of Goodwill [Table] Schedule of Goodwill [Table] Earnings Per Common Share Earnings Per Share [Text Block] Customer [Axis] Customer [Axis] Interest cost Defined Benefit Plan, Interest Cost Schedule Of Future Payments Of Legal Settlements Schedule Of Future Payments Of Legal Settlements [Table Text Block] Schedule Of Future Payments Of Legal Settlements Award Type [Domain] Award Type [Domain] Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items] Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items] Number of parties required to perform remedial design work Number of Parties Required to Perform Remedial Work Number of Parties Required to Perform Remedial Work Adjustment for incentive awards expected to vest (usd per share) Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Weighted Average Grant Date Fair Value Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Weighted Average Grant Date Fair Value Recognition period for compensation expense not yet recognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Schedule of Finite-Lived Intangible Assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Derivative Contract [Domain] Derivative Contract [Domain] Gross profit Gross Profit Total net sales Net Sales Revenue from Contract with Customer, Including Assessed Tax Entity Registrant Name Entity Registrant Name Common shares issues net of shares withheld (in shares) Stock Issued During Period, Shares, New Issues Defined contribution plan number Number of Defined Contribution Plans Number of Defined Contribution Plans Foreign currency translation impact Goodwill, Foreign Currency Translation Gain (Loss) Minimum leverage ratio Debt Instrument, Covenant, Leverage Ratio, Maximum Debt Instrument, Covenant, Leverage Ratio, Maximum Patents Patents [Member] Customer relationships Customer Relationships [Member] Entity Address, City Entity Address, City or Town Retirement Plans Retirement Benefits [Text Block] Total stockholders’ equity Beginning balance Ending balance Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest Minimum fixed charge coverage ratio Debt Instrument, Covenant, Interest Coverage Ratio, Minimum Debt Instrument, Covenant, Interest Coverage Ratio, Minimum Minimum Minimum [Member] Noncontrolling interest Stockholders' Equity Attributable to Noncontrolling Interest Statement of Financial Position [Abstract] Entity Emerging Growth Company Entity Emerging Growth Company Common stock, par value (usd per share) Common Stock, Par or Stated Value Per Share Raw materials Inventory, Raw Materials, Net of Reserves Unrealized (loss) gain on cash flow hedges, net of tax benefit of $0 and $188, respectively Unrealized derivative gain (loss) on cash flow hedges Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax Commitments and Contingencies Disclosure [Abstract] Number of retirement plans NumberOfRetirementPlans Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Treasury Stock Treasury Stock, Common [Member] Pension Plan Pension Plan [Member] Fair Value Measurements Fair Value Disclosures [Text Block] Over time sales, amount Over Time Sales, Amount Over Time Sales, Amount Trading Symbol Trading Symbol Commission File Number Entity File Number Treasury stock shares - at cost, common stock (in shares) Treasury Stock, Common, Shares Unallocated corporate expenses and other unallocated charges Corporate Expense And Other Unallocated Charges Corporate Expense And Other Unallocated Charges Canada CANADA Amounts attributable to noncontrolling interest Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest Title of Individual [Axis] Title of Individual [Axis] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Effective income tax rate (percent) Effective Income Tax Rate Reconciliation, Percent Defined Contribution Plan [Table] Defined Contribution Plan [Table] Term deposits Cash and Cash Equivalents, Fair Value Disclosure Other comprehensive income (loss), net of tax: Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Accounts payable Increase (Decrease) in Accounts Payable Product Liability Contingency Product Liability Contingency [Line Items] Income Taxes Income Tax Disclosure [Text Block] Finished goods Inventory, Finished Goods, Net of Reserves Credit Facility [Domain] Credit Facility [Domain] Defined Contribution Plan Disclosure Defined Contribution Plan Disclosure [Line Items] Amortization expense Amortization of Intangible Assets Undiscovered remedial work Undiscovered Remedial Work Undiscovered Remedial Work Schedule of Goodwill Schedule of Goodwill [Table Text Block] Interest paid Interest Paid, Excluding Capitalized Interest, Operating Activities Basic loss per common share (usd per share) Earnings Per Share, Basic Cash flow hedges reclassified to earnings, tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax Contract With Customer Asset After Allowance For Credit Loss Current [Roll Forward] Contract With Customer Asset After Allowance For Credit Loss Current [Roll Forward] Contract With Customer Asset After Allowance For Credit Loss Current Defined Benefit Plan Disclosure Defined Benefit Plan Disclosure [Line Items] Unallocated corporate assets Corporate, Non-Segment [Member] Total L.B. Foster Company stockholders’ equity Stockholders' Equity Attributable to Parent Director Director [Member] Vesting [Domain] Vesting [Domain] Chemtec Energy Services LLC Chemtec Energy Services LLC [Member] Chemtec Energy Services LLC Line of Credit Facility Line of Credit Facility [Line Items] Entity Interactive Data Current Entity Interactive Data Current Fair Value, by Balance Sheet Grouping [Table] Fair Value, by Balance Sheet Grouping [Table] Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Change in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Numerator for basic and diluted loss per common share: Net Income (Loss) Attributable to Parent [Abstract] Retained Earnings Retained Earnings [Member] Segment Reporting Information Segment Reporting Information Segment Reporting Information [Line Items] Deferred Stock Units Deferred Stock Units [Member] Deferred Stock Units Common Stock Common Stock [Member] Treasury stock acquisitions Payments for Repurchase of Common Stock Statement [Table] Statement [Table] Repayments of debt Repayments of Other Long-Term Debt Vested (usd per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value Retirement Plan Sponsor Location [Axis] Retirement Plan Sponsor Location [Axis] Document Quarterly Report Document Quarterly Report Current assets: Assets, Current [Abstract] Long-term operating lease liabilities Operating Lease, Liability, Noncurrent Pension liability adjustment Other Comprehensive (Income) Loss, Defined Benefit Plan, after Tax and Reclassification Adjustment, Attributable to Parent Expenses associated with contributions made Defined Contribution Plan, Cost Range [Axis] Statistical Measurement [Axis] Technology Services and Solutions Rail Technologies Products [Member] Rail Technologies Products Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Noncontrolling Interest Line of Credit Facility, Lender [Domain] Line of Credit Facility, Lender [Domain] Retained earnings Retained Earnings (Accumulated Deficit) Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Prior Credit Facility Prior Credit Facility [Member] Prior Credit Facility Equity Components [Axis] Equity Components [Axis] Investment of noncontrolling interest Proceeds from Noncontrolling Interests Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Document Fiscal Year Focus Document Fiscal Year Focus Foreign Plan Foreign Plan [Member] United Kingdom UNITED KINGDOM CASH FLOWS FROM OPERATING ACTIVITIES: Net Cash Provided by (Used in) Operating Activities [Abstract] Statement Statement [Line Items] Proceeds from debt Proceeds from Issuance of Other Long-Term Debt Outstanding, Beginning balance (in shares) Outstanding, Ending balance (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Fair Value, Hierarchy [Axis] Fair Value Hierarchy and NAV [Axis] Gross Carrying Value Finite-Lived Intangible Assets, Gross Selling and administrative expenses Selling, General and Administrative Expense Sales of goods Product [Member] Operating lease right-of-use assets - net Operating Lease, Right-of-Use Asset Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Document Transition Report Document Transition Report Local Phone Number Local Phone Number Operating profit (loss) Segment Operating Profit (Loss) Operating profit (loss) for reportable segments Operating Income (Loss) Inventories Increase (Decrease) in Inventories Financing Receivable, Allowance for Credit Loss [Line Items] Financing Receivable, Allowance for Credit Loss [Line Items] Effect of dilutive securities: Weighted Average Number of Shares Outstanding, Diluted, Adjustment [Abstract] Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding Sales of services Service [Member] Goodwill (Note 4) Goodwill, beginning balance Goodwill, ending balance Goodwill Adjustments to reconcile net loss to cash provided by (used in) operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Goodwill and Other Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] Income tax benefit Income Tax Expense (Benefit) Product Liability Contingency [Table] Product Liability Contingency [Table] Deferred tax liabilities (Note 9) Deferred Income Tax Liabilities, Net Income Statement [Abstract] 2024 Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One Fourth Amended And Restated Credit Agreement Fourth Amended And Restated Credit Agreement [Member] Fourth Amended And Restated Credit Agreement Paid-in Capital Additional Paid-in Capital [Member] Document Fiscal Period Focus Document Fiscal Period Focus Denominator for diluted loss per common share - adjusted weighted average shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Diluted Schedule of Revenues by Major Product Line Schedule of Revenues by Major Product Line [Table Text Block] Tabular disclosure summarizing sales by major product line. Schedule of Inventory Schedule of Inventory, Current [Table Text Block] Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table] Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table] Precast Concrete Products Precast Concrete Products [Member] Precast Concrete Products Allowance for Doubtful Accounts Accounts Receivable, Allowance for Credit Loss [Roll Forward] Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at March 31, 2023 and December 31, 2022, 11,115,779; shares outstanding at March 31, 2023 and December 31, 2022, 10,809,711 and 10,776,827, respectively Common Stock, Value, Issued Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Annual commitment amount Long-term Purchase Commitment, Annual Commitment Amount Long-term Purchase Commitment, Annual Commitment Amount Granted (usd per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block] Operating Segments Operating Segments [Member] Number of companies that received a general notice letter (company) Number Of Companies Receiving General Notice Letter Number Of Companies Receiving General Notice Letter Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Net loss attributable to noncontrolling interest Net Income (Loss) Attributable to Noncontrolling Interest Commitments and Contingent Liabilities Commitments and Contingencies Disclosure [Text Block] Current liabilities: Liabilities, Current [Abstract] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Common stock, shares issued (in shares) Common Stock, Shares, Issued Deferred revenue Contract with Customer, Liability, Current Present value of remedial work Present Value of Proposed Remedial Work Present Value of Proposed Remedial Work Retirement Plan Type [Domain] Retirement Plan Type [Domain] Income Statement Location [Domain] Income Statement Location [Domain] Over time Transferred over Time [Member] Amendment Flag Amendment Flag Weighted Average Amortization Period In Years Finite-Lived Intangible Asset, Useful Life Net cash provided by (used in) investing activities Net Cash Provided by (Used in) Investing Activities Total comprehensive loss Other Comprehensive Income (Loss), Net of Tax Comprehensive loss attributable to L.B. Foster Company Comprehensive Income (Loss), Net of Tax, Attributable to Parent Rail, Technologies, and Services Rail Technologies and Services Segment [Member] Rail Technologies and Services Segment Net additions to contract assets Contract With Customer Asset Additions Contract With Customer Asset Additions Entity Current Reporting Status Entity Current Reporting Status Fabricated Steel Products Fabricated Steel Products [Member] Fabricated Steel Products Goodwill and Intangible Assets Disclosure [Abstract] Other assets Other Assets, Noncurrent Accrued payroll and employee benefits Increase (Decrease) in Employee Related Liabilities Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Swap Swap [Member] Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Other noncurrent assets Increase (Decrease) in Other Noncurrent Assets Domestic Plan Domestic Plan [Member] Title of Individual [Domain] Title of Individual [Domain] Debt Instrument, Redemption, Period [Domain] Debt Instrument, Redemption, Period [Domain] Other expense (income) - net Other (expense) income - net Other Nonoperating Income (Expense) Common stock, shares authorized (in shares) Common Stock, Shares Authorized Statement of Comprehensive Income [Abstract] Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Deferred revenue Increase (Decrease) in Contract with Customer, Liability Total current assets Assets, Current Income taxes received Income Taxes Paid, Net Unrealized gain (loss) on cash flow hedge, tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, Tax Revenue recognized from contract liability Revenue recognized from contract liabilities Contract with Customer, Liability, Revenue Recognized Entity Small Business Entity Small Business Schedule of Net Benefit Costs Schedule of Net Benefit Costs [Table Text Block] Other intangibles - net (Note 4) Net Carrying Amount Finite-Lived Intangible Assets, Net Schedule of Reconciliation of Assets from Segment to Consolidated Reconciliation of Assets from Segment to Consolidated [Table Text Block] Net loss Net loss Net loss Net loss Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest Line of Credit Facility [Table] Line of Credit Facility [Table] Revenue, remaining performance obligation, expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Expected cost on shares expected to vest Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Title of 12(b) Security Title of 12(b) Security Schedule of Defined Benefit Plans Disclosures [Table] Schedule of Defined Benefit Plans Disclosures [Table] Financial Statements Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Retirement Plan Sponsor Location [Domain] Retirement Plan Sponsor Location [Domain] Business Segments Segment Reporting Disclosure [Text Block] Selling, General and Administrative Expenses Selling, General and Administrative Expenses [Member] Other current liabilities Increase (Decrease) in Other Accrued Liabilities Financing Receivable, Allowance for Credit Loss [Table] Financing Receivable, Allowance for Credit Loss [Table] Reclassification of pension liability adjustments to earnings, tax Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, Tax Current portion of accrued settlement (Note 13) Accrued Legal Settlement Current Accrued Legal Settlement Current LIABILITIES AND STOCKHOLDERS’ EQUITY Liabilities and Equity [Abstract] Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Litigation settlement amount Total Litigation Settlement, Amount Awarded to Other Party Remainder of 2023 Litigation Settlement Amount Awarded To Other Party Scheduled Payment Remainder Of Year Litigation Settlement Amount Awarded To Other Party Scheduled Payment Remainder Of Year Steel Products and Measurement Steel Products And Measurement [Member] Steel Products And Measurement Inventories - net (Note 6) Inventories - net Inventory, Net Over time sales, percentage Over Time Sales, Percent Over Time Sales, Percent Accounts payable Accounts Payable, Current Accrual for environmental loss Accrual for Environmental Loss Contingencies Entity Filer Category Entity Filer Category Denominator for basic loss per common share (in shares) Weighted Average Number of Shares Outstanding, Basic Rail Products and Global Friction Management Rail Products And Friction Management [Member] Rail Products And Friction Management United States UNITED STATES Long-term portion of accrued settlement (Note 13) Accrued Legal Settlement Non Current Accrued Legal Settlement Non Current Security Exchange Name Security Exchange Name Fair Value, Balance Sheet Grouping, Financial Statement Captions Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items] Schedule of Reconciliation of Revenue from Segments to Consolidated Reconciliation of Revenue from Segments to Consolidated [Table Text Block] Cash flow hedges reclassified to earnings, net of tax expense of $0 and $66, respectively Cash flow hedges reclassified to earnings Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax Restricted Stock Restricted Stock [Member] Share-Based Payment Arrangement, Noncash Expense [Abstract] Cover [Abstract] Level 3 Fair Value, Inputs, Level 3 [Member] Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Allowance for doubtful accounts, beginning balance Allowance for doubtful accounts, ending balance Accounts Receivable, Allowance for Credit Loss Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Work-in-process Inventory, Work in Process, Net of Reserves Revenue Revenue from Contract with Customer [Text Block] Segment Reporting [Abstract] Contract assets Increase (Decrease) in Contract with Customer, Asset Line of credit facility, maximum increase in commitments Line Of Credit Facility, Maximum Increase In Commitments Line Of Credit Facility, Maximum Increase In Commitments Debt Instrument, Redemption, Period Two Debt Instrument, Redemption, Period Two [Member] Noncontrolling Interest Noncontrolling Interest [Member] Interest expense - net Interest Income (Expense), Net Recognized net actuarial loss Defined Benefit Plan, Amortization of Gain (Loss) TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY Liabilities and Equity Debt instrument term Debt Instrument, Term Goodwill Goodwill [Roll Forward] Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Level 2 Fair Value, Inputs, Level 2 [Member] Adjustment for incentive awards expected to vest (in shares) Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Schedule of Reconciliation of Operating Profit (Loss) from Segments to Consolidated Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block] Number of defined benefit plans DefinedBenefitPlanNumber Debt Instrument, Redemption, Period One Debt Instrument, Redemption, Period One [Member] Current Fiscal Year End Date Current Fiscal Year End Date Vesting [Axis] Vesting [Axis] Finite-Lived Intangible Assets Finite-Lived Intangible Assets [Line Items] Diluted loss per common share (usd per share) Earnings Per Share, Diluted Coatings and Measurement Coatings and Measurement [Member] Coatings and Measurement Vesting period two Share-Based Payment Arrangement, Tranche Two [Member] Proceeds from the sale of property, plant, and equipment Proceeds from Sale of Property, Plant, and Equipment Trademarks and trade names Trademarks and Trade Names [Member] Vesting period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period (Gain) loss on sales and disposals of property, plant, and equipment Gain (Loss) on Disposition of Property Plant Equipment Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition UPRR UprrMember Consolidation Items [Axis] Consolidation Items [Axis] Interest income Interest Income Interest Income Total current liabilities Liabilities, Current Other current assets Other Assets, Current Increase in billings in excess of cost, excluding revenue recognized Contract with Customer, Liability, Increase from Cash Receipts Contract with Customer, Liability, Increase from Cash Receipts Revenue remaining performance obligation Revenue, Remaining Performance Obligation, Amount Schedule of Accounts Receivable, Allowance for Credit Loss Accounts Receivable, Allowance for Credit Loss [Table Text Block] Amortization Amortization Entity Address, Suite Entity Address, Address Line Two Entity Address, Street Name Entity Address, Address Line One Total cost of sales Cost of Revenue Balance as of December 31, 2022 Balance as of December 31, 2022 Balance as of March 31, 2023 Contract with Customer, Liability Employee-related Liabilities [Abstract] Other assets: Other Assets, Noncurrent [Abstract] Products and Services [Axis] Product and Service [Axis] Expected return on plan assets Defined Benefit Plan, Expected Return (Loss) on Plan Assets Over time output method Over Time Output Method [Member] Over Time Output Method Fair Value Disclosures [Abstract] Interest expense - net Interest expense Interest Expense Credit Facility [Axis] Credit Facility [Axis] Retirement Plan Type [Axis] Retirement Plan Type [Axis] Long-term debt (Note 7) Long-term portion Long-Term Debt and Lease Obligation Precast Concrete Buildings Precast Concrete Buildings [Member] Precast Concrete Buildings Inventory Inventory Disclosure [Text Block] Schedule of Long-term Debt Instruments Schedule of Long-Term Debt Instruments [Table Text Block] Equity in income of nonconsolidated investments Equity Loss Income and Remeasurement Gain Equity Loss Income and Remeasurement Gain Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Inventory Disclosure [Abstract] Entity Tax Identification Number Entity Tax Identification Number Reclassification of pension liability adjustments to earnings, net of tax expense of $2 and $16, respectively* Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, after Tax Schedule of Nonvested Share Activity Schedule of Nonvested Share Activity [Table Text Block] Favorable lease Off-Market Favorable Lease [Member] Schedule of Disaggregation of Revenue Disaggregation of Revenue [Table Text Block] Revenue from Contract with Customer [Abstract] Non-compete agreements Noncompete Agreements [Member] Net decrease in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Entity Central Index Key Entity Central Index Key Weighted Average Grant Date Fair Value Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Litigation settlement amount, current Litigation Settlement, Amount Awarded to Other Party, Current Litigation Settlement, Amount Awarded to Other Party, Current Entity [Domain] Entity [Domain] City Area Code City Area Code ASSETS Assets [Abstract] Other current assets Increase (Decrease) in Other Current Assets Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Debt Instrument, Redemption, Period [Axis] Debt Instrument, Redemption, Period [Axis] Revenue remaining performance obligation (percentage) Revenue, Remaining Performance Obligation, Percentage Deferred receipt period Share-based Compensation Arrangement by Share-based Payment Award, Deferred Receipt Period Share-based Compensation Arrangement by Share-based Payment Award, Deferred Receipt Period CASH FLOWS FROM FINANCING ACTIVITIES: Net Cash Provided by (Used in) Financing Activities [Abstract] Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Less comprehensive (loss) income attributable to noncontrolling interest: Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest [Abstract] Other long-term liabilities Other Liabilities, Noncurrent Capital expenditures on property, plant, and equipment Payments to Acquire Property, Plant, and Equipment Accounts receivable - net (Note 5) Accounts and Financing Receivable, after Allowance for Credit Loss, Current Disaggregation of Revenue Disaggregation of Revenue [Line Items] Purchase commitment Long-Term Purchase Commitment, Amount Weighted Average Weighted Average [Member] Schedule of Earnings Per Share, Basic and Diluted Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Customer [Domain] Customer [Domain] Net loss attributable to noncontrolling interest Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest EX-101.PRE 12 fstr-20230331_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT GRAPHIC 13 fstr-20230331_g1.gif GRAPHIC begin 644 fstr-20230331_g1.gif M1TE&.#EAD@%" ' "P D@%" (?___\A&2'6$$(A(2'W]_<9&1DA&1GO M]__%"$)24E+_]^\I*2DI&2DQ.C$Q&1 9"!#.WMZE$%*EYN:$C(1CG)Q:E&-: M&5J]Q<5::V/FA(3OYN][C)S.M>;F$%*EC*7OO;VEM>9:0N800H000N9:$.80$.9:0K40 M0K5:$+40$+40$%I[:V,00A#F8Z7FC,Y:2H3F.L[F.H2MC,ZM.LZM.H1:&8RM M8X3F8\[F$,[F$(2M8\ZM$,ZM$(2MM82]M;VEK:76M8Q[E&/O2E)[&5K6YE*< MYK6U+6O;V]0DHZ0A 00EH0$(R]A%+WA!F]2AF]A!GF$"E[0N8Q M0H0Q0N9[$.8Q$.9[0K4Q0K5[$+4Q$+4Q$%K>8WOF$ C6YK76YH2EK;W64EKF MC.][2H3F.N_F.J6MC.^M.N^M.J5[&8RM8Z7F8^_F$._F$*6M8^^M$.^M$*5: M8(" COM8SWYE*]YK6]YE+WYAF]YAGWM5*]YH2]M5+WM1F]M1ES2E): MG!!:\BQ,F3N3.U7NLW. !&1-2Y\^%8-B MFI*5X[O@$K9+ZN##$_^-RS60>?+FS8=UF79A^_O3EMYXOOU\_ M>?]?I4>>7VD-MQ8])]&CQ6*)-3C9@S\Y&"&$$E8& $OL93C?AF5QV%Z'('XH MHH8ADCBBAR:FB.)#3#%(H6(+@/80;&*UQ%!W"\EV$FL+T:CCC3WF:"./KPGI M&I$^#HECC461.-1;!&WD&VWV;6;E6.&>9Z89_IW M@P;TV#.6 O6\%),!U[TXX9T2.L<@=*ZA]!![?[H7J)\F"5HHH3D:FBBB?8K6 MZ*". GIHI LU1!8&3>GYTP-1Q2D;0PM%1Q9;#[%T(41LB0HJ1*9&YU"JH:[_ M6JJEJ,9Z*JD.M5KKJ;=.=%J _]W&509J!6GCATDB>*%9.OIBGUUSY0=ME=%. MF]>9Z?6UPW"OP4G6@D_A:6>>=OXT@"X02;HHI8RJ^^BDD,8+[[SKREMOK"ZU M6*>$BEWPJFO*VK@LJ-_MJ&RB @?*X-6%PTDJT IQT@DM?V+2N2O/*M-1.4PWUU-%AG>C55>=HZJ< Z,+OA(E% M92-LL!8V*P K/528JFKG^K;;;,/-]MIM_YOWJ'?+_UTWW7N#&J=0]_$'H #$ MYBC:AP$?C"#&-,:IP+/]&6YYX?<)2Q[-7N47R [UL+DEN.8^E>F^$)HNV4_H M_LF6P'&RY5+LB]+>I^VSKYJ[[ OAWKONO_-^M_"^F[HHKYL-77I,,B+J4H(D MNQ2=P/]*'[VMU%_/:\+:5X_]P]UK/_V%M)\TPQ(-MH6,(2>LLZ-0E !/_)%I,'7 X( L=/0J4%A>V\#4H].%:> @G$YZ$ M1AJL88W(@L(-F@4V"J@B2J*CQ#&:I4"M89,3LQC&T)%P5#AZ89%H1"8SH2]Q M\1FAQEPE,68I;@?HDY;'!MFY-'4%@'9IQSP.0!A+@:LI0%M +!#DP70:6RG M&X D8U(9X@R.'MX1C1MA$SH8>@>4"YN1["*W*I8@*(N#B^/O0LFL+#(K:R6Y M(OAV%C^2Z>N2J?N)O\ (-E\Y<2+QBY,�-"[\22-6E!Y<@]II?4'!S+ON(RF:VG(7 *$LK@Z#17J<1^8&)?_@+AL@"EAS_W],]6 MP8PL8:, \#& !]3IDA0L0 0?\( %_X!T$QED&PR91$TH M3I$=$TA ^BT@.P$C3.BQ MQA?<,I!T*]5$#<9/"\&5R0/P,=L!%, SH*WM6+? +1=>\U2DM!3'F,1,%ZZ% MDVY@'8."(L1*3^OPG)L2!K"RXZBU95NB>>J#L?O_)G\P"T4^N]%, MQ*B2B/V#R #&11XRY=F=MJ-Z*/,"&*CMCX/)F 4,\3$!F,D",(!7#"Y1F13Y M9O)L8LG,QJ0!F^A28(9J7M=,M/\L6M(MV^K1@E[<^*''G4R,%U/D!1R!I6MQ M8TL: EU3NK"*7Z:(H"_0@"OO.8+OY<<#)I#7O::&GG%12&!*\CC>UBY7[6$- M/0"YUP'JCW^7R 7;I !5K^"U:T.B3SD\8+]F"?$?-W?)9S(:=(1+3(#.((6 MACV("QB[V,4^MK$OD.QD*[MW;GH-.U); -?BY,J+<6A/7 MI OML !M@QP)3 MJ4'@ND+*FDR=3=:=96W7:3&2;, 6Y C&:;=VO5;^-C ?6%L#T'8!^#" 9"+] M7G_+Q!\#V 0Q1U8/'20 X0.0C,^NW( 'YAE&C=;!*(&DI0L,_,?>EDD!:%* MH!Q !YK_A''0(GC)(@?[BM3:BLRRLIK6-#%=KP->C<;2D'@>$%@9^-#Q'E*/ M>>R $'')P5SJ&1=.W$B@0@2F3#8)XR#&XU#:) LX7T@1+23 H=A^P+>'[%G9 M+G< _D@ ='/N*B&^#+D[VXTYRD@8HP!&@*A9=&#G+,=8W:!7C\B"^ M>\H%X(<6MAXZ7P!WM3 J\YVP?.<@RM8?&,@9%HM$C^-XQC$)J(<6&B!V&,VI MDI_59&TU#H#(=@4!I@[$>D!V(( M:L+H+,N!1BWS_]0%T_(@K7<4^-VX:D > M_OQ]( 7@]"5K(3L.Y$>#5-X"76HSQ31JR.BMK2D7V43ZD"1[_VLSOS$@U<,> MO3 Z:]L,_!_0^?B)J#4$J9Q$Q M!>(:M@$SZ*,RYM0GQ>P$7"W9J7.%T%N80QT$35?=N)#!BQ$53[<0:=A]=\99-B9URE-)%D088>9&, %) M@!@3NL"%[!5_>C9YA'<$K1ONR !KG1!3E:X'8&;TP7$&34(FQ MC8S1"_7P,IXC "S#,C6'3JV!,4/7)_+C1[;!&RM#<_IU5 LYX:UE3/*Q#9_N#P:^8055SIXR"^3<'4"6FQCES$72NQ$ -_^)^;#@! M,&42NN(J:5DIT?%"@1>9+->53&F.-NF9,Y$ .Q0_[&!X5/@@D@1C+&=EUQ%V ME;2*JA=L$X8IIC,G)1F9#LH8< @;]-"94M<450=W5&=DV/:98*B+.1-H//.@ M#L1RE+220B8TSP$M?M4RY#%[S&(R#9-*.60\DW.<<6EJ+R, -Q!8VC."1;(# MAH,;Y;$#_W4C$$AEY]B*ID*$")-'IR(JS[,%UB:8%*)R#_ <$Z #RZ91.45; MBU&9AKA0"] CA*$#^/9Y"P5C/[4%R+95S!9<@S< # !]4^9>%G)=3/44<\IB MD?D@/@..L+$@K@6F^Y)08A>5$]>?!Y5N[__F4$945 K"I\A%9"?:0!.D& U@ M:70Q3EH!@HLY/P_&GD"25BG'J(A81&83)SZ6;P*J M;KH( 435)R[!#AM0==QX'4%Q*3=!I;_6H.I&(7 H%A, =\RUA#6QBR5W!)N0 MKCRC!1N0 &46?][J&1B012HFJ9 $IJ2727EF --"@W8!B1 F-WSD(PX1:B=A M'YBVB2I38K)',DLF&CLR")S@>LN72-]$,$)6D?J"A2VW&2%O_0(Z6RB] >!:;<7=@N&*Z6(U:]T7AZ'@818!V0F/RA9K$ M.9@2P@"3P9H2)"$PQ@^ Z@N]L$GQ=SK6E@ 0\%;&,FUQ.JX_L0"]0%6^L""A MR2\S&6SSVF/-2E ]<4CE(3-W!$TOFIW[A9T,86&F,@CYTWL=J#(W %UG(3IJ M\4(*8 ^#0!# D"$ $"FE@$6%D8N<:O*(624%HZY]#@\%Q@!,Q:)&R3D2)1- MQ7J*)A3T8!T *GY[UTMCQI)?V@_FJ26YE$)]L@4Q\87LUQ0)H$$*&G5E)H;5 MFB>6-+S#*YS\X*T!H 71P0Y=>'B* 0&]%6$ , _I%[-T!U$;F(.I6)^:__( M7@L1@] +5QJU/)@3TK>79"ES<]DHS^DJZKDLEL)! ""QLCIB?259>[47OX<_ M='&#&XA"+O%(E&<3S156"KS ._53?DA SHB.#G0$,IS" M6=K#'/7#$W#"$R!NK.%Y4[MB1\!%_Y46%%&D$R"@GYDIX,@0SV> 3_A0QPHY MU+1109S"\0#$*HS"QZF_NP&"WG([<&0JN$)*?YL:-=A8A20@IWHXPB(@64$( M-U <@<% ^_8S=]>&XF=!LJ&VHBE!0$$85_DG9/_$#N[6IZ[5-Y@43/W:MVND M,4$R86/AN=R4?5 5)WZWDPOZ67"(,BR+=1)Z(5M0H;19 "&\$O;0G,0&?);5Y8@#Q -%;4H*^U(R!J!CXP [>T9E,!4P0U0 M M< %5)"6EU2--9I$FI&/=$CKMD88UL6>ETRDDI-;&DD4B%*P'U1R*80^_.BBK M@APF&B$!D&-%8L!K^!-'I5MG@Y0V__**I(A(]#1[$+;'#B.J]%M[SAS-5F+- M^.33W*D7S#<(3=S$A,&8 .";C6UX$;6UXI1;+@ _D(8^N(<8]=4"\!<('539$56.K %%[ )@R!NM3I>X'0C)I,OLSEY MH&%*0U&D6246P?O-+39LZ#VO6J#>ZSUL6]!H#-JG&_P232NGJS,904%=*$TQ MB5PU*WL:G"JX88(E8)0W! DKFMT2:2$;@$M/*T/,<#QBTDS:'B8/T.4GG^)! MQA'%^SK;'@X417+<6D8NNYU.V2>_*H0!9+V3H'5)6L!IY=U_>3:-X)=EK"43 M-VY;.JQP.?_G1N)-%DJ5U,'$*7T;A(^]>2TA-A)H+G#76HGG7I(A&:PE??0X M>+FH22P1)XQ-FS$1%)6LN#QG55ZS*CD:E^0TE\42@A]Y,*]S,/*!6#)G:GUI M)OC4CP,4"#@:+)PP",8 2HST&D1UI*/Y;>9JA\,I9#$K218" #U+4 D8%?E% MOPOCF% +;,**DCQ9),&*)W37W0JH207 6@V 9$A$*JSD"XVN9_<89/Z2.[ $ M)#RRVFRS&83>IX#L?<<[A5(G24Q2Q1(<(>B2?435Q(\-39 :X/LCJUB"M[DD M*\T^/I'X)?[X3#28SV6"V&(Y> J3QY^A2WZA.?\X;_F@>U:00B^T1VY9, G MFBECF!,,U6[3R% YD64;?%U+..,# !H-#^L%(Y.A>2?]S#8>#V03YXW2FZN_-XZ02 Y+; TKT^%E,^859WXUW7V4QP23[3K#D.-^K M,C^XHE^) A?(?ALQO<1N):H63"2!%AT-_^YZ.>H5'Q8LUQ+ U>R^%^M? @6T MTEM "#5*>FG@V=$8<;H_>EB=8@Z"]K=3:%: M7KH%\4-A)Z&@9E90J'\WS>XCIN(IA-5 FT7236_[5';WTMA:.V/$0OD4&TPK MWP$[1D+F?!5(Z[,^F'US'SDP3QHJ\*'3T=R/69%JK/;^L182&2 /K,8)2,<7 M(69(<$$(.R 6 %'/%P @PH,0#@@@,(%!A0.6+#PX<.%#@/P6UA1(4:'$#'0 MT^ K@42$&2%:9#CH $$-! DJ($AOH*\#$P)(7-B0(L0!_"X 6 E RP ##0P$ MZ#@19TFF"7B.=YNR(<\$@E_0 P'19%L! &;9 M'J7(3^G#!40'/)@+U^%>NT?E7ER(,2%6F@;G)B2)$ /!H&BUMEVK%K)9 ($ M% LD(/,]RYPS9\X %*:">B]=LHU<&NC PJ"%M2,6;-ER\4Z9Y9',VW0E;U7 MLLM R'*@' +N?9:=N9B\ QI<$[S E&18A283.\6>O60"7_7H89A(M.Y1B086 MX-,2F3': ZS-'M#!$#'4HP6TE&X)P&: NM41FC]L*9,."V^!@^XR8#$ 6M+ MK.\4 M"B ?E##ZBUVN.-M8$<9(P@I'*"2*R2''J@ <2T0S%%A!Y@"8#_Z*#B M3\ $FC+%\I:(\B]LW)<2;?*8J,MR" #N:'%T2Q\C)[2*-OQI?:T4F 'VVHS M;K;,@KRAGO;8ZHZUR+H[@)U+AKM22,TR:\:.*"" $@6DCD 8#2UI ;Q*-""DE503 M"2JGY.RS0[=B*JL]K%S2 )\YI3L4H8BD0HP\66\B[R9;;\W( 'S4%"I2C>S4 MIYR!# MK3EZHLR,F#*3.].R'8#*[P+^! -0NH02:"&>_PGRY3>>?O_U5]\6)M A/UTJ MM5,Z?M)+*S\;5W-I H0GQ$X+!B\$()ZII/)TTD+-\WA%$R/"1P?*%-@0O.DB M(DHB?ABH<*#1C(5)-9?0 J"_BFY"L<1"502ZI "L:LY%2N%D>2$,MLJ11XA1 M0\L[9&>C\K+.:,N@QVO;6HE#F(S=L*7>?-FA-LZ %++9T.KA"EJ!FGM; 7N: M$Z[=V;K]C N07&H3)[BP6RB>_(8]]EBM-NT.@ 022HH!N<(;X*>UF.2Z7/V^ M.BFOR G"3U (CC#PZ #M#7FA!@@]:H+!'].3O[_M'-UFK)2V2FC0L&D5];4,+'6OZQRF9I7JXT 1=J25? M:/J^-)3/DIE\T0@:)/O+/L->@ Q<.^ Q!>9O^ZQS%6C)S*NO!@U;MJ*KDW@& M9( ) *I8!^Q0 H^U.*&4SH#AH CK)B& @]X#TA&1VC&&'#C#0 MD*F8)TX&, \)^Q.A_]1K58SKQ4"\UY*#O?!- [#/:9SD&@8Y)UP+R@\&3%B7 MNI2G/PIA$N$"Q94=X:QP,&'24 ;(,L@][T@ZHER&B,6_8IQM.-TJ$H86U!ON MC7&,V#K D@1U%BD-)WM3.AN1ZL$V#6A 7(SQDG?J" #VN=&/9V+.9-KD)I3_ M6*2 ,1E6$B7#I;0(D6>@FI3D!(6:AR4/ !@P"14))#FVI1$F8F/0!;0P 0PD MH '\(0H*CZ+*DU@'A?;:R0)HHIK2,#" CMN)Y.*'(1ZZ1#64\5("4/(A5CVD MB2VA7%E:PA60<(697P/)W%I2&BT\;B<.5)H"1[6I)A'K-?JCC1>]]:1S+6_3E ]] ;]ZV(TSW)<0&'9#]#'"' MK!U,=(,6M" 322[9P!'E0R M@.]:' +42O0TNI[I0T>1?X M'>^,-X@M'$&8S ,,YOZSS":!1SPW]=3"R"4H[_%4_R8L:4^#,!E3T?5D<#9B MBTPHHP%[+(@T>RSM$S@;TE#" .:L@6>[LA4/V6)*7\%%J&=#@(" <#<+,263M8Q?C::W6O$ M%A1VQ,,N0H-E1=C!H">UKCI_L9RR:[12U M1AEZLFB__: 65O6F0P7@(SM-"X>4V#4 8&9*W;K>V4+3&N?,3ZE(Q9&:HM5. M+>FS;&.E$GS=&!KGM+,Y;?]K$,I,ZXL,Y#6.L_'BE3C1.:/MZ64EX0A":6>6 MKCHM,N_AG XZDI2':/ F!13C![G;G,6A!+82DP+Y.G&(4 MIV4@XNH.@TIS %WP[+4)&P!Z0 J &N;N9QW<43M9O*\)Z&O(!"/(!9FBP0,C MAK+5@UA06L*.+6C!RKS3PB"P+$I1/AE<@^!38"0[I^<-KD6Z^2F.LC4US008 M;9JY ;80"Q2S^F;.NYRCG!4PB.OUL4K-\E;WSD7&Q:YD!^VP3#O>2INP"N 2 M,R%(-8E;J H6&N)U6'EFK8%QN%X(D<03?2V*4.K7D(0'9ASS;:S(^AR?!>$'*BC#^!' Z;I"RT4%G4 =#(F5+&HTML M&K2[]!2 B-%D8IY'D_]K5_[YVMF= 'EQXEX7@ M6:6T[2\0@N!$WCEQ";WW/>^!N)*BK23.0,11$,;J6V0?1Q_#4D:Q'():II7D M$I2#I2-9%\]5\N,P'6I@"W@13*Z:8IY@=7)QY8G5Q"\R6YKB)UJ]O "A4(]C M&2:N4ROW%%GF2@\MR!YP#U$0._"1-(\U1-P7HV2Q-'"Z\:CH= LJC6%,,DP, M-EN!FLYT]G^D+';Q#YR+_GZ0=F!P +25T>N[GCS%"(,' (@E0PXHC&!U;$8^B4 EK6Q!*U()>*)$'>)38 M0H@$H#DILI<]G @%P;C4\J5I.JSN*A-E^;,_6C2 LQK9B#=WL:BV8L+]H;OL M<3BQ JO_>#*.M_HO :C"!B$H&0R9!T H2G(02F(::QDM"8N(YD,:OVF "2 - MN&$)#8 '3@=^=@U$&.'><-#171 ".F%+;BC%VL:#:"RZBO PSB"!#2+%I . MGR.LW=FY(W@E!$.]A4"H3?"P4CN=FQC'V>(@++-@AYA3/ .\BP8XB 0X B(KI;L8/DNAP%B"H%/1 M@-B;P$FY+D1:(P;!@%[0 79@AXML &=C,V!$#E\$**MQ3?;SHQVPJ/21#7BK M&KP1.(#KR7AKPF1YSB'O5 )B^9GIC I%."%0JL M".FLBP* -9XXD:6[H0>H-NY!N9SM=: M2H7 B]#QL? H -U+LB'RM+"00^PL$.PTD?NLC@9H*H4BSIY;B@,;0N:J2.$* M%GZ0BP:H-@S @('@Q?3+PK/Q#+!*CO]B++M J$+=,+]ES$7^^2\F#$I ^R^R MLY+X.RS>"\*X4 B$NJRFB;CLTC] \3R^=,#RHXD$ M\-%Y- FC.$6&.*56&3V>&"9K- U*U !+Z4"EH*+K$- Y,0!S0XP&Z)J6N(!5 MZABZH)4#F0I:X8E7(=.E-(#\4S5)(QUI"X!T6[>0V 1^6(D!&,TMP(?27(!- M4(!P.M'-:,UD7$(_L@U=E$U3(<9U"3C85!8.-<:K@4*W:H<=F+QXF1?=V4X% MLQ:.BPQIV3C:028,0!TCFA.J*$"I8$SNG ^7 ;8#M*.?:@E.0T2H*#HAIN #_&!N;E7#5&UO(2B&B%2&F6$V((W@,[_"%#1#"B1@/_M 9[)R3 MFUB 95/H1G7GRBG NM$IWB>'J$Y@MA*@BB )PL RG*I'W%"V'2C..K0LVE- MSR#7EH63%K*J[>Q'B1"VFZC9/5( Z1I/DU 0:EFC0R4( M086 +0B J]"!EOL,*02\=H&_L6VTLYU)L[6-=_DMO%H6L7W;%R7;_VU9QMH, MDG8PAN; $6K2&0S2B)TI(&GD#2A"%9.KD29QBVG2 9VP" "YH3R4*<"9RP5X MLG63+J0XBKK@" )4D<0 MHRDB[ X @HZH'9J5CE,3UE%1!_CT@= S8MI$';H M4A=*2&G]O10!Q_YX'EJBOPRJOP$7#/ MEF0;D-" H4A/Q, MG&B!H*"6YT"+I*HDG-F4B%T0=J#?ESLB8#-:$*% BZAD ML_@MFZ%$@N# 3VG_%<@ZX6D;5P/P&8BHY.!PU6D+'=VXS0%WBNVOCT"E^!B"0O5@ VPY'K8 M@)-4D"SL/O@*6ZI! "\<*_ABEVALCO1938+5Y6TIRO.#/\$CA!NH0FQ!662B MXI]53^PH -4!(J99+(TSW,9HX99$)G;8 *,8CV]\B@_I5I8I(O3L!8N^075; M*BT.H5Z0003&CM=Q"F4S$:.3ZAPA,.XRPMG1@0009' $')1@F8GL')H:+>A; M$"UXJ:+S5@CQ7 M.O;K (M)+G7SA:MCQR*Z9NX81;$V1#]< !VX@-*<_X!> M8.$?0=O)7L8ECMO9((1!P)\%^;?SBUL_RT+M!;QVT#MYD(<,V %[8(\YLA^# MZQX)G@^%&+.6*0K!.1:?MEJK5<.6;"=%D:&+C,Q#(2**;2&>-0^5W((+0)G2 ML(?RW5@_":Y^#NRSGF"N1A&]5@BM/(+1]"T@@E@(]B74XIRH;0&TSEQ-MM*F M.P*+"6\@$A\E^4%(6Y"6,J54VL&72^]>P( 60![,8HEP;@YY*4B, R3J.2, M:JBTT((*F(IQ) O.\0T[0R,)K[,)CW ZH[/>F(?AO9 (GW ,ES,+K_ ,Q_ * M8@PM,:?\8 >9&!WM((T.]+QQ&8'*]L7?RFR@0'R*R_RC_*3SS3"HD'52OJI MA#L@?10E':!R(.>731@$2Q:6.L*?!W:J; $7Z,JNS-2"+1#R?B$8';"RV<*9 MS;N0&#OL;GKQM/CES\SQM*HL)RKT1G?T0)DC_-DG)7KT2@>M%+\62;$&G MS6:-YRB@Z[MJ;"[FU MS6/M%Q>;L-- S"2,D&CF!)+F3X+SM"!=WG#G?C;$S1XW0:$@-Y8S,T.@C?NE M'F*)3HJ:8*]T3D^<:*?;H#\WQ$"A]*@Z]^M3-P0"]MMN=&.I.<.Y;=1()MNI M=/E.(&GA$F/AXT#YXD 9E?-(R^(W_=HH'>'LO'-W@/S%ZX+\:>?X[%9%7^%35^'W'&$::%D#9 M$)=_&,5"(*B;'/"1"4I_#@CC$L=3='ROGG^W>:Y)( BC:F"_-%(I]I?7OH=Y MC23RXNBQ^.RB]\/M][*@H(SWI8K'/D=7>8X=>G_7BHQ-/MH)Y[98$AMA&L*! +^299590'@( #L! end XML 14 R1.htm IDEA: XBRL DOCUMENT v3.23.1
Cover - shares
3 Months Ended
Mar. 31, 2023
May 02, 2023
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Mar. 31, 2023  
Document Transition Report false  
Commission File Number 000-10436  
Entity Registrant Name L.B. Foster Company  
Entity Incorporation, State or Country Code PA  
Entity Tax Identification Number 25-1324733  
Entity Address, Street Name 415 Holiday Drive  
Entity Address, Suite Suite 100  
Entity Address, City Pittsburgh  
Entity Address, State PA  
Entity Address, Postal Zip Code 15220  
City Area Code 412  
Local Phone Number 928-3400  
Title of 12(b) Security Common Stock, par value $0.01  
Trading Symbol FSTR  
Security Exchange Name NASDAQ  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Accelerated Filer  
Entity Small Business true  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding (in shares)   11,085,149
Amendment Flag false  
Document Fiscal Year Focus 2023  
Document Fiscal Period Focus Q1  
Entity Central Index Key 0000352825  
Current Fiscal Year End Date --12-31  
XML 15 R2.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 2,639 $ 2,882
Accounts receivable - net (Note 5) 54,904 82,455
Contract assets - net (Note 3) 31,207 33,613
Inventories - net (Note 6) 84,594 75,721
Other current assets 11,844 11,061
Total current assets 185,188 205,732
Property, plant, and equipment - net 78,960 85,344
Operating lease right-of-use assets - net 16,513 17,291
Other assets:    
Goodwill (Note 4) 30,863 30,733
Other intangibles - net (Note 4) 22,549 23,831
Deferred tax assets (Note 9) 0 24
Other assets 2,305 2,355
TOTAL ASSETS 336,378 365,310
Current liabilities:    
Accounts payable 48,553 48,782
Deferred revenue 14,556 19,452
Accrued payroll and employee benefits 4,176 10,558
Current portion of accrued settlement (Note 13) 8,000 8,000
Current maturities of long-term debt (Note 7) 117 127
Other accrued liabilities 13,100 16,192
Total current liabilities 88,502 103,111
Long-term debt (Note 7) 79,979 91,752
Deferred tax liabilities (Note 9) 1,753 3,109
Long-term portion of accrued settlement (Note 13) 8,000 8,000
Long-term operating lease liabilities 13,416 14,163
Other long-term liabilities 7,714 7,577
Stockholders’ equity:    
Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at March 31, 2023 and December 31, 2022, 11,115,779; shares outstanding at March 31, 2023 and December 31, 2022, 10,809,711 and 10,776,827, respectively 111 111
Paid-in capital 40,951 41,303
Retained earnings 121,017 123,169
Treasury stock - at cost, 306,068 and 338,952 common stock shares at March 31, 2023 and December 31, 2022, respectively (5,174) (6,240)
Accumulated other comprehensive loss (20,296) (21,165)
Total L.B. Foster Company stockholders’ equity 136,609 137,178
Noncontrolling interest 405 420
Total stockholders’ equity 137,014 137,598
TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY $ 336,378 $ 365,310
XML 16 R3.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares
Mar. 31, 2023
Dec. 31, 2022
Statement of Financial Position [Abstract]    
Common stock, par value (usd per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 20,000,000 20,000,000
Common stock, shares issued (in shares) 11,115,779 11,115,779
Common stock, shares outstanding (in shares) 10,809,711 10,776,827
Treasury stock shares - at cost, common stock (in shares) 306,068 338,952
XML 17 R4.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Operations - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Total net sales $ 115,488 $ 98,794
Total cost of sales 92,197 82,347
Gross profit 23,291 16,447
Selling and administrative expenses 21,423 17,298
Amortization expense 1,365 1,436
Operating profit (loss) 503 (2,287)
Interest expense - net 1,388 370
Other expense (income) - net 1,827 (563)
Loss before income taxes (2,712) (2,094)
Income tax benefit (541) (508)
Net loss (2,171) (1,586)
Net loss attributable to noncontrolling interest (19) (20)
Net loss attributable to L.B. Foster Company $ (2,152) $ (1,566)
Basic loss per common share (usd per share) $ (0.20) $ (0.15)
Diluted loss per common share (usd per share) $ (0.20) $ (0.15)
Sales of goods    
Total net sales $ 98,538 $ 84,421
Total cost of sales 78,065 69,845
Sales of services    
Total net sales 16,950 14,373
Total cost of sales $ 14,132 $ 12,502
XML 18 R5.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Comprehensive Loss - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Statement of Comprehensive Income [Abstract]    
Net loss $ (2,171) $ (1,586)
Other comprehensive income (loss), net of tax:    
Foreign currency translation adjustment 1,247 (880)
Unrealized (loss) gain on cash flow hedges, net of tax benefit of $0 and $188, respectively (418) 551
Cash flow hedges reclassified to earnings, net of tax expense of $0 and $66, respectively 0 93
Reclassification of pension liability adjustments to earnings, net of tax expense of $2 and $16, respectively* [1] 40 49
Total comprehensive loss (1,302) (1,773)
Less comprehensive (loss) income attributable to noncontrolling interest:    
Net loss attributable to noncontrolling interest (19) (20)
Foreign currency translation adjustment 4 85
Amounts attributable to noncontrolling interest (15) 65
Comprehensive loss attributable to L.B. Foster Company $ (1,287) $ (1,838)
[1] Reclassifications out of “Accumulated other comprehensive loss” for pension obligations are charged to “Selling and administrative expenses” within the Condensed Consolidated Statements of Operations.
XML 19 R6.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Comprehensive Loss (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Statement of Comprehensive Income [Abstract]    
Unrealized gain (loss) on cash flow hedge, tax $ 0 $ 188
Cash flow hedges reclassified to earnings, tax 0 66
Reclassification of pension liability adjustments to earnings, tax $ 2 $ 16
XML 20 R7.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
CASH FLOWS FROM OPERATING ACTIVITIES:    
Net loss $ (2,171) $ (1,586)
Adjustments to reconcile net loss to cash provided by (used in) operating activities:    
Deferred income taxes (1,233) (574)
Depreciation 2,505 1,938
Amortization 1,365 1,436
Equity in income of nonconsolidated investments (17) (87)
(Gain) loss on sales and disposals of property, plant, and equipment (14) 23
Stock-based compensation 884 258
Loss on asset divestitures 2,033 0
Change in operating assets and liabilities:    
Accounts receivable 26,239 (4,556)
Contract assets (860) 1,116
Inventories (15,564) (4,781)
Other current assets (791) (4,648)
Other noncurrent assets (1,439) 818
Accounts payable 4,921 4,680
Deferred revenue (707) 5,907
Accrued payroll and employee benefits (6,386) (4,181)
Other current liabilities (2,981) (2,377)
Other long-term liabilities 1,148 (1,022)
Net cash provided by (used in) operating activities 6,932 (7,636)
CASH FLOWS FROM INVESTING ACTIVITIES:    
Proceeds from the sale of property, plant, and equipment 16 30
Capital expenditures on property, plant, and equipment (699) (1,764)
Proceeds from business dispositions 5,344 1,195
Net cash provided by (used in) investing activities 4,661 (539)
CASH FLOWS FROM FINANCING ACTIVITIES:    
Repayments of debt (55,133) (30,892)
Proceeds from debt 43,086 35,301
Treasury stock acquisitions (309) (397)
Investment of noncontrolling interest 334 0
Net cash (used in) provided by financing activities (12,022) 4,012
Effect of exchange rate changes on cash and cash equivalents 186 30
Net decrease in cash and cash equivalents (243) (4,133)
Cash and cash equivalents at beginning of period 2,882 10,372
Cash and cash equivalents at end of period 2,639 6,239
Supplemental disclosure of cash flow information:    
Interest paid 1,425 369
Income taxes received $ (1,564) $ (44)
XML 21 R8.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Stockholders' Equity - USD ($)
$ in Thousands
Total
Common Stock
Paid-in Capital
Retained Earnings
Treasury Stock
Accumulated Other Comprehensive Loss
Noncontrolling Interest
Beginning balance at Dec. 31, 2021 $ 183,610 $ 111 $ 43,272 $ 168,733 $ (10,179) $ (18,845) $ 518
Increase (Decrease) in Stockholders' Equity              
Net loss (1,586)     (1,566)     (20)
Other comprehensive income, net of tax:              
Pension liability adjustment 49         49  
Foreign currency translation adjustment (880)         (965) 85
Unrealized derivative gain (loss) on cash flow hedges 551         551  
Cash flow hedges reclassified to earnings 93         93  
Issuance of common shares, net of share withheld for taxes (398)   (1,377)   979    
Stock-based compensation 258   258        
Ending balance at Mar. 31, 2022 181,697 111 42,153 167,167 (9,200) (19,117) 583
Beginning balance at Dec. 31, 2022 137,598 111 41,303 123,169 (6,240) (21,165) 420
Increase (Decrease) in Stockholders' Equity              
Net loss (2,171)     (2,152)     (19)
Other comprehensive income, net of tax:              
Pension liability adjustment 40         40  
Foreign currency translation adjustment 1,251         1,247 4
Unrealized derivative gain (loss) on cash flow hedges (418)         (418)  
Cash flow hedges reclassified to earnings 0            
Issuance of common shares, net of share withheld for taxes (170)   (1,236)   1,066    
Stock-based compensation 884   884        
Ending balance at Mar. 31, 2023 $ 137,014 $ 111 $ 40,951 $ 121,017 $ (5,174) $ (20,296) $ 405
XML 22 R9.htm IDEA: XBRL DOCUMENT v3.23.1
Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) - shares
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Statement of Stockholders' Equity [Abstract]    
Common shares issues net of shares withheld (in shares) 32,884 34,440
XML 23 R10.htm IDEA: XBRL DOCUMENT v3.23.1
Financial Statements
3 Months Ended
Mar. 31, 2023
Accounting Policies [Abstract]  
Financial Statements Financial StatementsBasis of PresentationThe accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States (“GAAP”) for interim financial information and with the instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. The year-end consolidated balance sheet data was derived from audited financial statements, but does not include all disclosures required by GAAP. In the opinion of management, all estimates and adjustments (consisting of normal recurring accruals) considered necessary for a fair presentation have been included. Operating results for the three months ended March 31, 2023 are not necessarily indicative of the results that may be expected for the year ending December 31, 2023. This Quarterly Report on Form 10-Q should be read in conjunction with the consolidated financial statements and footnotes thereto included in L.B. Foster Company’s Annual Report on Form 10-K for the year ended December 31, 2022. In this Quarterly Report on Form 10-Q, references to “we,” “us,” “our,” and the “Company” refer collectively to L.B. Foster Company and its consolidated subsidiaries.
XML 24 R11.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments
3 Months Ended
Mar. 31, 2023
Segment Reporting [Abstract]  
Business Segments Business Segments
The Company is a global technology solutions provider of engineered, manufactured products and services that builds and supports infrastructure. The Company’s innovative engineering and product development solutions address the safety, reliability, and performance needs of its customers’ most challenging requirements. The Company maintains locations in North America, South America, Europe, and Asia. The Company’s segments represent components of the Company (a) that engage in activities from which revenue is generated and expenses are incurred, (b) whose operating results are regularly reviewed by the Chief Operating Decision Maker, who uses such information to make decisions about resources to be allocated to the segments, and (c) for which discrete financial information is available. Operating segments are evaluated on their segment profit contribution to the Company’s consolidated results. Other income and expenses, interest, income taxes, and certain other items are managed on a consolidated basis. The Company’s segment accounting policies are described in Note 2 Business Segments of the Notes to the Company’s Consolidated Financial Statements contained in its Annual Report on Form 10-K for the year ended December 31, 2022.

The operating results of the Company's reportable segments were as follows for the periods presented:
Three Months Ended
March 31, 2023
Three Months Ended
March 31, 2022
Net SalesSegment Operating Profit (Loss)Net SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$64,384 $2,388 $63,710 $1,039 
Precast Concrete Products24,288 (348)15,010 (791)
Steel Products and Measurement26,816 (8)20,074 (2,148)
Total$115,488 $2,032 $98,794 $(1,900)

Segment profit (loss) from operations, as shown above, includes allocated corporate operating expenses. Operating expenses related to corporate headquarter functions that directly support the segment activity are allocated based on segment headcount, revenue contribution, or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments.

A reconciliation of reportable segment net profit (loss) to the Company’s consolidated total for the periods presented:
Three Months Ended
March 31,
20232022
Operating profit (loss) for reportable segments$2,032 $(1,900)
Interest expense - net(1,388)(370)
Other (expense) income - net(1,827)563 
Unallocated corporate expenses and other unallocated charges(1,529)(387)
Loss before income taxes$(2,712)$(2,094)
The following table illustrates assets of the Company by reportable segment for the periods presented:
March 31,
2023
December 31,
2022
Rail, Technologies, and Services$163,001 $172,111 
Precast Concrete Products104,581 108,598 
Steel Products and Measurement38,236 54,516 
Unallocated corporate assets30,560 30,085 
Total$336,378 $365,310 

On March 30, 2023, the Company sold substantially all the operating assets of its Chemtec Energy Services LLC business (“Chemtec”) for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,033 loss on sale, recorded in “Other expense (income) - net.” The Chemtec business was reported in the Coatings and Measurement business unit within the Steel Products and Measurement segment.
XML 25 R12.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue
3 Months Ended
Mar. 31, 2023
Revenue from Contract with Customer [Abstract]  
Revenue Revenue
The following table summarizes the Company’s net sales by major product and service category for the periods presented:
Three Months Ended
March 31,
20232022
Rail Products and Global Friction Management$56,048 $51,651 
Technology Services and Solutions8,336 12,059 
Rail, Technologies, and Services64,384 63,710 
Precast Concrete Buildings10,886 9,970 
Other Precast Concrete Products13,402 5,040 
Precast Concrete Products24,288 15,010 
Fabricated Steel Products10,517 12,604 
Coatings and Measurement16,299 7,470 
Steel Products and Measurement26,816 20,074 
Total net sales$115,488 $98,794 

The majority of the Company’s revenue is from products transferred and services rendered to customers at a point in time. The Company recognizes revenue at the point in time at which the customer obtains control of the product or service, which is generally when the product title passes to the customer upon shipment or the service has been rendered to the customer. In limited cases, title does not transfer and revenue is not recognized until the customer has received the products at a designated physical location.

Net sales by the timing of the transfer of goods and services was as follows for the periods presented:
Three Months Ended March 31, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$53,834 $13,402 $15,726 $82,962 
Over time10,550 10,886 11,090 32,526 
Total net sales$64,384 $24,288 $26,816 $115,488 
Three Months Ended March 31, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$49,166 $4,263 $15,062 $68,491 
Over time14,544 10,747 5,012 30,303 
Total net sales$63,710 $15,010 $20,074 $98,794 

The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Revenue under long-term agreements is generally recognized using an input measure based upon the proportion of actual costs incurred to estimated total project costs or an input measure based upon actual labor costs as a percentage of estimated total labor costs, depending
upon which measure the Company believes best depicts its performance to date under the terms of the contract. A certain portion of the Company’s revenue recognized over time under these long-term agreements is recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements.

Revenue recognized over time was as follows for the periods presented:
Three Months Ended March 31,Percentage of Total Net Sales
Three Months Ended March 31,
2023202220232022
Over time input method$16,211 $19,322 14.0 %19.6 %
Over time output method16,315 10,981 14.1 11.1 
Total over time sales$32,526 $30,303 28.2 %30.7 %

The timing of revenue recognition, billings, and cash collections results in billed receivables, costs in excess of billings (included in “Contract assets”), and billings in excess of costs (contract liabilities), included in “Deferred revenue” within the Condensed Consolidated Balance Sheets.

The following table sets forth the Company's contract assets:
Contract Assets
Balance as of December 31, 2022$33,613 
Net additions to contract assets1,290 
Transfers from contract asset balance to accounts receivable (3,696)
Balance as of March 31, 2023$31,207 

The following table sets forth the Company's contract liabilities:
Contract Liabilities
Balance as of December 31, 2022$6,781 
Revenue recognized from contract liabilities(3,443)
Increase in billings in excess of cost, excluding revenue recognized 1,983 
Other adjustments, including business divestiture(2,078)
Balance as of March 31, 2023$3,243 

The Company records provisions related to the allowance for credit losses associated with contract assets. Provisions are recorded based upon a specific review of individual contracts as necessary, and a standard provision over any remaining contract assets pooled together based on similar risk of credit loss. The development of these provisions is based on historical collection trends, accuracy of estimates within contract margin reporting, as well as the expectation that collection patterns and margin reporting will continue to adhere to patterns observed in recent years. These expectations are formed based on trends observed, as well as current and expected future conditions.

As of March 31, 2023, the Company had approximately $259,881 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 8.9% of the March 31, 2023 backlog was related to projects that are anticipated to extend beyond March 31, 2024.
XML 26 R13.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Other Intangible Assets
3 Months Ended
Mar. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Other Intangible Assets Goodwill and Other Intangible Assets
The following table presents the changes in goodwill balance by reportable segment for the period presented:
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Balance as of December 31, 2022$19,948 $10,785 $— $30,733 
Foreign currency translation impact130 — — 130 
Balance as of March 31, 2023$20,078 $10,785 $— $30,863 
    
The Company performs goodwill impairment tests annually during the fourth quarter, and also performs interim goodwill impairment tests if it is determined that it is more likely than not that the fair value of a reporting unit is less than the carrying amount. Qualitative factors are assessed to determine whether it is more likely than not that the fair value of a reporting unit is less than the carrying amount, which included the impacts of current economic conditions, including but not limited to labor markets, supply chains, and
other inflationary costs. However, these factors can be unpredictable and are subject to change. No interim goodwill impairment test was required as a result of the evaluation of qualitative factors as of March 31, 2023. However, future impairment charges could result if future projections diverge unfavorably from current expectations in the Rail Technologies and Precast Concrete Products reporting units.

As of March 31, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:

March 31, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(23)$
Patents10330 (187)143 
Customer relationships1627,413 (14,965)12,448 
Trademarks and trade names167,957 (4,142)3,815 
Technology1432,253 (26,405)5,848 
Favorable lease6327 (36)291 
$68,307 $(45,758)$22,549 


December 31, 2022
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(16)$11 
Patents10330 (187)143 
Customer relationships1627,184 (14,129)13,055 
Trademarks and trade names167,933 (3,989)3,944 
Technology1432,201 (25,827)6,374 
Favorable lease6327 (23)304 
$68,002 $(44,171)$23,831 
XML 27 R14.htm IDEA: XBRL DOCUMENT v3.23.1
Accounts Receivable
3 Months Ended
Mar. 31, 2023
Accounts Receivable Additional Disclosures [Abstract]  
Accounts Receivable Accounts Receivable
Changes in reserves for uncollectible accounts, which are recorded as part of “Selling and administrative expenses” in the Condensed Consolidated Statements of Operations, were recorded as an expense of $155 and $61 for the three months ended March 31, 2023 and 2022, respectively.

The Company establishes the allowance for credit losses based on historical collection patterns and other subjective conditions as necessary, including current and expected market conditions. Trade receivables are pooled based on age, which groups receivables of similar credit risk together. Management maintains stringent credit review practices and works to maintain positive customer relationships to further mitigate credit risk.

The following table sets forth the Company’s allowance for credit losses:
Allowance for Credit Losses
Balance as of December 31, 2022$813 
Current period provision155 
Write-off against allowance(100)
Balance as of March 31, 2023$868 
XML 28 R15.htm IDEA: XBRL DOCUMENT v3.23.1
Inventory
3 Months Ended
Mar. 31, 2023
Inventory Disclosure [Abstract]  
Inventory Inventory
Inventory is valued at average cost or net realizable value, whichever is lower. The Company’s components of inventory as of March 31, 2023 and December 31, 2022 are summarized in the following table:

March 31,
2023
December 31,
2022
Finished goods$47,754 $41,431 
Work-in-process8,844 9,693 
Raw materials27,996 24,597 
Inventories - net$84,594 $75,721 
XML 29 R16.htm IDEA: XBRL DOCUMENT v3.23.1
Long-term Debt and Related Matters
3 Months Ended
Mar. 31, 2023
Debt Disclosure [Abstract]  
Long-term Debt and Related Matters Long-Term Debt and Related Matters
Long-term debt consisted of the following:
March 31,
2023
December 31,
2022
Revolving credit facility$79,825 $91,567 
Finance leases and financing agreements271 312 
Total80,096 91,879 
Less current maturities(117)(127)
Long-term portion$79,979 $91,752 

On August 13, 2021, the Company, its domestic subsidiaries, and certain of its Canadian and United Kingdom subsidiaries (collectively, the “Borrowers”), entered into the Fourth Amended and Restated Credit Agreement (the “Credit Agreement”) with PNC Bank, N.A., Citizens Bank, N.A., Wells Fargo Bank, National Association, Bank of America, N.A., and BMO Harris Bank, National Association. The Credit Agreement, as amended, modifies the prior revolving credit facility, as amended, on terms more favorable to the Company and extends the maturity from April 30, 2024 to August 13, 2026. The Credit Agreement provides for a five-year, revolving credit facility that permits aggregate borrowings of the Borrowers up to $130,000 (a $15,000 increase over the previous commitment) with a sublimit of the equivalent of $25,000 U.S. dollars that is available to the Canadian and United Kingdom borrowers in the aggregate. The Credit Agreement’s incremental loan feature permits the Company to increase the available commitments under the facility by up to an additional $50,000 subject to the Company’s receipt of increased commitments from existing or new lenders and the satisfaction of certain conditions.

Borrowings under the Credit Agreement as amended, will bear interest at rates based upon either the base rate or SOFR rate plus applicable margins. The Credit Agreement includes two financial covenants: (a) Maximum Gross Leverage Ratio, defined as the Company’s consolidated Indebtedness (as defined in the Credit Agreement) divided by the Company’s consolidated EBITDA, which must not exceed (i) 3.25 to 1.00 for all testing periods other than during an Acquisition Period (as defined in the Credit Agreement), and (ii) 3.50 to 1.00 for all testing periods occurring during an Acquisition Period, and (b) Minimum Consolidated Fixed Charge Coverage Ratio, defined as the Company’s consolidated EBITDA divided by the Company’s Fixed Charges (as defined in the Credit Agreement), which must be more than 1.05 to 1.00.

On August 12, 2022, the Company entered into a second amendment to its Credit Agreement (“Second Amendment”) to obtain approval for the VanHooseCo acquisition (as defined below) and temporarily modify certain financial covenants to accommodate the transaction. The Second Amendment permitted the Company to acquire the operating assets of VanHooseCo and modified the Maximum Gross Leverage Ratio covenant to 3.75 through June 30, 2023 to accommodate the transaction.

As of March 31, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,084.
XML 30 R17.htm IDEA: XBRL DOCUMENT v3.23.1
Earnings Per Common Share
3 Months Ended
Mar. 31, 2023
Earnings Per Share [Abstract]  
Earnings Per Common Share Earnings Per Common Share
(Share amounts in thousands)

The following table sets forth the computation of basic and diluted loss per common share for the periods indicated:
Three Months Ended
March 31,
20232022
Numerator for basic and diluted loss per common share:
Net loss$(2,171)$(1,586)
Denominator:
Weighted average shares outstanding10,792 10,685 
Denominator for basic loss per common share10,792 10,685 
Denominator for diluted loss per common share - adjusted weighted average shares outstanding10,792 10,685 
Basic loss per common share$(0.20)$(0.15)
Diluted loss per common share$(0.20)$(0.15)

There were 101 and 122 anti-dilutive shares for the three months ended March 31, 2023 and 2022, respectively, excluded from the calculation.
XML 31 R18.htm IDEA: XBRL DOCUMENT v3.23.1
Income Taxes
3 Months Ended
Mar. 31, 2023
Income Tax Disclosure [Abstract]  
Income Taxes Income TaxesFor the three months ended March 31, 2023 and 2022, the Company recorded an income tax benefit of $541 and $508, respectively, on pre-tax losses of $2,712 and $2,094, respectively, for an effective income tax rate of 19.9% and 24.3%, respectively. Due to the full valuation allowance on domestic deferred tax assets, the Company's tax provision for the three months ended March 31, 2023 does not reflect any tax benefit for domestic pre-tax losses, and is primarily comprised of taxes on our Canadian and United Kingdom operations. The Company continued to maintain a full valuation allowance against its U.S. deferred tax assets, which is likely to result in significant variability of the effective tax rate in the current year. Changes in pre-tax income projections, combined with the seasonal nature of our businesses, could also impact the effective income tax rate each quarter.
XML 32 R19.htm IDEA: XBRL DOCUMENT v3.23.1
Stock-Based Compensation
3 Months Ended
Mar. 31, 2023
Share-Based Payment Arrangement, Noncash Expense [Abstract]  
Stock-Based Compensation Stock-Based Compensation
The Company recorded stock-based compensation expense of $884 and $258 for the three months ended March 31, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of March 31, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,388. The Company will recognize this unrecognized compensation expense over the upcoming 2.9 years through March 2026.

Shares issued as a result of vested stock-based compensation awards generally will be from previously issued shares that have been reacquired by the Company and held as treasury stock or authorized and previously unissued common stock.

Restricted Stock, Performance Share Units, and Performance-Based Stock Awards
Under the 2022 Equity and Incentive Compensation Plan, successor to the 2006 Omnibus Plan, the Company grants eligible employees restricted stock and performance share units. The forfeitable restricted stock awards granted generally time-vest ratably over a three-year period, unless indicated otherwise by the underlying restricted stock award agreement. Awards of restricted stock are subject to a minimum one-year vesting period, including those granted to non-employee directors. Performance share units are offered annually under separate three-year long-term incentive programs. Performance share units are subject to forfeiture and will be converted into common stock of the Company based upon the Company’s performance relative to performance measures and conversion multiples, as defined in the underlying program. The Company has, on occasion, issued performance share units with longer performance periods as incentivization and retention tools. If the Company’s estimate of the number of performance share units expected to vest changes in a subsequent accounting period, cumulative compensation expense could increase or decrease. The change will be recognized in the current period for the vested shares and would change future expense over the remaining vesting period.

Since 2017, non-employee directors have been permitted to defer receipt of annual stock awards and equity elected to be received in lieu of quarterly cash compensation. If so elected, these deferred stock units will be issued as common stock six months after separation from their service on the Board of Directors. Since 2018, no non-employee directors have elected the option to receive deferred stock units of the Company’s common stock in lieu of director cash compensation.
In February 2023, the Compensation Committee approved the 2023-2025 Long Term Incentive Plan which includes grants of performance share units and restricted stock. The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the three months ended March 31, 2023:
Restricted
Stock
Deferred
Stock Units
Performance-Based Stock
and Share Units
Weighted Average
Grant Date Fair Value
Outstanding as of December 31, 2022174,173 46,268 108,478 $17.77 
Granted139,990 — 367,558 11.64 
Vested(57,329)— — 16.54 
Adjustment for incentive awards expected to vest— — 20,104 15.36 
Outstanding as of March 31, 2023256,834 46,268 496,140 $14.61 
XML 33 R20.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements
3 Months Ended
Mar. 31, 2023
Fair Value Disclosures [Abstract]  
Fair Value Measurements Fair Value Measurements
The Company determines the fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy includes three levels of inputs that may be used to measure fair value as described below:

Level 1: Observable inputs that reflect unadjusted quoted market prices in active markets for identical assets or liabilities.
Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly.
Level 3: Unobservable inputs that are not corroborated by market data.

The classification of a financial asset or liability within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement.

Fair Value Measurements at Reporting DateFair Value Measurements at Reporting Date
March 31,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $— $— $17 $17 $— $— 
Interest rate swaps1,511 — 1,511 — 1,930 — 1,930 — 
Total assets$1,528 $17 $1,511 $— $1,947 $17 $1,930 $— 

For the three months ended March 31, 2023 and 2022, the Company recognized interest income of $245 and interest expense of $97, respectively, from interest rate swaps.
XML 34 R21.htm IDEA: XBRL DOCUMENT v3.23.1
Retirement Plans
3 Months Ended
Mar. 31, 2023
Employee-related Liabilities [Abstract]  
Retirement Plans Retirement Plans
Retirement Plans
The Company has three retirement plans that cover its hourly and salaried employees in the United States: one defined benefit plan, which is frozen, and two defined contribution plans. Employees are eligible to participate in the appropriate plan based on employment classification. The Company’s contributions to the defined benefit and defined contribution plans are governed by the Employee Retirement Income Security Act of 1974, as amended (“ERISA”) and the Company’s policy and investment guidelines applicable to each respective plan. The Company’s policy is to contribute at least the minimum in accordance with the funding standards of ERISA.

The Company maintains one defined contribution plan for its employees in Canada. In the United Kingdom, the Company maintains two defined contribution plans and a defined benefit plan, which is frozen. These plans are discussed in further detail below.
United States Defined Benefit Plan
Net periodic pension costs for the United States defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$71 $49 
Expected return on plan assets(64)(66)
Recognized net actuarial loss16 18 
Net periodic pension cost$23 $

The Company expects to make total contributions of $400 to its to its United States defined benefit pension plan during 2023.

United Kingdom Defined Benefit Plan
Net periodic pension costs for the United Kingdom defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$55 $45 
Expected return on plan assets(83)(81)
Amortization of prior service costs and transition amount
Recognized net actuarial loss42 
Net periodic pension (income) cost$(19)$12 

United Kingdom regulations require trustees to adopt a prudent approach to funding required contributions to defined benefit pension plans. For the three months ended March 31, 2023, the Company contributed approximately $84 to the plan. The Company anticipates total contributions of approximately $340 to the United Kingdom pension plan during 2023.

Defined Contribution Plans
The Company sponsors five defined contribution plans for hourly and salaried employees across its domestic and international facilities. The following table summarizes the expense associated with the contributions made to these plans for the periods presented:
Three Months Ended
March 31,
20232022
United States$614 $305 
Canada62 61 
United Kingdom261 135 
$937 $501 
XML 35 R22.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingent Liabilities
3 Months Ended
Mar. 31, 2023
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingent Liabilities Commitments and Contingent Liabilities
Product Liability Claims
The Company is subject to product warranty claims that arise in the ordinary course of its business. For certain manufactured products, the Company maintains a product warranty accrual, which is adjusted on a monthly basis as a percentage of cost of sales. In addition, the product warranty accrual is adjusted periodically based on the identification or resolution of known individual product warranty claims.

Union Pacific Railroad (“UPRR”) Concrete Tie Matter
On March 13, 2019, the Company and its subsidiary, CXT Incorporated (“CXT”), entered into a Settlement Agreement (the “Settlement Agreement”) with UPRR to resolve the pending litigation in the matter of Union Pacific Railroad Company v. L.B. Foster Company and CXT Incorporated, Case No. CI 15-564, in the District Court for Douglas County, Nebraska.

Under the Settlement Agreement, the Company and CXT will pay UPRR the aggregate amount of $50,000 without pre-judgment interest, which began with a $2,000 immediate payment, and with the remaining $48,000 paid in installments over a six-year period
commencing on the effective date of the Settlement Agreement through December 2024 pursuant to a Promissory Note. Additionally, commencing in January 2019 and through December 2024, UPRR agreed to purchase and has been purchasing from the Company and its subsidiaries and affiliates, a cumulative total amount of $48,000 of products and services, targeting $8,000 of annual purchases per year beginning March 13, 2019 per letters of intent under the Settlement Agreement. During the third quarter of 2021, in connection with the Company’s divestiture of its Piling Products division, the targeted annual purchases per year have been reduced to $6,000 for 2021 through 2024. The Settlement Agreement also includes a mutual release of all claims and liability regarding or relating to all CXT pre-stressed concrete railroad ties with no admission of liability and dismissal of the litigation with prejudice.

The expected payments under the UPRR Settlement Agreement for the remainder of the year ending December 31, 2023 and thereafter are as follows:
Year Ending December 31,
Remainder of 2023$8,000 
20248,000 
Total$16,000 

Environmental and Legal Proceedings
The Company is subject to national, state, foreign, provincial, and/or local laws and regulations relating to the protection of the environment. The Company’s efforts to comply with environmental regulations may have an adverse effect on its future earnings.

On June 5, 2017, a General Notice Letter was received from the United States Environmental Protection Agency (“EPA”) indicating that the Company may be a potentially responsible party (“PRP”) regarding the Portland Harbor Superfund Site cleanup along with numerous other companies. More than 140 other companies received such a notice. The Company and a predecessor owned and operated a facility near the harbor site for a period prior to 1982. The net present value and undiscounted costs of the selected remedy throughout the harbor site are estimated by the EPA to be approximately $1.1 billion and $1.7 billion, respectively, and the remedial work is expected to take as long as 13 years to complete. These costs may increase given that the remedy will not be initiated or completed for several years. The Company is reviewing the basis for its identification by the EPA and the nature of the historic operations of a Company predecessor near the site. Additionally, the Company executed a PRP agreement which provides for a private allocation process among almost 100 PRPs in a working group whose work is ongoing and involves a process that will ultimately conclude a proposed allocation of liability for cleanup of the site and various sub-areas. The Company does not have any individual risk sharing agreements in place with respect to the site, and was only associated with the site from 1976 to when it purchased the stock of a company whose assets it sold in 1982 and which was dissolved in 1994. On March 26, 2020, the EPA issued a Unilateral Administrative Order to two parties requiring them to perform remedial design work for that portion of the Harbor Superfund Site that includes the area closest to the facility; the Company was not a recipient of this Unilateral Administrative Order. The Company cannot predict the ultimate impact of these proceedings because of the large number of PRPs involved throughout the harbor site, the size and extent of the site, the degree of contamination of various wastes, varying environmental impacts throughout the harbor site, the scarcity of data related to the facility once operated by the Company and a predecessor, potential comparative liability between the allocation parties and regarding non-participants, and the speculative nature of the remediation costs. Based upon information currently available, management does not believe that the Company’s alleged PRP status regarding the Portland Harbor Superfund Site or other compliance with the present environmental protection laws will have a material adverse effect on the financial condition, results of operations, cash flows, competitive position, or capital expenditures of the Company. As more information develops and the allocation process is completed, and given the resolution of factors like those described above, an unfavorable resolution could have a material adverse effect. As of March 31, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,448 and $2,472, respectively.

The Company is also subject to other legal proceedings and claims that arise in the ordinary course of its business. Legal actions are subject to inherent uncertainties, and future events could change management’s assessment of the probability or estimated amount of potential losses from pending or threatened legal actions. Based on available information, it is the opinion of management that the ultimate resolution of pending or threatened legal actions, both individually and in the aggregate, will not result in losses having a material adverse effect on the Company’s financial position or liquidity as of March 31, 2023.

If management believes that, based on available information, it is at least reasonably possible that a material loss (or additional material loss in excess of any accrual) will be incurred in connection with any legal actions, the Company discloses an estimate of the possible loss or range of loss, either individually or in the aggregate, as appropriate, if such an estimate can be made, or discloses that an estimate cannot be made. Based on the Company’s assessment as of March 31, 2023, no such disclosures were considered necessary.
XML 36 R23.htm IDEA: XBRL DOCUMENT v3.23.1
Financial Statements (Policies)
3 Months Ended
Mar. 31, 2023
Accounting Policies [Abstract]  
Basis of Presentation Basis of PresentationThe accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States (“GAAP”) for interim financial information and with the instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. The year-end consolidated balance sheet data was derived from audited financial statements, but does not include all disclosures required by GAAP. In the opinion of management, all estimates and adjustments (consisting of normal recurring accruals) considered necessary for a fair presentation have been included. Operating results for the three months ended March 31, 2023 are not necessarily indicative of the results that may be expected for the year ending December 31, 2023. This Quarterly Report on Form 10-Q should be read in conjunction with the consolidated financial statements and footnotes thereto included in L.B. Foster Company’s Annual Report on Form 10-K for the year ended December 31, 2022. In this Quarterly Report on Form 10-Q, references to “we,” “us,” “our,” and the “Company” refer collectively to L.B. Foster Company and its consolidated subsidiaries.
XML 37 R24.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments (Tables)
3 Months Ended
Mar. 31, 2023
Segment Reporting [Abstract]  
Schedule of Reconciliation of Revenue from Segments to Consolidated
The operating results of the Company's reportable segments were as follows for the periods presented:
Three Months Ended
March 31, 2023
Three Months Ended
March 31, 2022
Net SalesSegment Operating Profit (Loss)Net SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$64,384 $2,388 $63,710 $1,039 
Precast Concrete Products24,288 (348)15,010 (791)
Steel Products and Measurement26,816 (8)20,074 (2,148)
Total$115,488 $2,032 $98,794 $(1,900)
Schedule of Reconciliation of Operating Profit (Loss) from Segments to Consolidated
A reconciliation of reportable segment net profit (loss) to the Company’s consolidated total for the periods presented:
Three Months Ended
March 31,
20232022
Operating profit (loss) for reportable segments$2,032 $(1,900)
Interest expense - net(1,388)(370)
Other (expense) income - net(1,827)563 
Unallocated corporate expenses and other unallocated charges(1,529)(387)
Loss before income taxes$(2,712)$(2,094)
Schedule of Reconciliation of Assets from Segment to Consolidated The following table illustrates assets of the Company by reportable segment for the periods presented:
March 31,
2023
December 31,
2022
Rail, Technologies, and Services$163,001 $172,111 
Precast Concrete Products104,581 108,598 
Steel Products and Measurement38,236 54,516 
Unallocated corporate assets30,560 30,085 
Total$336,378 $365,310 
XML 38 R25.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue (Tables)
3 Months Ended
Mar. 31, 2023
Revenue from Contract with Customer [Abstract]  
Schedule of Revenues by Major Product Line
The following table summarizes the Company’s net sales by major product and service category for the periods presented:
Three Months Ended
March 31,
20232022
Rail Products and Global Friction Management$56,048 $51,651 
Technology Services and Solutions8,336 12,059 
Rail, Technologies, and Services64,384 63,710 
Precast Concrete Buildings10,886 9,970 
Other Precast Concrete Products13,402 5,040 
Precast Concrete Products24,288 15,010 
Fabricated Steel Products10,517 12,604 
Coatings and Measurement16,299 7,470 
Steel Products and Measurement26,816 20,074 
Total net sales$115,488 $98,794 
Schedule of Disaggregation of Revenue
Net sales by the timing of the transfer of goods and services was as follows for the periods presented:
Three Months Ended March 31, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$53,834 $13,402 $15,726 $82,962 
Over time10,550 10,886 11,090 32,526 
Total net sales$64,384 $24,288 $26,816 $115,488 
Three Months Ended March 31, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$49,166 $4,263 $15,062 $68,491 
Over time14,544 10,747 5,012 30,303 
Total net sales$63,710 $15,010 $20,074 $98,794 
Revenue recognized over time was as follows for the periods presented:
Three Months Ended March 31,Percentage of Total Net Sales
Three Months Ended March 31,
2023202220232022
Over time input method$16,211 $19,322 14.0 %19.6 %
Over time output method16,315 10,981 14.1 11.1 
Total over time sales$32,526 $30,303 28.2 %30.7 %
Schedule of Contract with Customer, Contract Asset, Contract Liability
The following table sets forth the Company's contract assets:
Contract Assets
Balance as of December 31, 2022$33,613 
Net additions to contract assets1,290 
Transfers from contract asset balance to accounts receivable (3,696)
Balance as of March 31, 2023$31,207 

The following table sets forth the Company's contract liabilities:
Contract Liabilities
Balance as of December 31, 2022$6,781 
Revenue recognized from contract liabilities(3,443)
Increase in billings in excess of cost, excluding revenue recognized 1,983 
Other adjustments, including business divestiture(2,078)
Balance as of March 31, 2023$3,243 
XML 39 R26.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Other Intangible Assets (Tables)
3 Months Ended
Mar. 31, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of Goodwill The following table presents the changes in goodwill balance by reportable segment for the period presented:
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Balance as of December 31, 2022$19,948 $10,785 $— $30,733 
Foreign currency translation impact130 — — 130 
Balance as of March 31, 2023$20,078 $10,785 $— $30,863 
Schedule of Finite-Lived Intangible Assets
As of March 31, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:

March 31, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(23)$
Patents10330 (187)143 
Customer relationships1627,413 (14,965)12,448 
Trademarks and trade names167,957 (4,142)3,815 
Technology1432,253 (26,405)5,848 
Favorable lease6327 (36)291 
$68,307 $(45,758)$22,549 


December 31, 2022
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Non-compete agreements1$27 $(16)$11 
Patents10330 (187)143 
Customer relationships1627,184 (14,129)13,055 
Trademarks and trade names167,933 (3,989)3,944 
Technology1432,201 (25,827)6,374 
Favorable lease6327 (23)304 
$68,002 $(44,171)$23,831 
XML 40 R27.htm IDEA: XBRL DOCUMENT v3.23.1
Accounts Receivable (Tables)
3 Months Ended
Mar. 31, 2023
Accounts Receivable Additional Disclosures [Abstract]  
Schedule of Accounts Receivable, Allowance for Credit Loss
The following table sets forth the Company’s allowance for credit losses:
Allowance for Credit Losses
Balance as of December 31, 2022$813 
Current period provision155 
Write-off against allowance(100)
Balance as of March 31, 2023$868 
XML 41 R28.htm IDEA: XBRL DOCUMENT v3.23.1
Inventory (Tables)
3 Months Ended
Mar. 31, 2023
Inventory Disclosure [Abstract]  
Schedule of Inventory The Company’s components of inventory as of March 31, 2023 and December 31, 2022 are summarized in the following table:
March 31,
2023
December 31,
2022
Finished goods$47,754 $41,431 
Work-in-process8,844 9,693 
Raw materials27,996 24,597 
Inventories - net$84,594 $75,721 
XML 42 R29.htm IDEA: XBRL DOCUMENT v3.23.1
Long-term Debt and Related Matters (Tables)
3 Months Ended
Mar. 31, 2023
Debt Disclosure [Abstract]  
Schedule of Long-term Debt Instruments
Long-term debt consisted of the following:
March 31,
2023
December 31,
2022
Revolving credit facility$79,825 $91,567 
Finance leases and financing agreements271 312 
Total80,096 91,879 
Less current maturities(117)(127)
Long-term portion$79,979 $91,752 
XML 43 R30.htm IDEA: XBRL DOCUMENT v3.23.1
Earnings Per Common Share (Tables)
3 Months Ended
Mar. 31, 2023
Earnings Per Share [Abstract]  
Schedule of Earnings Per Share, Basic and Diluted
The following table sets forth the computation of basic and diluted loss per common share for the periods indicated:
Three Months Ended
March 31,
20232022
Numerator for basic and diluted loss per common share:
Net loss$(2,171)$(1,586)
Denominator:
Weighted average shares outstanding10,792 10,685 
Denominator for basic loss per common share10,792 10,685 
Denominator for diluted loss per common share - adjusted weighted average shares outstanding10,792 10,685 
Basic loss per common share$(0.20)$(0.15)
Diluted loss per common share$(0.20)$(0.15)
XML 44 R31.htm IDEA: XBRL DOCUMENT v3.23.1
Stock-Based Compensation (Tables)
3 Months Ended
Mar. 31, 2023
Share-Based Payment Arrangement, Noncash Expense [Abstract]  
Schedule of Nonvested Share Activity The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the three months ended March 31, 2023:
Restricted
Stock
Deferred
Stock Units
Performance-Based Stock
and Share Units
Weighted Average
Grant Date Fair Value
Outstanding as of December 31, 2022174,173 46,268 108,478 $17.77 
Granted139,990 — 367,558 11.64 
Vested(57,329)— — 16.54 
Adjustment for incentive awards expected to vest— — 20,104 15.36 
Outstanding as of March 31, 2023256,834 46,268 496,140 $14.61 
XML 45 R32.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements (Tables)
3 Months Ended
Mar. 31, 2023
Fair Value Disclosures [Abstract]  
Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis
Fair Value Measurements at Reporting DateFair Value Measurements at Reporting Date
March 31,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $— $— $17 $17 $— $— 
Interest rate swaps1,511 — 1,511 — 1,930 — 1,930 — 
Total assets$1,528 $17 $1,511 $— $1,947 $17 $1,930 $— 
XML 46 R33.htm IDEA: XBRL DOCUMENT v3.23.1
Retirement Plans (Tables)
3 Months Ended
Mar. 31, 2023
Defined Benefit Plan Disclosure  
Schedule of Costs of Retirement Plans The following table summarizes the expense associated with the contributions made to these plans for the periods presented:
Three Months Ended
March 31,
20232022
United States$614 $305 
Canada62 61 
United Kingdom261 135 
$937 $501 
United States  
Defined Benefit Plan Disclosure  
Schedule of Net Benefit Costs
Net periodic pension costs for the United States defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$71 $49 
Expected return on plan assets(64)(66)
Recognized net actuarial loss16 18 
Net periodic pension cost$23 $
United Kingdom  
Defined Benefit Plan Disclosure  
Schedule of Net Benefit Costs
Net periodic pension costs for the United Kingdom defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:
Three Months Ended
March 31,
20232022
Interest cost$55 $45 
Expected return on plan assets(83)(81)
Amortization of prior service costs and transition amount
Recognized net actuarial loss42 
Net periodic pension (income) cost$(19)$12 
XML 47 R34.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingent Liabilities (Tables)
3 Months Ended
Mar. 31, 2023
Commitments and Contingencies Disclosure [Abstract]  
Schedule Of Future Payments Of Legal Settlements
The expected payments under the UPRR Settlement Agreement for the remainder of the year ending December 31, 2023 and thereafter are as follows:
Year Ending December 31,
Remainder of 2023$8,000 
20248,000 
Total$16,000 
XML 48 R35.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Segment Reporting Information    
Net Sales $ 115,488 $ 98,794
Segment Operating Profit (Loss) 503 (2,287)
Operating Segments    
Segment Reporting Information    
Net Sales 115,488 98,794
Segment Operating Profit (Loss) 2,032 (1,900)
Rail, Technologies, and Services    
Segment Reporting Information    
Net Sales 64,384 63,710
Rail, Technologies, and Services | Operating Segments    
Segment Reporting Information    
Net Sales 64,384 63,710
Segment Operating Profit (Loss) 2,388 1,039
Precast Concrete Products    
Segment Reporting Information    
Net Sales 24,288 15,010
Precast Concrete Products | Operating Segments    
Segment Reporting Information    
Net Sales 24,288 15,010
Segment Operating Profit (Loss) (348) (791)
Steel Products and Measurement    
Segment Reporting Information    
Net Sales 26,816 20,074
Steel Products and Measurement | Operating Segments    
Segment Reporting Information    
Net Sales 26,816 20,074
Segment Operating Profit (Loss) $ (8) $ (2,148)
XML 49 R36.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]    
Operating profit (loss) for reportable segments $ 503 $ (2,287)
Other (expense) income - net (1,827) 563
Loss before income taxes (2,712) (2,094)
Operating Segments    
Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]    
Operating profit (loss) for reportable segments 2,032 (1,900)
Interest expense - net (1,388) (370)
Other (expense) income - net (1,827) 563
Unallocated corporate expenses and other unallocated charges (1,529) (387)
Loss before income taxes $ (2,712) $ (2,094)
XML 50 R37.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Segment Reporting Information    
Assets $ 336,378 $ 365,310
Operating Segments | Rail, Technologies, and Services    
Segment Reporting Information    
Assets 163,001 172,111
Operating Segments | Precast Concrete Products    
Segment Reporting Information    
Assets 104,581 108,598
Operating Segments | Steel Products and Measurement    
Segment Reporting Information    
Assets 38,236 54,516
Unallocated corporate assets    
Segment Reporting Information    
Assets $ 30,560 $ 30,085
XML 51 R38.htm IDEA: XBRL DOCUMENT v3.23.1
Business Segments - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 30, 2023
Mar. 31, 2023
Mar. 31, 2022
Segment Reporting Information      
Proceeds from business dispositions   $ 5,344 $ 1,195
Loss on asset divestitures   $ 2,033 $ 0
Chemtec Energy Services LLC      
Segment Reporting Information      
Proceeds from business dispositions $ 5,344    
Loss on asset divestitures $ 2,033    
XML 52 R39.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Sales by Major Product Line (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Disaggregation of Revenue    
Total net sales $ 115,488 $ 98,794
Rail, Technologies, and Services    
Disaggregation of Revenue    
Total net sales 64,384 63,710
Precast Concrete Products    
Disaggregation of Revenue    
Total net sales 24,288 15,010
Steel Products and Measurement    
Disaggregation of Revenue    
Total net sales 26,816 20,074
Rail Products and Global Friction Management | Rail, Technologies, and Services    
Disaggregation of Revenue    
Total net sales 56,048 51,651
Technology Services and Solutions | Rail, Technologies, and Services    
Disaggregation of Revenue    
Total net sales 8,336 12,059
Precast Concrete Buildings | Precast Concrete Products    
Disaggregation of Revenue    
Total net sales 10,886 9,970
Other Precast Concrete Products | Precast Concrete Products    
Disaggregation of Revenue    
Total net sales 13,402 5,040
Fabricated Steel Products | Steel Products and Measurement    
Disaggregation of Revenue    
Total net sales 10,517 12,604
Coatings and Measurement | Steel Products and Measurement    
Disaggregation of Revenue    
Total net sales $ 16,299 $ 7,470
XML 53 R40.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Timing of Transfer (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Disaggregation of Revenue    
Total net sales $ 115,488 $ 98,794
Point in time    
Disaggregation of Revenue    
Total net sales 82,962 68,491
Over time    
Disaggregation of Revenue    
Total net sales 32,526 30,303
Rail, Technologies, and Services    
Disaggregation of Revenue    
Total net sales 64,384 63,710
Rail, Technologies, and Services | Point in time    
Disaggregation of Revenue    
Total net sales 53,834 49,166
Rail, Technologies, and Services | Over time    
Disaggregation of Revenue    
Total net sales 10,550 14,544
Precast Concrete Products    
Disaggregation of Revenue    
Total net sales 24,288 15,010
Precast Concrete Products | Point in time    
Disaggregation of Revenue    
Total net sales 13,402 4,263
Precast Concrete Products | Over time    
Disaggregation of Revenue    
Total net sales 10,886 10,747
Steel Products and Measurement    
Disaggregation of Revenue    
Total net sales 26,816 20,074
Steel Products and Measurement | Point in time    
Disaggregation of Revenue    
Total net sales 15,726 15,062
Steel Products and Measurement | Over time    
Disaggregation of Revenue    
Total net sales $ 11,090 $ 5,012
XML 54 R41.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Over Time Sales (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Disaggregation of Revenue    
Over time sales, amount $ 32,526 $ 30,303
Over time sales, percentage 28.20% 30.70%
Over time input method    
Disaggregation of Revenue    
Over time sales, amount $ 16,211 $ 19,322
Over time sales, percentage 14.00% 19.60%
Over time output method    
Disaggregation of Revenue    
Over time sales, amount $ 16,315 $ 10,981
Over time sales, percentage 14.10% 11.10%
XML 55 R42.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Revenue from Contract with Customer [Abstract]    
Contract assets $ 31,207 $ 33,613
Balance as of December 31, 2022 3,243 $ 6,781
Contract assets transferred to receivables 3,696  
Increase in billings in excess of cost, excluding revenue recognized 1,983  
Revenue recognized from contract liability $ 3,443  
XML 56 R43.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Contract with Customer (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Contract With Customer Asset After Allowance For Credit Loss Current [Roll Forward]  
Balance as of December 31, 2022 $ 33,613
Net additions to contract assets 1,290
Transfers from contract asset balance to accounts receivable (3,696)
Balance as of March 31, 2023 31,207
Contract With Customer Liability [Roll Forward]  
Balance as of December 31, 2022 6,781
Revenue recognized from contract liabilities (3,443)
Increase in billings in excess of cost, excluding revenue recognized 1,983
Other adjustments, including business divestiture (2,078)
Balance as of March 31, 2023 $ 3,243
XML 57 R44.htm IDEA: XBRL DOCUMENT v3.23.1
Revenue - Remaining Performance Obligation (Details)
$ in Thousands
Mar. 31, 2023
USD ($)
Revenue from Contract with Customer [Abstract]  
Revenue remaining performance obligation $ 259,881
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-04-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction  
Revenue remaining performance obligation (percentage) 8.90%
Revenue, remaining performance obligation, expected timing of satisfaction, period 1 year
XML 58 R45.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Other Intangible Assets - Schedule of Goodwill (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Goodwill  
Goodwill, beginning balance $ 30,733
Foreign currency translation impact 130
Goodwill, ending balance 30,863
Rail, Technologies, and Services  
Goodwill  
Goodwill, beginning balance 19,948
Foreign currency translation impact 130
Goodwill, ending balance 20,078
Precast Concrete Products  
Goodwill  
Goodwill, beginning balance 10,785
Foreign currency translation impact 0
Goodwill, ending balance 10,785
Steel Products and Measurement  
Goodwill  
Goodwill, beginning balance 0
Foreign currency translation impact 0
Goodwill, ending balance $ 0
XML 59 R46.htm IDEA: XBRL DOCUMENT v3.23.1
Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Finite-Lived Intangible Assets    
Gross Carrying Value $ 68,307 $ 68,002
Accumulated Amortization (45,758) (44,171)
Net Carrying Amount 22,549 23,831
Non-compete agreements    
Finite-Lived Intangible Assets    
Gross Carrying Value 27 27
Accumulated Amortization (23) (16)
Net Carrying Amount 4 11
Patents    
Finite-Lived Intangible Assets    
Gross Carrying Value 330 330
Accumulated Amortization (187) (187)
Net Carrying Amount 143 143
Customer relationships    
Finite-Lived Intangible Assets    
Gross Carrying Value 27,413 27,184
Accumulated Amortization (14,965) (14,129)
Net Carrying Amount 12,448 13,055
Trademarks and trade names    
Finite-Lived Intangible Assets    
Gross Carrying Value 7,957 7,933
Accumulated Amortization (4,142) (3,989)
Net Carrying Amount 3,815 3,944
Technology    
Finite-Lived Intangible Assets    
Gross Carrying Value 32,253 32,201
Accumulated Amortization (26,405) (25,827)
Net Carrying Amount 5,848 6,374
Favorable lease    
Finite-Lived Intangible Assets    
Gross Carrying Value 327 327
Accumulated Amortization (36) (23)
Net Carrying Amount $ 291 $ 304
Weighted Average | Non-compete agreements    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 1 year 1 year
Weighted Average | Patents    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 10 years 10 years
Weighted Average | Customer relationships    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 16 years 16 years
Weighted Average | Trademarks and trade names    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 16 years 16 years
Weighted Average | Technology    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 14 years 14 years
Weighted Average | Favorable lease    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years 6 years 6 years
XML 60 R47.htm IDEA: XBRL DOCUMENT v3.23.1
Accounts Receivable - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Financing Receivable, Allowance for Credit Loss [Line Items]    
Reserve for uncollectible accounts, expense $ 155  
Selling, General and Administrative Expenses    
Financing Receivable, Allowance for Credit Loss [Line Items]    
Reserve for uncollectible accounts, expense $ 155 $ 61
XML 61 R48.htm IDEA: XBRL DOCUMENT v3.23.1
Accounts Receivable - Allowance for Credit Losses (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Allowance for Doubtful Accounts  
Allowance for doubtful accounts, beginning balance $ 813
Current period provision 155
Write-off against allowance (100)
Allowance for doubtful accounts, ending balance $ 868
XML 62 R49.htm IDEA: XBRL DOCUMENT v3.23.1
Inventory (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Inventory Disclosure [Abstract]    
Finished goods $ 47,754 $ 41,431
Work-in-process 8,844 9,693
Raw materials 27,996 24,597
Inventories - net $ 84,594 $ 75,721
XML 63 R50.htm IDEA: XBRL DOCUMENT v3.23.1
Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) - USD ($)
$ in Thousands
Mar. 31, 2023
Dec. 31, 2022
Debt Disclosure [Abstract]    
Revolving credit facility $ 79,825 $ 91,567
Finance leases and financing agreements 271 312
Total 80,096 91,879
Less current maturities (117) (127)
Long-term portion $ 79,979 $ 91,752
XML 64 R51.htm IDEA: XBRL DOCUMENT v3.23.1
Long-term Debt and Related Matters - Narrative (Details)
Aug. 13, 2021
USD ($)
Mar. 31, 2023
USD ($)
covenant
Dec. 31, 2022
USD ($)
Aug. 12, 2022
Line of Credit Facility        
Minimum leverage ratio       3.75
Line of credit facility, amount outstanding   $ 79,825,000 $ 91,567,000  
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Fourth Amended And Restated Credit Agreement        
Line of Credit Facility        
Minimum fixed charge coverage ratio 1.05      
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Fourth Amended And Restated Credit Agreement | Debt Instrument, Redemption, Period One        
Line of Credit Facility        
Number of financial covenants | covenant   2    
Minimum leverage ratio 3.25      
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Fourth Amended And Restated Credit Agreement | Debt Instrument, Redemption, Period Two        
Line of Credit Facility        
Minimum leverage ratio 3.5      
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Revolving credit facility        
Line of Credit Facility        
Line of credit facility, amount outstanding   $ 1,084,000    
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Revolving credit facility | Fourth Amended And Restated Credit Agreement        
Line of Credit Facility        
Debt instrument term 5 years      
Line of credit facility, maximum borrowing capacity $ 130,000,000      
Line of credit, accordion feature, lower borrowing capacity 25,000,000      
Line of credit facility, maximum increase in commitments 50,000,000      
PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association | Revolving credit facility | Prior Credit Facility        
Line of Credit Facility        
Line of credit facility increase over previous commitment $ 15,000      
XML 65 R52.htm IDEA: XBRL DOCUMENT v3.23.1
Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Numerator for basic and diluted loss per common share:    
Net loss $ (2,171) $ (1,586)
Denominator:    
Weighted average shares outstanding (in shares) 10,792 10,685
Denominator for basic loss per common share (in shares) 10,792 10,685
Effect of dilutive securities:    
Denominator for diluted loss per common share - adjusted weighted average shares outstanding (in shares) 10,792 10,685
Basic loss per common share (usd per share) $ (0.20) $ (0.15)
Diluted loss per common share (usd per share) $ (0.20) $ (0.15)
Anti-dilutive shares (in shares) 101 122
XML 66 R53.htm IDEA: XBRL DOCUMENT v3.23.1
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Income Tax Disclosure [Abstract]    
Income tax benefit $ (541) $ (508)
Loss before income taxes $ (2,712) $ (2,094)
Effective income tax rate (percent) 19.90% 24.30%
XML 67 R54.htm IDEA: XBRL DOCUMENT v3.23.1
Stock-Based Compensation - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Share-based Compensation Arrangement by Share-based Payment Award    
Stock-based compensation $ 884 $ 258
Expected cost on shares expected to vest $ 7,388  
Recognition period for compensation expense not yet recognized 2 years 10 months 24 days  
Director    
Share-based Compensation Arrangement by Share-based Payment Award    
Deferred receipt period 6 months  
Restricted Stock    
Share-based Compensation Arrangement by Share-based Payment Award    
Stock-based compensation $ 884 258
Restricted Stock | Vesting period one    
Share-based Compensation Arrangement by Share-based Payment Award    
Vesting period 3 years  
Restricted Stock | Vesting period two | Minimum    
Share-based Compensation Arrangement by Share-based Payment Award    
Vesting period 1 year  
Performance-Based Stock and Share Units    
Share-based Compensation Arrangement by Share-based Payment Award    
Stock-based compensation $ 884 $ 258
Vesting period 3 years  
XML 68 R55.htm IDEA: XBRL DOCUMENT v3.23.1
Stock-Based Compensation - Restricted Stock and Performance Share Units (Details)
3 Months Ended
Mar. 31, 2023
$ / shares
shares
Weighted Average Grant Date Fair Value  
Outstanding, Beginning balance (usd per share) | $ / shares $ 17.77
Granted (usd per share) | $ / shares 11.64
Vested (usd per share) | $ / shares 16.54
Adjustment for incentive awards expected to vest (usd per share) | $ / shares 15.36
Outstanding, Ending balance (usd per share) | $ / shares $ 14.61
Restricted Stock  
Restricted Stock, Deferred Stock Units and Performance Share Units  
Outstanding, Beginning balance (in shares) 174,173
Granted (in shares) 139,990
Vested (in shares) (57,329)
Adjustment for incentive awards expected to vest (in shares) 0
Outstanding, Ending balance (in shares) 256,834
Deferred Stock Units  
Restricted Stock, Deferred Stock Units and Performance Share Units  
Outstanding, Beginning balance (in shares) 46,268
Granted (in shares) 0
Vested (in shares) 0
Adjustment for incentive awards expected to vest (in shares) 0
Outstanding, Ending balance (in shares) 46,268
Performance-Based Stock and Share Units  
Restricted Stock, Deferred Stock Units and Performance Share Units  
Outstanding, Beginning balance (in shares) 108,478
Granted (in shares) 367,558
Vested (in shares) 0
Adjustment for incentive awards expected to vest (in shares) 20,104
Outstanding, Ending balance (in shares) 496,140
XML 69 R56.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) - USD ($)
$ in Thousands
3 Months Ended 12 Months Ended
Mar. 31, 2023
Dec. 31, 2022
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Term deposits $ 17 $ 17
Interest rate swaps $ 1,511 $ 1,930
Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Interest rate swaps Interest rate swaps
Total assets $ 1,528 $ 1,947
Level 1    
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Term deposits 17 17
Interest rate swaps 0 0
Total assets 17 17
Level 2    
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Term deposits 0 0
Interest rate swaps 1,511 1,930
Total assets 1,511 1,930
Level 3    
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Term deposits 0 0
Interest rate swaps 0 0
Total assets $ 0 $ 0
XML 70 R57.htm IDEA: XBRL DOCUMENT v3.23.1
Fair Value Measurements - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Interest expense $ 1,388 $ 370
Swap    
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Interest income $ 245  
Interest expense   $ 97
XML 71 R58.htm IDEA: XBRL DOCUMENT v3.23.1
Retirement Plans - Narrative (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
plan
Pension Plan  
Defined Benefit Plan Disclosure  
Defined contribution plan number 5
United States  
Defined Benefit Plan Disclosure  
Number of retirement plans 3
Number of defined benefit plans 1
Defined contribution plan number 2
Defined benefit plan, expected future employer contributions, current fiscal year | $ $ 400
Canada  
Defined Benefit Plan Disclosure  
Defined contribution plan number 1
United Kingdom  
Defined Benefit Plan Disclosure  
Defined contribution plan number 2
Defined benefit plan, expected future employer contributions, current fiscal year | $ $ 340
Defined benefit plan, contributions by employer | $ $ 84
XML 72 R59.htm IDEA: XBRL DOCUMENT v3.23.1
Retirement Plans - Schedule Of Net Benefit Costs (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
United States    
Defined Benefit Plan Disclosure    
Interest cost $ 71 $ 49
Expected return on plan assets (64) (66)
Recognized net actuarial loss 16 18
Net periodic pension (income) cost 23 1
United Kingdom    
Defined Benefit Plan Disclosure    
Interest cost 55 45
Expected return on plan assets (83) (81)
Amortization of prior service costs and transition amount 6 6
Recognized net actuarial loss 3 42
Net periodic pension (income) cost $ (19) $ 12
XML 73 R60.htm IDEA: XBRL DOCUMENT v3.23.1
Retirement Plans - Schedule of Costs of Retirement Plans (Details) - USD ($)
$ in Thousands
3 Months Ended
Mar. 31, 2023
Mar. 31, 2022
Defined Contribution Plan Disclosure    
Expenses associated with contributions made $ 937 $ 501
United States    
Defined Contribution Plan Disclosure    
Expenses associated with contributions made 614 305
Canada    
Defined Contribution Plan Disclosure    
Expenses associated with contributions made 62 61
United Kingdom    
Defined Contribution Plan Disclosure    
Expenses associated with contributions made $ 261 $ 135
XML 74 R61.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingent Liabilities - Narrative (Details)
$ in Thousands
3 Months Ended
Mar. 13, 2019
USD ($)
Mar. 31, 2023
USD ($)
potentially_responsible_party
Dec. 31, 2022
USD ($)
Sep. 30, 2021
USD ($)
Mar. 26, 2020
party
Jun. 05, 2017
company
Product Liability Contingency            
Litigation settlement amount   $ 16,000        
Number of companies that received a general notice letter (company) | company           140
Present value of remedial work   1,100,000        
Undiscovered remedial work   $ 1,700,000        
Anticipated clean period   13 years        
Number of potentially responsible parties included in agreement | potentially_responsible_party   100        
Number of parties required to perform remedial design work | party         2  
Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag   financial condition        
Accrual for environmental loss   $ 2,448 $ 2,472      
UPRR            
Product Liability Contingency            
Litigation settlement amount   $ 50,000        
Litigation settlement amount, current $ 2,000          
Litigation settlement amount, non-current 48,000          
Payment period   6 years        
Purchase commitment 48,000          
UPRR            
Product Liability Contingency            
Annual commitment amount $ 8,000     $ 6,000    
XML 75 R62.htm IDEA: XBRL DOCUMENT v3.23.1
Commitments and Contingent Liabilities - Future Payments (Details)
$ in Thousands
3 Months Ended
Mar. 31, 2023
USD ($)
Commitments and Contingencies Disclosure [Abstract]  
Remainder of 2023 $ 8,000
2024 8,000
Total $ 16,000
XML 76 fstr-20230331_htm.xml IDEA: XBRL DOCUMENT 0000352825 2023-01-01 2023-03-31 0000352825 2023-05-02 0000352825 2023-03-31 0000352825 2022-12-31 0000352825 us-gaap:ProductMember 2023-01-01 2023-03-31 0000352825 us-gaap:ProductMember 2022-01-01 2022-03-31 0000352825 us-gaap:ServiceMember 2023-01-01 2023-03-31 0000352825 us-gaap:ServiceMember 2022-01-01 2022-03-31 0000352825 2022-01-01 2022-03-31 0000352825 2021-12-31 0000352825 2022-03-31 0000352825 us-gaap:CommonStockMember 2022-12-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-12-31 0000352825 us-gaap:RetainedEarningsMember 2022-12-31 0000352825 us-gaap:TreasuryStockCommonMember 2022-12-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-12-31 0000352825 us-gaap:NoncontrollingInterestMember 2022-12-31 0000352825 us-gaap:RetainedEarningsMember 2023-01-01 2023-03-31 0000352825 us-gaap:NoncontrollingInterestMember 2023-01-01 2023-03-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-03-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-03-31 0000352825 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-03-31 0000352825 us-gaap:CommonStockMember 2023-03-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2023-03-31 0000352825 us-gaap:RetainedEarningsMember 2023-03-31 0000352825 us-gaap:TreasuryStockCommonMember 2023-03-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-03-31 0000352825 us-gaap:NoncontrollingInterestMember 2023-03-31 0000352825 us-gaap:CommonStockMember 2021-12-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0000352825 us-gaap:RetainedEarningsMember 2021-12-31 0000352825 us-gaap:TreasuryStockCommonMember 2021-12-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0000352825 us-gaap:NoncontrollingInterestMember 2021-12-31 0000352825 us-gaap:RetainedEarningsMember 2022-01-01 2022-03-31 0000352825 us-gaap:NoncontrollingInterestMember 2022-01-01 2022-03-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-03-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-03-31 0000352825 us-gaap:TreasuryStockCommonMember 2022-01-01 2022-03-31 0000352825 us-gaap:CommonStockMember 2022-03-31 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-03-31 0000352825 us-gaap:RetainedEarningsMember 2022-03-31 0000352825 us-gaap:TreasuryStockCommonMember 2022-03-31 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-03-31 0000352825 us-gaap:NoncontrollingInterestMember 2022-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-03-31 0000352825 us-gaap:OperatingSegmentsMember 2023-01-01 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember 2022-01-01 2022-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-12-31 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2022-12-31 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2023-03-31 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2022-12-31 0000352825 us-gaap:CorporateNonSegmentMember 2023-03-31 0000352825 us-gaap:CorporateNonSegmentMember 2022-12-31 0000352825 fstr:ChemtecEnergyServicesLLCMember 2023-03-30 2023-03-30 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-03-31 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-03-31 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-03-31 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-03-31 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-03-31 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-03-31 0000352825 fstr:OtherPrecastConcreteProductsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-03-31 0000352825 fstr:OtherPrecastConcreteProductsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-03-31 0000352825 fstr:PrecastConcreteProductsMember 2023-01-01 2023-03-31 0000352825 fstr:PrecastConcreteProductsMember 2022-01-01 2022-03-31 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-03-31 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-03-31 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-03-31 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-03-31 0000352825 fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-03-31 0000352825 fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-03-31 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-03-31 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-03-31 0000352825 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-03-31 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-03-31 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-03-31 0000352825 us-gaap:TransferredOverTimeMember 2023-01-01 2023-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-03-31 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-03-31 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-03-31 0000352825 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-03-31 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-03-31 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-03-31 0000352825 us-gaap:TransferredOverTimeMember 2022-01-01 2022-03-31 0000352825 fstr:OverTimeInputMethodMember 2023-01-01 2023-03-31 0000352825 fstr:OverTimeInputMethodMember 2022-01-01 2022-03-31 0000352825 fstr:OverTimeOutputMethodMember 2023-01-01 2023-03-31 0000352825 fstr:OverTimeOutputMethodMember 2022-01-01 2022-03-31 0000352825 2023-04-01 2023-03-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2022-12-31 0000352825 fstr:PrecastConcreteProductsMember 2022-12-31 0000352825 fstr:SteelProductsAndMeasurementMember 2022-12-31 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2023-03-31 0000352825 fstr:PrecastConcreteProductsMember 2023-03-31 0000352825 fstr:SteelProductsAndMeasurementMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:NoncompeteAgreementsMember 2023-01-01 2023-03-31 0000352825 us-gaap:NoncompeteAgreementsMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:PatentsMember 2023-01-01 2023-03-31 0000352825 us-gaap:PatentsMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:CustomerRelationshipsMember 2023-01-01 2023-03-31 0000352825 us-gaap:CustomerRelationshipsMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:TrademarksAndTradeNamesMember 2023-01-01 2023-03-31 0000352825 us-gaap:TrademarksAndTradeNamesMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-01-01 2023-03-31 0000352825 us-gaap:TechnologyBasedIntangibleAssetsMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:OffMarketFavorableLeaseMember 2023-01-01 2023-03-31 0000352825 us-gaap:OffMarketFavorableLeaseMember 2023-03-31 0000352825 srt:WeightedAverageMember us-gaap:NoncompeteAgreementsMember 2022-01-01 2022-12-31 0000352825 us-gaap:NoncompeteAgreementsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:PatentsMember 2022-01-01 2022-12-31 0000352825 us-gaap:PatentsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:CustomerRelationshipsMember 2022-01-01 2022-12-31 0000352825 us-gaap:CustomerRelationshipsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:TrademarksAndTradeNamesMember 2022-01-01 2022-12-31 0000352825 us-gaap:TrademarksAndTradeNamesMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-01-01 2022-12-31 0000352825 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:OffMarketFavorableLeaseMember 2022-01-01 2022-12-31 0000352825 us-gaap:OffMarketFavorableLeaseMember 2022-12-31 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-03-31 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-03-31 0000352825 us-gaap:RevolvingCreditFacilityMember fstr:FourthAmendedAndRestatedCreditAgreementMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 2021-08-13 0000352825 us-gaap:RevolvingCreditFacilityMember fstr:FourthAmendedAndRestatedCreditAgreementMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 0000352825 us-gaap:RevolvingCreditFacilityMember fstr:PriorCreditFacilityMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 2021-08-13 0000352825 fstr:FourthAmendedAndRestatedCreditAgreementMember us-gaap:DebtInstrumentRedemptionPeriodOneMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2023-03-31 0000352825 fstr:FourthAmendedAndRestatedCreditAgreementMember us-gaap:DebtInstrumentRedemptionPeriodOneMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 0000352825 fstr:FourthAmendedAndRestatedCreditAgreementMember us-gaap:DebtInstrumentRedemptionPeriodTwoMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 0000352825 fstr:FourthAmendedAndRestatedCreditAgreementMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2021-08-13 0000352825 2022-08-12 0000352825 us-gaap:RevolvingCreditFacilityMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2023-03-31 0000352825 us-gaap:PerformanceSharesMember 2023-01-01 2023-03-31 0000352825 us-gaap:RestrictedStockMember 2023-01-01 2023-03-31 0000352825 us-gaap:RestrictedStockMember 2022-01-01 2022-03-31 0000352825 us-gaap:PerformanceSharesMember 2022-01-01 2022-03-31 0000352825 us-gaap:RestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2023-01-01 2023-03-31 0000352825 srt:MinimumMember us-gaap:RestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2023-01-01 2023-03-31 0000352825 srt:DirectorMember 2023-01-01 2023-03-31 0000352825 us-gaap:RestrictedStockMember 2022-12-31 0000352825 fstr:DeferredStockUnitsMember 2022-12-31 0000352825 us-gaap:PerformanceSharesMember 2022-12-31 0000352825 fstr:DeferredStockUnitsMember 2023-01-01 2023-03-31 0000352825 us-gaap:RestrictedStockMember 2023-03-31 0000352825 fstr:DeferredStockUnitsMember 2023-03-31 0000352825 us-gaap:PerformanceSharesMember 2023-03-31 0000352825 us-gaap:FairValueInputsLevel1Member 2023-03-31 0000352825 us-gaap:FairValueInputsLevel2Member 2023-03-31 0000352825 us-gaap:FairValueInputsLevel3Member 2023-03-31 0000352825 us-gaap:FairValueInputsLevel1Member 2022-12-31 0000352825 us-gaap:FairValueInputsLevel2Member 2022-12-31 0000352825 us-gaap:FairValueInputsLevel3Member 2022-12-31 0000352825 2022-01-01 2022-12-31 0000352825 us-gaap:SwapMember 2023-01-01 2023-03-31 0000352825 us-gaap:SwapMember 2022-01-01 2022-03-31 0000352825 country:US 2023-01-01 2023-03-31 0000352825 country:CA 2023-01-01 2023-03-31 0000352825 country:GB 2023-01-01 2023-03-31 0000352825 country:US 2022-01-01 2022-03-31 0000352825 country:US 2023-03-31 0000352825 country:GB 2022-01-01 2022-03-31 0000352825 country:GB 2023-03-31 0000352825 us-gaap:PensionPlansDefinedBenefitMember 2023-01-01 2023-03-31 0000352825 country:CA 2022-01-01 2022-03-31 0000352825 fstr:UPRRMember 2023-01-01 2023-03-31 0000352825 fstr:UPRRMember 2019-03-13 0000352825 fstr:UPRRMember 2019-03-13 2019-03-13 0000352825 fstr:UprrMember 2019-03-13 0000352825 fstr:UprrMember 2021-09-30 0000352825 2017-06-05 0000352825 2020-03-26 shares iso4217:USD iso4217:USD shares pure fstr:covenant fstr:plan fstr:company fstr:potentially_responsible_party fstr:party false 2023 Q1 0000352825 --12-31 P1Y 10-Q true 2023-03-31 false 000-10436 L.B. Foster Company PA 25-1324733 415 Holiday Drive Suite 100 Pittsburgh PA 15220 412 928-3400 Common Stock, par value $0.01 FSTR NASDAQ Yes Yes Accelerated Filer true false false 11085149 2639000 2882000 54904000 82455000 31207000 33613000 84594000 75721000 11844000 11061000 185188000 205732000 78960000 85344000 16513000 17291000 30863000 30733000 22549000 23831000 0 24000 2305000 2355000 336378000 365310000 48553000 48782000 14556000 19452000 4176000 10558000 8000000 8000000 117000 127000 13100000 16192000 88502000 103111000 79979000 91752000 1753000 3109000 8000000 8000000 13416000 14163000 7714000 7577000 0.01 0.01 20000000 20000000 11115779 11115779 10809711 10776827 111000 111000 40951000 41303000 121017000 123169000 306068 338952 5174000 6240000 -20296000 -21165000 136609000 137178000 405000 420000 137014000 137598000 336378000 365310000 98538000 84421000 16950000 14373000 115488000 98794000 78065000 69845000 14132000 12502000 92197000 82347000 23291000 16447000 21423000 17298000 1365000 1436000 503000 -2287000 1388000 370000 -1827000 563000 -2712000 -2094000 -541000 -508000 -2171000 -1586000 -19000 -20000 -2152000 -1566000 -0.20 -0.15 -0.20 -0.15 -2171000 -1586000 1247000 -880000 0 -188000 -418000 551000 0 -66000 0 -93000 2000 16000 40000 49000 -1302000 -1773000 -19000 -20000 4000 85000 -15000 65000 -1287000 -1838000 -2171000 -1586000 -1233000 -574000 2505000 1938000 1365000 1436000 -17000 -87000 14000 -23000 884000 258000 -2033000 0 -26239000 4556000 860000 -1116000 15564000 4781000 791000 4648000 1439000 -818000 4921000 4680000 -707000 5907000 -6386000 -4181000 -2981000 -2377000 1148000 -1022000 6932000 -7636000 16000 30000 699000 1764000 5344000 1195000 4661000 -539000 55133000 30892000 43086000 35301000 309000 397000 334000 0 -12022000 4012000 186000 30000 -243000 -4133000 2882000 10372000 2639000 6239000 1425000 369000 -1564000 -44000 111000 41303000 123169000 -6240000 -21165000 420000 137598000 -2152000 -19000 -2171000 -40000 -40000 1247000 4000 1251000 -418000 -418000 32884 -1236000 1066000 -170000 884000 884000 111000 40951000 121017000 -5174000 -20296000 405000 137014000 111000 43272000 168733000 -10179000 -18845000 518000 183610000 -1566000 -20000 -1586000 -49000 -49000 -965000 85000 -880000 551000 551000 -93000 -93000 34440 -1377000 979000 -398000 258000 258000 111000 42153000 167167000 -9200000 -19117000 583000 181697000 Financial StatementsBasis of PresentationThe accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States (“GAAP”) for interim financial information and with the instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. The year-end consolidated balance sheet data was derived from audited financial statements, but does not include all disclosures required by GAAP. In the opinion of management, all estimates and adjustments (consisting of normal recurring accruals) considered necessary for a fair presentation have been included. Operating results for the three months ended March 31, 2023 are not necessarily indicative of the results that may be expected for the year ending December 31, 2023. This Quarterly Report on Form 10-Q should be read in conjunction with the consolidated financial statements and footnotes thereto included in L.B. Foster Company’s Annual Report on Form 10-K for the year ended December 31, 2022. In this Quarterly Report on Form 10-Q, references to “we,” “us,” “our,” and the “Company” refer collectively to L.B. Foster Company and its consolidated subsidiaries. Basis of PresentationThe accompanying unaudited Condensed Consolidated Financial Statements have been prepared in accordance with accounting principles generally accepted in the United States (“GAAP”) for interim financial information and with the instructions to Form 10-Q and Article 8 of Regulation S-X. Accordingly, they do not include all of the information and footnotes required by GAAP for complete financial statements. The year-end consolidated balance sheet data was derived from audited financial statements, but does not include all disclosures required by GAAP. In the opinion of management, all estimates and adjustments (consisting of normal recurring accruals) considered necessary for a fair presentation have been included. Operating results for the three months ended March 31, 2023 are not necessarily indicative of the results that may be expected for the year ending December 31, 2023. This Quarterly Report on Form 10-Q should be read in conjunction with the consolidated financial statements and footnotes thereto included in L.B. Foster Company’s Annual Report on Form 10-K for the year ended December 31, 2022. In this Quarterly Report on Form 10-Q, references to “we,” “us,” “our,” and the “Company” refer collectively to L.B. Foster Company and its consolidated subsidiaries. Business Segments <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a global technology solutions provider of engineered, manufactured products and services that builds and supports infrastructure. The Company’s innovative engineering and product development solutions address the safety, reliability, and performance needs of its customers’ most challenging requirements. The Company maintains locations in North America, South America, Europe, and Asia. The Company’s segments represent components of the Company (a) that engage in activities from which revenue is generated and expenses are incurred, (b) whose operating results are regularly reviewed by the Chief Operating Decision Maker, who uses such information to make decisions about resources to be allocated to the segments, and (c) for which discrete financial information is available. Operating segments are evaluated on their segment profit contribution to the Company’s consolidated results. Other income and expenses, interest, income taxes, and certain other items are managed on a consolidated basis. The Company’s segment accounting policies are described in Note 2 Business Segments of the Notes to the Company’s Consolidated Financial Statements contained in its Annual Report on Form 10-K for the year ended December 31, 2022.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The operating results of the Company's reportable segments were as follows for the periods presented:</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:51.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><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:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.014%"/><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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31, 2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net Sales</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment Operating Profit (Loss)</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net Sales</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment Operating Profit (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,039 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(348)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(791)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,148)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,032 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,900)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment profit (loss) from operations, as shown above, includes allocated corporate operating expenses. Operating expenses related to corporate headquarter functions that directly support the segment activity are allocated based on segment headcount, revenue contribution, or activity of the business units within the segments, based on the corporate activity type provided to the segment. The expense allocation excludes certain corporate costs that are separately managed from the segments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of reportable segment net profit (loss) to the Company’s consolidated total for the periods presented:</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:75.150%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.633%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">Operating profit (loss) for reportable segments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,900)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense - net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,388)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(370)</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:#cceeff;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%">Other (expense) income - net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,827)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">563 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses and other unallocated charges</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(387)</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:#cceeff;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%">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,712)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,094)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table illustrates assets of the Company by reportable segment for the periods presented:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,001 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172,111 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104,581 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,598 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,236 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,516 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,560 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,085 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">336,378 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">365,310 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 30, 2023, the Company sold substantially all the operating assets of its Chemtec Energy Services LLC business (“Chemtec”) for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,033 loss on sale, recorded in “Other expense (income) - net.” The Chemtec business was reported in the Coatings and Measurement business unit within the Steel Products and Measurement segment.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The operating results of the Company's reportable segments were as follows for the periods presented:</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:51.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><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:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.014%"/><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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31, 2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net Sales</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment Operating Profit (Loss)</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net Sales</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Segment Operating Profit (Loss)</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,039 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(348)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(791)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(8)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,148)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,032 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,900)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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></table></div> 64384000 2388000 63710000 1039000 24288000 -348000 15010000 -791000 26816000 -8000 20074000 -2148000 115488000 2032000 98794000 -1900000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">A reconciliation of reportable segment net profit (loss) to the Company’s consolidated total for the periods presented:</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:75.150%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.633%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">Operating profit (loss) for reportable segments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,032 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,900)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense - net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,388)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(370)</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:#cceeff;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%">Other (expense) income - net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,827)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">563 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate expenses and other unallocated charges</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,529)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(387)</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:#cceeff;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%">Loss before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,712)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,094)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 2032000 -1900000 -1388000 -370000 -1827000 563000 1529000 387000 -2712000 -2094000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table illustrates assets of the Company by reportable segment for the periods presented:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">163,001 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172,111 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">104,581 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,598 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,236 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">54,516 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Unallocated corporate 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,560 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,085 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">336,378 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">365,310 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 163001000 172111000 104581000 108598000 38236000 54516000 30560000 30085000 336378000 365310000 5344000 -2033000 Revenue<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s net sales by major product and service category for the periods presented:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">Rail Products and Global Friction Management</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,048 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,651 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology Services and Solutions</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,336 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,059 </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:#cceeff;padding:2px 1pt 2px 19pt;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%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Buildings</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,886 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,970 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other Precast Concrete Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,402 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fabricated Steel Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,517 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,604 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Coatings and Measurement</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,299 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,470 </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:#cceeff;padding:2px 1pt 2px 19pt;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%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><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 37pt;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%">Total net sales</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="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><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The majority of the Company’s revenue is from products transferred and services rendered to customers at a point in time. The Company recognizes revenue at the point in time at which the customer obtains control of the product or service, which is generally when the product title passes to the customer upon shipment or the service has been rendered to the customer. In limited cases, title does not transfer and revenue is not recognized until the customer has received the products at a designated physical location.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales by the timing of the transfer of goods and services was as follows for the periods presented:</span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.583%"><tr><td style="width:1.0%"/><td style="width:44.227%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.875%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31, 2023</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in time</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,834 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,402 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,962 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,886 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,090 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in time</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,166 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,263 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,062 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,491 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,544 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,747 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,012 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Revenue under long-term agreements is generally recognized using an input measure based upon the proportion of actual costs incurred to estimated total project costs or an input measure based upon actual labor costs as a percentage of estimated total labor costs, depending </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">upon which measure the Company believes best depicts its performance to date under the terms of the contract. A certain portion of the Company’s revenue recognized over time under these long-term agreements is recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue recognized over time was as follows for the periods presented:</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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31,</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Three Months Ended March 31,</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time input method</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,322 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.0 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19.6 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time output method</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,315 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,981 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total over time sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,526 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,303 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28.2 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30.7 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The timing of revenue recognition, billings, and cash collections results in billed receivables, costs in excess of billings (included in “Contract assets”), and billings in excess of costs (contract liabilities), included in “Deferred revenue” within the Condensed Consolidated Balance Sheets. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company's contract assets:</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:84.872%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.234%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Contract Assets</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,613 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net additions to contract 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,290 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Transfers from contract asset balance to accounts receivable </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,696)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,207 </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;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-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company's contract liabilities: </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:84.872%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.234%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Contract Liabilities</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,781 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized from contract liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,443)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase in billings in excess of cost, excluding revenue recognized </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments, including business divestiture</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,078)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,243 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;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-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company records provisions related to the allowance for credit losses associated with contract assets. Provisions are recorded based upon a specific review of individual contracts as necessary, and a standard provision over any remaining contract assets pooled together based on similar risk of credit loss. The development of these provisions is based on historical collection trends, accuracy of estimates within contract margin reporting, as well as the expectation that collection patterns and margin reporting will continue to adhere to patterns observed in recent years. These expectations are formed based on trends observed, as well as current and expected future conditions.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2023, the Company had approximately $259,881 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 8.9% of the March 31, 2023 backlog was related to projects that are anticipated to extend beyond March 31, 2024.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the Company’s net sales by major product and service category for the periods presented:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">Rail Products and Global Friction Management</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56,048 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51,651 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology Services and Solutions</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,336 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,059 </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:#cceeff;padding:2px 1pt 2px 19pt;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%">Rail, Technologies, and Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Buildings</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,886 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,970 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other Precast Concrete Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,402 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,040 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Concrete Products</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Fabricated Steel Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,517 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,604 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Coatings and Measurement</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,299 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,470 </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:#cceeff;padding:2px 1pt 2px 19pt;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%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><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 37pt;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%">Total net sales</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 56048000 51651000 8336000 12059000 64384000 63710000 10886000 9970000 13402000 5040000 24288000 15010000 10517000 12604000 16299000 7470000 26816000 20074000 115488000 98794000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net sales by the timing of the transfer of goods and services was as follows for the periods presented:</span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.583%"><tr><td style="width:1.0%"/><td style="width:44.227%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.870%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.497%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.875%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31, 2023</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in time</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">53,834 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,402 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,726 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">82,962 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,886 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,090 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,526 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">64,384 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,288 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,816 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,488 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Point in time</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,166 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,263 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,062 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,491 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,544 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,747 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,012 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,303 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63,710 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,010 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,074 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,794 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Revenue recognized over time was as follows for the periods presented:</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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended March 31,</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Three Months Ended March 31,</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time input method</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,211 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,322 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.0 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19.6 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Over time output method</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,315 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,981 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.1 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total over time sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,526 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,303 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28.2 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30.7 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">%</span></td></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 53834000 13402000 15726000 82962000 10550000 10886000 11090000 32526000 64384000 24288000 26816000 115488000 49166000 4263000 15062000 68491000 14544000 10747000 5012000 30303000 63710000 15010000 20074000 98794000 16211000 19322000 0.140 0.196 16315000 10981000 0.141 0.111 32526000 30303000 0.282 0.307 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company's contract assets:</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:84.872%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.234%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Contract Assets</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,613 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net additions to contract 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,290 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Transfers from contract asset balance to accounts receivable </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,696)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,207 </span></td><td style="background-color:#ffffff;border-bottom:1pt solid #000;border-top:1pt solid #000;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-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company's contract liabilities: </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:84.872%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:12.234%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Contract Liabilities</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,781 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized from contract liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,443)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Increase in billings in excess of cost, excluding revenue recognized </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments, including business divestiture</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,078)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,243 </span></td><td style="background-color:#cceeff;border-bottom:1pt solid #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 33613000 1290000 3696000 31207000 6781000 3443000 1983000 2078000 3243000 259881000 0.089 Goodwill and Other Intangible Assets<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents the changes in goodwill balance by reportable segment for the period presented:</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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,948 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,785 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,733 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation impact</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130 </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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,078 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,785 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,863 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table><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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company performs goodwill impairment tests annually during the fourth quarter, and also performs interim goodwill impairment tests if it is determined that it is more likely than not that the fair value of a reporting unit is less than the carrying amount. Qualitative factors are assessed to determine whether it is more likely than not that the fair value of a reporting unit is less than the carrying amount, which included the impacts of current economic conditions, including but not limited to labor markets, supply chains, and </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">other inflationary costs. However, these factors can be unpredictable and are subject to change. No interim goodwill impairment test was required as a result of the evaluation of qualitative factors as of March 31, 2023. However, future impairment charges could result if future projections diverge unfavorably from current expectations in the Rail Technologies and Precast Concrete Products reporting units.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:</span></div><div style="text-align:justify"><span><br/></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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31, 2023</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Amortization<br/>Period In Years</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net<br/>Carrying<br/>Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Patents</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:10pt;font-weight:400;line-height:100%">10</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(187)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,413 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,965)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,448 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</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:10pt;font-weight:400;line-height:100%">16</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,957 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,142)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,815 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,253 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,405)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,848 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Favorable lease</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:10pt;font-weight:400;line-height:100%">6</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(36)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">291 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,307 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(45,758)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,549 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Amortization<br/>Period In Years</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net<br/>Carrying<br/>Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Patents</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:10pt;font-weight:400;line-height:100%">10</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(187)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,184 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,129)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,055 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</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:10pt;font-weight:400;line-height:100%">16</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,933 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,989)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,944 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,201 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,827)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,374 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Favorable lease</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:10pt;font-weight:400;line-height:100%">6</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,002 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,171)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,831 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> The following table presents the changes in goodwill balance by reportable segment for the period presented:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Rail, Technologies, and Services</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Precast Concrete Products</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Steel Products and Measurement</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,948 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,785 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,733 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation impact</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">130 </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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,078 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,785 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,863 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 19948000 10785000 0 30733000 130000 0 0 130000 20078000 10785000 0 30863000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:</span></div><div style="text-align:justify"><span><br/></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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31, 2023</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Amortization<br/>Period In Years</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net<br/>Carrying<br/>Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Patents</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:10pt;font-weight:400;line-height:100%">10</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(187)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,413 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,965)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,448 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</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:10pt;font-weight:400;line-height:100%">16</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,957 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,142)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,815 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,253 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(26,405)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,848 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Favorable lease</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:10pt;font-weight:400;line-height:100%">6</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(36)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">291 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,307 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(45,758)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,549 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span><br/></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:45.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.816%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.821%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31, 2022</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Amortization<br/>Period In Years</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Gross<br/>Carrying<br/>Value</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Accumulated<br/>Amortization</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Net<br/>Carrying<br/>Amount</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Non-compete agreements</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(16)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Patents</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:10pt;font-weight:400;line-height:100%">10</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(187)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,184 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(14,129)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13,055 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trademarks and trade names</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:10pt;font-weight:400;line-height:100%">16</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">7,933 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,989)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,944 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,201 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(25,827)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,374 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Favorable lease</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:10pt;font-weight:400;line-height:100%">6</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(23)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">68,002 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(44,171)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,831 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> P1Y 27000 23000 4000 P10Y 330000 187000 143000 P16Y 27413000 14965000 12448000 P16Y 7957000 4142000 3815000 P14Y 32253000 26405000 5848000 P6Y 327000 36000 291000 68307000 45758000 22549000 P1Y 27000 16000 11000 P10Y 330000 187000 143000 P16Y 27184000 14129000 13055000 P16Y 7933000 3989000 3944000 P14Y 32201000 25827000 6374000 P6Y 327000 23000 304000 68002000 44171000 23831000 Accounts Receivable<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Changes in reserves for uncollectible accounts, which are recorded as part of “Selling and administrative expenses” in the Condensed Consolidated Statements of Operations, were recorded as an expense of $155 and $61 for the three months ended March 31, 2023 and 2022, respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company establishes the allowance for credit losses based on historical collection patterns and other subjective conditions as necessary, including current and expected market conditions. Trade receivables are pooled based on age, which groups receivables of similar credit risk together. Management maintains stringent credit review practices and works to maintain positive customer relationships to further mitigate credit risk.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company’s allowance for credit losses:</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:85.427%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.818%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Allowance for Credit Losses</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">813 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-off against allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">868 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 155000 61000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the Company’s allowance for credit losses:</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:85.427%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:11.818%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Allowance for Credit Losses</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">813 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Current period provision</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Write-off against allowance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(100)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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:10pt;font-weight:400;line-height:100%">Balance as of March 31, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">868 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 813000 155000 100000 868000 Inventory<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Inventory is valued at average cost or net realizable value, whichever is lower. The Company’s components of inventory as of March 31, 2023 and December 31, 2022 are summarized in the following table:</span></div><div style="text-align:justify"><span><br/></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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,754 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,431 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,844 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,693 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,597 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories - net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,594 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,721 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> The Company’s components of inventory as of March 31, 2023 and December 31, 2022 are summarized in the following table:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">47,754 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,431 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,844 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,693 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,996 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,597 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Inventories - net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">84,594 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">75,721 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 47754000 41431000 8844000 9693000 27996000 24597000 84594000 75721000 Long-Term Debt and Related Matters<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit facility</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,825 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,567 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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:10pt;font-weight:400;line-height:100%">Finance leases and financing agreements</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">271 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,096 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,879 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less current maturities</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(117)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(127)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term portion</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,979 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,752 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 13, 2021, the Company, its domestic subsidiaries, and certain of its Canadian and United Kingdom subsidiaries (collectively, the “Borrowers”), entered into the Fourth Amended and Restated Credit Agreement (the “Credit Agreement”) with PNC Bank, N.A., Citizens Bank, N.A., Wells Fargo Bank, National Association, Bank of America, N.A., and BMO Harris Bank, National Association. The Credit Agreement, as amended, modifies the prior revolving credit facility, as amended, on terms more favorable to the Company and extends the maturity from April 30, 2024 to August 13, 2026. The Credit Agreement provides for a five-year, revolving credit facility that permits aggregate borrowings of the Borrowers up to $130,000 (a $15,000 increase over the previous commitment) with a sublimit of the equivalent of $25,000 U.S. dollars that is available to the Canadian and United Kingdom borrowers in the aggregate. The Credit Agreement’s incremental loan feature permits the Company to increase the available commitments under the facility by up to an additional $50,000 subject to the Company’s receipt of increased commitments from existing or new lenders and the satisfaction of certain conditions.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Borrowings under the Credit Agreement as amended, will bear interest at rates based upon either the base rate or SOFR rate plus applicable margins. The Credit Agreement includes two financial covenants: (a) Maximum Gross Leverage Ratio, defined as the Company’s consolidated Indebtedness (as defined in the Credit Agreement) divided by the Company’s consolidated EBITDA, which must not exceed (i) 3.25 to 1.00 for all testing periods other than during an Acquisition Period (as defined in the Credit Agreement), and (ii) 3.50 to 1.00 for all testing periods occurring during an Acquisition Period, and (b) Minimum Consolidated Fixed Charge Coverage Ratio, defined as the Company’s consolidated EBITDA divided by the Company’s Fixed Charges (as defined in the Credit Agreement), which must be more than 1.05 to 1.00.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On August 12, 2022, the Company entered into a second amendment to its Credit Agreement (“Second Amendment”) to obtain approval for the VanHooseCo acquisition (as defined below) and temporarily modify certain financial covenants to accommodate the transaction. The Second Amendment permitted the Company to acquire the operating assets of VanHooseCo and modified the Maximum Gross Leverage Ratio covenant to 3.75 through June 30, 2023 to accommodate the transaction.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of March 31, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,084.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-term debt consisted of the following:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revolving credit facility</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,825 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,567 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><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:10pt;font-weight:400;line-height:100%">Finance leases and financing agreements</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">271 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">80,096 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,879 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less current maturities</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(117)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(127)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Long-term portion</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,979 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">91,752 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 79825000 91567000 271000 312000 80096000 91879000 117000 127000 79979000 91752000 P5Y 130000000 15000 25000000 50000000 2 3.25 3.5 1.05 3.75 1084000 Earnings Per Common Share<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">(Share amounts in thousands)</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the computation of basic and diluted loss per common share for the periods indicated:</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:75.288%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Numerator for basic and diluted loss per common share:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;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%">Net loss</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,171)</span></td><td style="background-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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,586)</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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;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%">Weighted average shares outstanding</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#ffffff;padding:2px 1pt 2px 19pt;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%">Denominator for diluted loss per common share - adjusted weighted average shares outstanding</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#cceeff;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%">Basic loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.20)</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.15)</span></td><td style="background-color:#cceeff;border-top:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.20)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.15)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #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"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">There were 101 and 122 anti-dilutive shares for the three months ended March 31, 2023 and 2022, respectively, excluded from the calculation.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table sets forth the computation of basic and diluted loss per common share for the periods indicated:</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:75.288%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding:0 1pt"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Numerator for basic and diluted loss per common share:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;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%">Net loss</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(2,171)</span></td><td style="background-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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,586)</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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator:</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;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%">Weighted average shares outstanding</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#ffffff;padding:2px 1pt 2px 19pt;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%">Denominator for diluted loss per common share - adjusted weighted average shares outstanding</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,792 </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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,685 </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="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><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:#cceeff;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%">Basic loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.20)</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.15)</span></td><td style="background-color:#cceeff;border-top:3pt double #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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted loss per common share</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.20)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0 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%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(0.15)</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:3pt double #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"/></tr></table></div> -2171000 -1586000 10792000 10685000 10792000 10685000 10792000 10685000 -0.20 -0.15 -0.20 -0.15 101000 122000 Income TaxesFor the three months ended March 31, 2023 and 2022, the Company recorded an income tax benefit of $541 and $508, respectively, on pre-tax losses of $2,712 and $2,094, respectively, for an effective income tax rate of 19.9% and 24.3%, respectively. Due to the full valuation allowance on domestic deferred tax assets, the Company's tax provision for the three months ended March 31, 2023 does not reflect any tax benefit for domestic pre-tax losses, and is primarily comprised of taxes on our Canadian and United Kingdom operations. The Company continued to maintain a full valuation allowance against its U.S. deferred tax assets, which is likely to result in significant variability of the effective tax rate in the current year. Changes in pre-tax income projections, combined with the seasonal nature of our businesses, could also impact the effective income tax rate each quarter. -541000 -508000 -2712000 -2094000 0.199 0.243 Stock-Based Compensation<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company recorded stock-based compensation expense of $884 and $258 for the three months ended March 31, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of March 31, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,388. The Company will recognize this unrecognized compensation expense over the upcoming 2.9 years through March 2026.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Shares issued as a result of vested stock-based compensation awards generally will be from previously issued shares that have been reacquired by the Company and held as treasury stock or authorized and previously unissued common stock.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Restricted Stock, Performance Share Units, and Performance-Based Stock Awards</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the 2022 Equity and Incentive Compensation Plan, successor to the 2006 Omnibus Plan, the Company grants eligible employees restricted stock and performance share units. The forfeitable restricted stock awards granted generally time-vest ratably over a three-year period, unless indicated otherwise by the underlying restricted stock award agreement. Awards of restricted stock are subject to a minimum one-year vesting period, including those granted to non-employee directors. Performance share units are offered annually under separate three-year long-term incentive programs. Performance share units are subject to forfeiture and will be converted into common stock of the Company based upon the Company’s performance relative to performance measures and conversion multiples, as defined in the underlying program. The Company has, on occasion, issued performance share units with longer performance periods as incentivization and retention tools. If the Company’s estimate of the number of performance share units expected to vest changes in a subsequent accounting period, cumulative compensation expense could increase or decrease. The change will be recognized in the current period for the vested shares and would change future expense over the remaining vesting period.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Since 2017, non-employee directors have been permitted to defer receipt of annual stock awards and equity elected to be received in lieu of quarterly cash compensation. If so elected, these deferred stock units will be issued as common stock six months after separation from their service on the Board of Directors. Since 2018, no non-employee directors have elected the option to receive deferred stock units of the Company’s common stock in lieu of director cash compensation.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In February 2023, the Compensation Committee approved the 2023-2025 Long Term Incentive Plan which includes grants of performance share units and restricted stock. The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the three months ended March 31, 2023:</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:51.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><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:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.014%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Restricted<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Performance-Based Stock<br/>and Share Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174,173 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,268 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,478 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17.77 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,990 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367,558 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.64 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(57,329)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16.54 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment for incentive awards expected to vest</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,104 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.36 </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"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Outstanding as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">256,834 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,268 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">496,140 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.61 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 884000 884000 258000 258000 7388000 P2Y10M24D P3Y P1Y P3Y P6M The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the three months ended March 31, 2023:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:51.677%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><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:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.014%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Restricted<br/>Stock</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Deferred<br/>Stock Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Performance-Based Stock<br/>and Share Units</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Weighted Average<br/>Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Outstanding as of December 31, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">174,173 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,268 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,478 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17.77 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Granted</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">139,990 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">367,558 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11.64 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Vested</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(57,329)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16.54 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Adjustment for incentive awards expected to vest</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,104 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.36 </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"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Outstanding as of March 31, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">256,834 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,268 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">496,140 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14.61 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table> 174173 46268 108478 17.77 139990 0 367558 11.64 57329 0 0 16.54 0 0 20104 15.36 256834 46268 496140 14.61 Fair Value Measurements<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company determines the fair value as the price that would be received to sell an asset or paid to transfer a liability in an orderly transaction between market participants at the measurement date. The fair value hierarchy includes three levels of inputs that may be used to measure fair value as described below:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 1: Observable inputs that reflect unadjusted quoted market prices in active markets for identical assets or liabilities.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 2: Inputs other than quoted prices included within Level 1 that are observable for the asset or liability, either directly or indirectly.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Level 3: Unobservable inputs that are not corroborated by market data.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The classification of a financial asset or liability within the hierarchy is determined based on the lowest level input that is significant to the fair value measurement.</span></div><div style="text-align:justify"><span><br/></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:20.150%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.622%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.511%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.372%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.622%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.511%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.372%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.350%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Fair Value Measurements at Reporting Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Fair Value Measurements at Reporting Date</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 1</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 2</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-left: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 1</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 2</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Term deposits</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swaps</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#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;border-left:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,528 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,947 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">For the three months ended March 31, 2023 and 2022, the Company recognized interest income of $245 and interest expense of $97, respectively, from interest rate swaps.</span></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.150%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.622%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.511%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.372%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.483%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.622%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.511%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:7.372%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:8.350%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Fair Value Measurements at Reporting Date</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"/><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Fair Value Measurements at Reporting Date</span></td></tr><tr><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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">March 31,<br/>2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 1</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 2</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 3</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="border-left: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">December 31,<br/>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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 1</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 2</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Level 3</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Term deposits</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swaps</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#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;border-left:1pt solid #000;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total assets</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,528 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,511 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,947 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,930 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 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"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td 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> 17000 17000 0 0 17000 17000 0 0 Interest rate swaps Interest rate swaps 1511000 0 1511000 0 1930000 0 1930000 0 1528000 17000 1511000 0 1947000 17000 1930000 0 245000 97000 Retirement Plans<div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Retirement Plans</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company has three retirement plans that cover its hourly and salaried employees in the United States: one defined benefit plan, which is frozen, and two defined contribution plans. Employees are eligible to participate in the appropriate plan based on employment classification. The Company’s contributions to the defined benefit and defined contribution plans are governed by the Employee Retirement Income Security Act of 1974, as amended (“ERISA”) and the Company’s policy and investment guidelines applicable to each respective plan. The Company’s policy is to contribute at least the minimum in accordance with the funding standards of ERISA.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company maintains one defined contribution plan for its employees in Canada. In the United Kingdom, the Company maintains two defined contribution plans and a defined benefit plan, which is frozen. These plans are discussed in further detail below.</span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">United States Defined Benefit Plan</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net periodic pension costs for the United States defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Interest cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(66)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic pension cost</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="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company expects to make total contributions of $400 to its to its United States defined benefit pension plan during 2023.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">United Kingdom Defined Benefit Plan</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net periodic pension costs for the United Kingdom defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(83)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(81)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of prior service costs and transition amount</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic pension (income) cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">United Kingdom regulations require trustees to adopt a prudent approach to funding required contributions to defined benefit pension plans. For the three months ended March 31, 2023, the Company contributed approximately $84 to the plan. The Company anticipates total contributions of approximately $340 to the United Kingdom pension plan during 2023.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company sponsors five defined contribution plans for hourly and salaried employees across its domestic and international facilities. The following table summarizes the expense associated with the contributions made to these plans for the periods presented:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">614 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canada</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </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:#cceeff;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%">United Kingdom</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">937 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">501 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table></div> 3 1 2 1 2 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net periodic pension costs for the United States defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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"/></tr><tr><td colspan="3" style="background-color:#cceeff;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%">Interest cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(64)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(66)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic pension cost</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="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 71000 49000 64000 66000 -16000 -18000 23000 1000 400000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Net periodic pension costs for the United Kingdom defined benefit pension plan for the three months ended March 31, 2023 and 2022 were as follows:</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:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="width:1.0%"/><td style="width:10.011%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><td style="width:0.1%"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 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%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">55 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">45 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Expected return on plan assets</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(83)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(81)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Amortization of prior service costs and transition amount</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized net actuarial loss</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="display:none"/><td colspan="3" style="display:none"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net periodic pension (income) cost</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(19)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 55000 45000 83000 81000 6000 6000 -3000 -42000 -19000 12000 84000 340000 5 The following table summarizes the expense associated with the contributions made to these plans for the periods presented:<table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"/><td style="width:75.288%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.494%"/><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:0.494%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.013%"/><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="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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>March 31,</span></td><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding: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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2023</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:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">2022</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:#cceeff;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%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">614 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">305 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Canada</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:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61 </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:#cceeff;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%">United Kingdom</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">261 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">135 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="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:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">937 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="background-color:#ffffff;padding:0 1pt"/><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">501 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr></table> 614000 305000 62000 61000 261000 135000 937000 501000 Commitments and Contingent Liabilities<div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Product Liability Claims</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to product warranty claims that arise in the ordinary course of its business. For certain manufactured products, the Company maintains a product warranty accrual, which is adjusted on a monthly basis as a percentage of cost of sales. In addition, the product warranty accrual is adjusted periodically based on the identification or resolution of known individual product warranty claims.</span></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%;text-decoration:underline">Union Pacific Railroad (“UPRR”) Concrete Tie Matter</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">On March 13, 2019, the Company and its subsidiary, CXT Incorporated (“CXT”), entered into a Settlement Agreement (the “Settlement Agreement”) with UPRR to resolve the pending litigation in the matter of </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Union Pacific Railroad Company v. L.B. Foster Company and CXT Incorporated</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">, Case No. CI 15-564, in the District Court for Douglas County, Nebraska.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Under the Settlement Agreement, the Company and CXT will pay UPRR the aggregate amount of $50,000 without pre-judgment interest, which began with a $2,000 immediate payment, and with the remaining $48,000 paid in installments over a six-year period </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">commencing on the effective date of the Settlement Agreement through December 2024 pursuant to a Promissory Note. Additionally, commencing in January 2019 and through December 2024, UPRR agreed to purchase and has been purchasing from the Company and its subsidiaries and affiliates, a cumulative total amount of $48,000 of products and services, targeting $8,000 of annual purchases per year beginning March 13, 2019 per letters of intent under the Settlement Agreement. During the third quarter of 2021, in connection with the Company’s divestiture of its Piling Products division, the targeted annual purchases per year have been reduced to $6,000 for 2021 through 2024. The Settlement Agreement also includes a mutual release of all claims and liability regarding or relating to all CXT pre-stressed concrete railroad ties with no admission of liability and dismissal of the litigation with prejudice.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The expected payments under the UPRR Settlement Agreement for the remainder of the year ending December 31, 2023 and thereafter are as follows:</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:87.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><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:8pt;font-weight:700;line-height:100%">Year Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,000 </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"/></tr><tr><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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,000 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="margin-bottom:3pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:700;line-height:120%">Environmental and Legal Proceedings</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is subject to national, state, foreign, provincial, and/or local laws and regulations relating to the protection of the environment. The Company’s efforts to comply with environmental regulations may have an adverse effect on its future earnings.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">On June 5, 2017, a General Notice Letter was received from the United States Environmental Protection Agency (“EPA”) indicating that the Company may be a potentially responsible party (“PRP”) regarding the Portland Harbor Superfund Site cleanup along with numerous other companies. More than 140 other companies received such a notice. The Company and a predecessor owned and operated a facility near the harbor site for a period prior to 1982. The net present value and undiscounted costs of the selected remedy throughout the harbor site are estimated by the EPA to be approximately $1.1 billion and $1.7 billion, respectively, and the remedial work is expected to take as long as 13 years to complete. These costs may increase given that the remedy will not be initiated or completed for several years. The Company is reviewing the basis for its identification by the EPA and the nature of the historic operations of a Company predecessor near the site. Additionally, the Company executed a PRP agreement which provides for a private allocation process among almost 100 PRPs in a working group whose work is ongoing and involves a process that will ultimately conclude a proposed allocation of liability for cleanup of the site and various sub-areas. The Company does not have any individual risk sharing agreements in place with respect to the site, and was only associated with the site from 1976 to when it purchased the stock of a company whose assets it sold in 1982 and which was dissolved in 1994. On March 26, 2020, the EPA issued a Unilateral Administrative Order to two parties requiring them to perform remedial design work for that portion of the Harbor Superfund Site that includes the area closest to the facility; the Company was not a recipient of this Unilateral Administrative Order. The Company cannot predict the ultimate impact of these proceedings because of the large number of PRPs involved throughout the harbor site, the size and extent of the site, the degree of contamination of various wastes, varying environmental impacts throughout the harbor site, the scarcity of data related to the facility once operated by the Company and a predecessor, potential comparative liability between the allocation parties and regarding non-participants, and the speculative nature of the remediation costs. Based upon information currently available, management does not believe that the Company’s alleged PRP status regarding the Portland Harbor Superfund Site or other compliance with the present environmental protection laws will have a material adverse effect on the financial condition, results of operations, cash flows, competitive position, or capital expenditures of the Company. As more information develops and the allocation process is completed, and given the resolution of factors like those described above, an unfavorable resolution could have a material adverse effect. As of March 31, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,448 and $2,472, respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is also subject to other legal proceedings and claims that arise in the ordinary course of its business. Legal actions are subject to inherent uncertainties, and future events could change management’s assessment of the probability or estimated amount of potential losses from pending or threatened legal actions. Based on available information, it is the opinion of management that the ultimate resolution of pending or threatened legal actions, both individually and in the aggregate, will not result in losses having a material adverse effect on the Company’s financial position or liquidity as of March 31, 2023.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">If management believes that, based on available information, it is at least reasonably possible that a material loss (or additional material loss in excess of any accrual) will be incurred in connection with any legal actions, the Company discloses an estimate of the possible loss or range of loss, either individually or in the aggregate, as appropriate, if such an estimate can be made, or discloses that an estimate cannot be made. Based on the Company’s assessment as of March 31, 2023, no such disclosures were considered necessary.</span></div> 50000000 2000000 48000000 P6Y 48000000 8000000 6000000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The expected payments under the UPRR Settlement Agreement for the remainder of the year ending December 31, 2023 and thereafter are as follows:</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:87.233%"/><td style="width:0.1%"/><td style="width:0.1%"/><td style="width:0.355%"/><td style="width:0.1%"/><td style="width:1.0%"/><td style="width:10.012%"/><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:8pt;font-weight:700;line-height:100%">Year Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"/><td colspan="3" style="padding:0 1pt"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Remainder of 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;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:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,000 </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"/></tr><tr><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"/></tr><tr><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/><td colspan="3" style="display:none"/></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"/><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,000 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"/></tr></table></div> 8000000 8000000 16000000 140 1100000000 1700000000 P13Y 100 2 financial condition 2448000 2472000 Reclassifications out of “Accumulated other comprehensive loss” for pension obligations are charged to “Selling and administrative expenses” within the Condensed Consolidated Statements of Operations. EXCEL 77 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( .%CJE8'04UB@0 +$ 0 9&]C4')O<',O87!P+GAM M;$V./0L",1!$_\IQO;=!P4)B0-!2L+(/>QLOD&1#LD)^OCG!CVX>;QA&WPIG M*N*I#BV&5(_C(I(/ !47BK9.7:=N')=HI6-Y #OGDK7A.YNJQ<&4GPZ4A!0W_J=0U[R;UEA_6\#MI7E!+ P04 M " #A8ZI6[=90-NX K @ $0 &1O8U!R;W!S+V-O&ULS9+! M3L,P#(9?!>7>.FVAAZCK98@32$A, G&+$F^+:-(H,6KW]J1AZX3@ 3C&_O/Y ML^1.>:'&@,]A]!C(8+R9[>"B4'[#CD1> $1U1"MCF1(N-?=CL)+2,QS 2_4A M#P@UYRU8)*DE25B A5^)K.^T$BJ@I#&<\5JM>/\9A@S3"G! BXXB5&4%K%\F M^M,\=' %+##"8.-W ?5*S-4_L;D#[)R7_*ZA7&1 MI%.8?D4CZ.1QPRZ37YOM_>Z!]36OFX+?%17?5:UHN+AMWQ?7'WY783MJLS?_ MV/@BV'?PZR[Z+U!+ P04 " #A8ZI6F5R<(Q & "<)P $P 'AL+W1H M96UE+W1H96UE,2YX;6SM6EMSVC@4?N^OT'AG]FT+QC:!MK03621A'^_1S80RY8-[9)-NIL\!"SI^\Y%1^?H.'GS[BYBZ(:(E/)X M8-DOV]:[MR_>X%#BVR]*+ M41B1%G\@M MNN01.+5)#3(3/PB=AIAJ4!P"I DQEJ&&^+3&K!'@$WVWO@C(WXV(]ZMOFCU7 MH5A)VH3X$$8:XIQSYG/1;/L'I4;1]E6\W*.76!4!EQC?-*HU+,76>)7 \:V< M/!T3$LV4"P9!AI@S M&L%&KQMUAVC2/'K^!?F<-0HACA*FNVB<5@$_9Y>PTG!Z(++9OVX?H;5,VPLCO='U!=*Y \FIS_I,C0' MHYI9";V$5FJ?JH,@H%\;D>/N5Z> HWEL:\4*Z">P'_T=HWPJOX@L Y M?RY]SZ7ON?0]H=*W-R-]9\'3BUO>1FY;Q/NN,=K7-"XH8U=RSTS0LS0[=R2^JVE+ZU)CA* M]+',<$X>RPP[9SR2';9WH!TU^_9==N0CI3!3ET.X&D*^ VVZG=PZ.)Z8D;D* MTU*0;\/YZ<5X&N(YV02Y?9A7;>?8T='[Y\%1L*/O/)8=QXCRHB'NH8:8S\-# MAWE[7YAGE<90-!1M;*PD+$:W8+C7\2P4X&1@+: '@Z]1 O)256 Q6\8#*Y"B M?$R,1>APYY=<7^/1DN/;IF6U;J\I=QEM(E(YPFF8$V>KRMYEL<%5'<]56_*P MOFH]M!5.S_Y9KF4Q9Z;RWRT,"2Q;B%D2XDU=[=7GFYRN>B)V^I=W MP6#R_7#)1P_E.^=?]%U#KG[VW>/Z;I,[2$R<><41 71% B.5' 86%S+D4.Z2 MD 83 >LX=SFWJXPD6L_UC6'ODRWSEPVSK> U[F M$RQ#I'[!?8J*@!&K8KZZKT_Y)9P[M'OQ@2";_-;;I/;=X Q\U*M:I60K$3]+ M!WP?D@9CC%OT-%^/%&*MIK&MQMHQ#'F 6/,,H68XWX=%FAHSU8NL.8T*;T'5 M0.4_V]0-:/8--!R1!5XQF;8VH^1."CS<_N\-L,+$CN'MB[\!4$L#!!0 ( M .%CJE;(HO8VR@4 (\? 8 >&PO=V]R:W-H965T&UL MM9EM;]LV%(7_"N$-0P?4D4C9>>D2 XX3K\':SHVS#=VP#[1$VT(ET2.I)/[W MNY1MR4FI*T.H^Z&V9)T3'KX^(B^?I/JJET(8\IPFF;[J+(U9O?,\'2Y%RO6) M7(D,?IE+E7(#EVKAZ942/"I$:>(QWS_U4AYGG<%E<6^B!I^TYLE)F47^W%7735\6V)1")"8RTX?#R*D4@2ZP3E^&]K MVBG_IA7N?]^YCXOP$&;&M1C)Y*\X,LNKSGF'1&+.\\3CB M?_*T>;;/.B3,M9'I5@PE2.-L\\F?MQ6Q)PC\&@';"M@K 0UJ!,%64-2N&&SZX5/*)*/LTN-DO1=T4:D@39[89IT;!KS'HS& D'X4B7:*77 E]Z1GP MM+]XX59_O=&S&GU /LK,+#6YS2(1O=1[4):R0&Q7H&N&&G[DZH0$]"UA/@L< MY1DUR=?$9R[UB]($9?4$A5V 5L\_PYDV"GKE3G/#NR9BL,*4BP ]>V(>\UYHIT-B946OXC)PUT. ^&;H2XZ*VD?I&]QZ MM$_>RR2.@%YN%'"M,S'JT39Q14(498]O$^>Q>Z%I\"ETA/J^,^,Q^(=6 $1Q MA'F=<017SHBXS20V1L]RM5@Z,QX#B&A%1!3GF&][;@TP-/C43$/'P"%:\1#% M,>9UN FL%#PA?\>K^MD6=Z1]QMQ=]1A 1"LBHCC&C(J<\.9>'PPWZ%'FC'4, M#*(5!U$<8#[($-IKLI09!D$-)A?LO!OT:F:88U 0K3"(XOSR$!O .SDGE+V9 M_4RF(LQ5W22#.UEDA.5U:F3X]2U9<44>>9(+\J-_XE-G\F- $:N@B.'8 N@> MQ=F"3-?I3":NP T&X^G#O7-#X!CDPRKR83BF[)J0W#Z'2YXM1"T$-!A]&DYO MALXW:%S8-F'%.NP@UAGE2MEWL,V+5]&4L'3DSDVC!LLRWD,RF$5Y;"#*,>^:,++"*S^"ZF<,U"#SS , M!5B 0;0Q8/KFL;K\(>AA/+ M;HI]L:9/BSUY\GMN &*S8O%\$V?;K?J?G>F_$]QLZV3CUB_<['G0XX!2_[Q/ M>Q>7WJ,K;X5!#(>782JRJ-C1&R=\X8R"&]0WY#$H)Z@H)\ AI=RI',?:DNP7 M 6 VAIO.2:?!K&XK%I>US5@13X"#RNN,V\WG^I2XW6*BMADKY@D.8QZ( MJ2#B71:)9_*;<,XY#58^_ OZ[)SUG3F/P3S!WOD63B@[J-OOKM@I0H-=MTM9 M-W WZ'>%'F_OR-,N?L5)L":AW5K=G'Z6=\O3YF%QQNI5CV^.JC]RNW9JDH@Y M2/V3,YCPU.;T=W-AY*HX0)U)8V1:?%T*'@EE'X#?YU*:W87] ^49_.!_4$L# M!!0 ( .%CJE;FF.).C@< + ? 8 >&PO=V]R:W-H965T&ULK5EI<]LX$OTK*$UJ:J9*MG"(5V*KRD=FQK6>Q!LYN[4?80FR6"$) M#0C:\?[Z;1XB10*$G%E_L,6CT7P--/H] &?/4GW+MT)H]#U-LOQ\LM5Z]WXV MRU=;D?+\5.Y$!F\V4J52PSI,3F?')!WE^QJ&Q06?PK%L_YP34J0WF0\EMY<[,^G^ 2D4C$2I'B]]_Y;%3P$\\!S<263?\=KO3V?A!.T%AM>)/J+ M?/Y#- %YI;^53/+J/WIN;/$$K8IF(PX:D/E( ]HTH*]M MP)H&K JT1E:%=RHNJ;ZK6$$VQM!.+ZYDMH9! M$6L$5[E,XC77<'/)$YZM!%J6CG-T@KXNK]$O[WY%[U"K?.SF08, MI:?9JOG>9?T].O*]/[DZ18Q,$<6469I?N9M?BU7;G/:;SR#R-GS:AD\K?VPL M_$(ID6G$\QSB?&^+IW8PMSLH9]G[?,=7XGP"TR@7ZDE,%C__1'S\P1;=&SGK MQ +!6T>Q=N57KLI2\+2@/HO.9D^'T5B, MPI"V1CV4\Q;EW(GR8K62!8""&K$2@/ A$9!^&12T7SY)+9#WJPUN[=,[0.+- M(SP?X#6M0CKW/#M@KP7LN;M59EI!-6IRJ >66<%Z!@Q&* X&8"U6S"?,#M9O MP?I.L#?9$XRX5+'H _6M0'VSO^9>-.Q5TRKP DKL0(,6:. $^EEOA8(">#@] M;1 #X^.$A/,A1)L5]D<@ABW$T GQ7FJ>O )B:'X\]$@8#C":9A1[ 1N93E$+ M,G*"O%/ ^$J_3-$.*KJ>5@6@G/N[M$1=Y8 -=&0.:ACY>(#9M H]=M#[/<@$ M=YR$W8,/D+F.LT>4"*!HI$HN/I&;DP)N#J>9E7^PV=^^=S!Q&IZQF 4T&LD) M(Z^*1I_T:$\E;>^M%V]$FT1-^_5(Q)GFF>/,=!)O_*-0&;F;*1 *4/(%C,6LK$DZCB0 MN$GP6FP$E)4UTOS[/N%KN)$=KLELPZEJ,:%C$[6C/N+FOL-DM^(R28PR[ VA MV:S&:)ET5$?<7'?_^?[B%ETLEQ_OEU9P)G$!P[)@6)AM=K['"!X!V%$<"5XE M/I.8/\1)K(&4[17#294_7#'>R%L_Z(XTB9LU6WVWXR^EN+,&;'+A//0\HV#8 MS((Q 4HZRB1NSFQGGQ*@E@H[1)/Z"$A)?PC18A;-O1&(M&-(ZF9(Z$55 $+H M1"6A_%:LGNX2^2($>A"9V,3V&4E-VIN38 C;8D6PYX4CL#MRI$XZ:C-^)U6U MB)<;6,?7D4 )T8FH1$E=Z8A=/#=?Z&D.C(?5[IA5'__!:M%-=WO\*=>%JB9L M&4(BL\<3+52*UN)A#S^PHST>#]#4TN._N@YICQ6D2&X&* M9W2SQ@8D;H9L2I'T/$==?-=%X$T86LN",2##=;C-R@M&2AOKV)!AIY!::KGZMI7)6JC\YY]"2H(/ MU1I7OUCU%'-RZX_JJ;?RUH^]HU1VA%)EFL*TR,LN@$4^5^B))X5 [_ I)K#< M+_16JOB_,%THGD(^EW\HWW+ \J'Y17&>E_.):_0G5ZMMC6Z_25MIBVNQ$NF# M4+U7=(H(F1+B38,@:IW)0N>PU%J7B?YW/.)IB*-I0$AE!K=!X$]#&DQ!CN4[ M46W[)R_6<35)_["\-\/E-NJ/0B<,F%L8W/%X?1)G:,5W,5"7%9W)ZG,<>08^ MBQEA>&0^LX/-7S?]?Q&:PR.0B5QE,#;V75\+GU."#85BM6/$'ZGWK"-^=H3X M%93&0KW4^0P+=64JAQ./ M!,/B9C/SZ7R$05BG+YA;7X#6+](BJ$3F]L$T5<0) M!!P-&<1J1X@_L@!GG=Q@1Q;@E8J[/;T\1;_!& )P*%8[GC6C:RW8UD L"H3Y M/C:.(VQV 0E&EBVL4R',K4(^R6Q5[O+#2JNL:G$&L8CLQ_]@UUK$QD!-HC;;N=%8UW;R0SFEAGU)LWMS<7ES>W-_69]E0 M3Q[C+ ?9MH&&^#2 ;E#U\7!]H^6N.F%]D%K+M+K<"@XC4!K ^XT$==KV M[2']XG]02P,$% @ X6.J5DY/BZC; @ ,0@ !@ !X;"]W;W)K\T,TI$TX\KM9F*A[+TG F M8*:(+O.-90< A,9:!XL\:IL"Y)4(9OQM. MI]W2 G?'6_;;RCMZ65 -4\E_L-1D$V?DD!26M.3F3FX^0>-G:/D2R75U)YLZ M-HPU[7>_K/[/F%JAX)^F?$]_R@ M SY]&7X#20OW]^$NNF]3X+PR_I_(]M(0M&D( M7F+'2LAS=(L5E]R?D8(JLJ:\!')2ZI04H.K7?=J5@YHXJHCML;&.O9[7'[OK M76]'@O8T#UK-@S=HKNN1T-)D4K$_6,8G3#2KG;IK\N&.)#S\JNM ^RL"]_0/ M6_W#M^MG6I?'M0^?2.KC-8RBBP/MKPC80J]9FLNIM5-J_VC;P,YKDUFQ2?'L1LPD_J#3)V8M \I!E5'R=LY2?IA:VSA\^)MN= MTA_LV61/MVS)U.?]BX"277N)DXSE,N$Y$FPSM9[PXX*XND)A\6?"3O+B'>FN MK#C_H@OOXJGE:"*6LK72+B@\CFS!TE1[ HZ_*Z=6W::N>/E^]OZVZ#QT9D4E M6_#TKR16NZD562AF&WI(U4=^^HU5'?*UOS5/9?&+3J5MZ%IH?9"*9U5E(,B2 MO'S2URH0%Q7 C[D"J2J0=@6OIX);52@B9Y=D1;>>J:*SB> G)+0U>-,O16R* MVM";)-?#N%0"_DV@GIHM>![#H+ 8P9OD:1)3!86E@@>,EI*(;] ?>R:HCKI$ M#^CS\AG=O;E';U"2HT\[?I TC^7$5D"C?=KKJN5YV3+I:=E%'WBN=A+] @3Q M=7T;>E%WA9R[,B>##C]0,4(N_@D1A[@&GL7MU3W^/G%%4Y1# M)DJ:,F. 2@=!X4#GVW&&L>]%T<0^7G)WS<91./9JJRL\K\;S;L!;";1)G0_$ZCQ"5CW$+K6N' MZT,+:K1@$&T)RTZ2;Q',?$1C2,M$*ITA1X;8ZU[GDS&809<8>WJN7A%WK7!( MQI&9.*R)PT'BIXP+E?Q39/&9T808=AMW []%:##RW, ,&-6 T2!@M<9 4,L1 M1W$XJAT3->!=DJ]YQN[[22MW5Z@1:2>XP>K!#]P>V OQ MP8.P[W6&KQCL1A@J29&BK^;DJ5Q=#VF(29O49.;TK9:8-*CD&V-_Q@/@G/6L M2963ZSAY[37):.7T9#AN! -Z6WD/+[&<40?>:(7]'OA&N/"PMC@:SR/,(-@\(:022# OD MC1M?TE6\,'(Z6R?".O)YI0QIE),/*6$\;/43)NH=QT,=_G3G?R]MUCQN! M)<,">\/,(5W=Q,'8=]IC8C#SW+!GMT(:?26WG.B^/7,,QSH/N^T%QV1&?(>T M*.V+LWW&Q+:X\I! <3:NO];7*D_%94+K^QP_+LK+D<9->5<#)]]M F?[ ME&W I3,*(7*BO/XH"XKOBQN$%5>*9\7KCM&8"6T _V\X5^>";J"^A)K]"U!+ M P04 " #A8ZI6([@N1\D$ #A$ & 'AL+W=OLJYT%,O,V9][OLZ MR6A.=$^NJ8 W2ZER8F"I5KY>*TK20BGG?A@$0S\G3'BS2;%WJV83N3&<"7JK MD-[D.5'/5Y3+[=3#WLO&'5MEQF[XL\F:K.@]-0_K6P4KO[:2LIP*S:1 BBZG MWB4^O\8CJU!(_,'H5N\](TME(>4/N_B<3KW (J*<)L::(/#S2.>42"S()K.)?^3I2:;>K&'4KHD&V[NY/8W6A$:6'N)Y+KX MB[:5;."A9*.-S"ME0) S4?Z2I\H1>PHX.J(05@IA6V%P1"&J%**V0O^(0K]2 MZ!>>*:D4?K@FALPF2FZ1LM)@S3X4SBRT@3X3-N[W1L%;!GIF-I:^TWG=; MMVGA7*])0J<>&-94/5)O]OX='@87+NIO9*SAB'[MB'Z7]=GOD,4XW!T7R5)S M6&C:5/4X.POQ"$_\QWWT#BD\B(>U5 /6H(8UZ(S/5Y-1A9)&8%@9F \6[L=3 M)&@1/$.>SEW@!V\9H3[(4&A_U1*WZ'0F=Q'+C#-ZHQCSHQ/P@H=YS]"TFK#!=:0;5# M #@A.D-+*&PHH^F*ZOTXH@45=,F*Y4F ('.A$QS'IU#*])H6M8@_NWB.#BGT M<=SB>2@T&& WS;BF&7?2G+?( -"$$ZW9D@%S(Q$E2C"Q:K*D3VN;W/=9#H?_ M3S(^P!^T&!Y*C",WP7%-<-Q)\*[FDY3W#3"OJ_Z",[)@G)GGO4NH7T4ZK$+; M(OV+@_55-[[OV)F=QP>.Z+=]Y1 9NWV%@UW5#CK1?).&\%;2.I9;*U.-.XNC M(&S!=(J-1D?"BO<:#-R97V\HM M-I-6'6F598HQBBXTA"TYM4(6$?6&4Y&!J M!5*&0NR,,_569[]1[GTK:TU/A3M/A:\JD*_UB-,AH2.*XW:H'4+AD3R,=WT. M[NP>?J9Z5)8;WT@;\Z%(/#@">=>1X.Z6Y#*7&YM*?L;A?8?#!VWPAT+#8^!W M?0ON[ 5F\X.O_X#'3>^JASY)#?"+UI,(9[ZO#FHV5F'<+M].L3B*CQ"Q74=S M9U?3<7=1AV3;K@EHX:P_"E%\@6 \KFN) M7'"VJBP215&2$;4J2VAE^9Z64;>5@Z0PGL\A M,*XW(WA3C._^[NAR^(>):,7 79PN 4;0&\$]4.4\72Z,7!<3YD(:F%>+QXR2 ME"HK .^74IJ7A3V@_J_&[#]02P,$% @ X6.J5D&6!MK: @ <0< !@ M !X;"]W;W)K:R<-_=8>>$G\<>_Q.=?V\7 IU9,N M*37P7'&A1UYI3'WE^SHM:47TA:RIP)E&!%:>R GPQK4M I-8_U1&'/ M[U R5E&AF12@:#[RKGM7X]C&NX!OC"[U6ANLDIF43[9SEXV\P!*BG*;&(A#\ M+>B8G';7,B*9CR;^SS)0C[]*#C.9DSLV#7'ZF MK9Z!Q4LEU^X+RS8V\""=:R.K-AD95$PT?_+)S>PNG)&9P M$_"UE'--1*:'OD&6=BT_;1G=-(S" XPBN)<(K.$C,LLV\WU4UTD,5Q)OPJ. M]T1=0-0[AS (HSU\QJ]/#X_0B;J*1PXO.H#7E7:WLG\)_[ MJM>@]_>CVTM_I6N2TI&'P)JJ!?62MV]Z/6X%V Z<<#]89X-U.B2XA1X.!DF8%/0=#GO>5HL&/';ZUJT42#/W%NK[= MB-[E91>S07O0T1X)*?1RU).M&8Y0R5& B5*,%'H@[0;_,$1VKL1<;R? M==RQCH^R?NA(IL3Y)QZ^NC5CSLB,<69>@&2_T'*:>_\:)?%.><,M);L1O6TE M_II[5505SM0UI'(N3'/+N]'NW;AV=KDU?H/O26/__V":QPCO<,&$!DYSA PN MWF-I56/P3&PO=V]R:W-H965T&UL MK9IM;]LV$,>_"N$50P?4M4A*LITE!EPWZ0RL:1"GW6M9HF.NLNA1=![VZ7>4 M5$D6*28=_":1[./I?WRXWY'R^:.0W_,M8PH][=(LOQALE=J?C49YO&6[*'\O M]BR#;S9"[B(%M_)^E.\EBY*BT2X=$<\+1[N(9X/9>?'9C9R=BX-*><9N),H/ MNUTDGS^P5#Q>#/#@QP>W_'ZK] >CV?D^NFKXK@(9AUE+.%2/_BB=I>#"8#E+!-=$C5K7C\@U4!!=I? M+-*\^(L>*UMO@.)#KL2N:@P*=CPK_T=/54>T&H ?>P-2-2#=!GY/ UHUH$6@ MI;(BK(^1BF;G4CPBJ:W!F[XH^J9H#='P3 _C2DGXED,[-5N(+(%!80F"JURD M/(D4W*P4_(/14CD2&[2(\BVZ@A'/T1!]77U$;]_\AMX@GJ&[K3CD49;DYR,% M:K3/45P]^4/Y9-+S9(H^BTQM&/]O7L?/4'NOKSRU\K='7[Y3/Z20(OZ @SC?"43NS")K6PB5/8 M?">DXO_V"IN8SZ1A5YC%R*<]RV!:"YLZA5W^<^#J62?Q:E0AT6>P$MH8X-D# MJY:*3?O4,MSCCG2+S61L5XZ]!EJ>4_O;3Y%>B<5BA5H@CU*6(\ 02GB^%W!; M8 N6+RQ5]?P.[=,H4^\*"P9A[W5$5F)YEHC\3D06(T)[(FIA&#LC6BD1?Q_J M@B1!,!I0I>6]4Z9RU18PF1@J32,2],QE3!J9Q"GSSZK'HSR'9)EP/3VX.DA[ M.JB<'6GPC'1@L?)Z=#;LQ2_ =QME]TQ/[E:VUIK+:9+R:,W3_LR-3\K@4WD[ M[HN&PMB-X7DZ1U^ /N_GW16V9A T#8#IS]J')N.%XVJV[;%9^Z/>ECX:%V W#4J6FS,M" M3>9!*C:GHVDVP7TZ&S1B-QOK);./GGO7BTDV?TJ,GK18A9.>_$8: !(W .N* M3#*8E@>K0&*!V=CK\MEB%4R]'D*3AF?$S3/H07D ?="!4J1IB=[=/A7/C*$U MR]B&V\>=F-P:AK15\U>R+68^[EM'I $<<0/N>!VU.&'5:I)K2*:3[ARPFM%Q M7Q\WD"-.<%1:4Y'=#Q63NQ?54DMB;*WI2JQI-<3%CM@JMJ$0>7DS^).;*FL0 M)G["*27=("R0&H=]%3-I($7<6\?NGGYY_>UR]9H]/3GI7O!4WHY[H4$A<:/P M1HJ8L21'&REV""9A48#_OXJ;F#S$QEHW;6A?!FV 2=S 7$1[KJ(4L2>HM9.R MAM65[?\(P0++<-H%E;2]ID$K<2#T>C/4AA^^A1B\W0EQO(>SKR.1F M0/UNM6*QPG@:]&AN\$K<>'TA%Y2[SE?D AM;0R/[6G:@0:N..#[<:PA,O9]* M!5?+Z_GUXC7'>TZR__3YWHF\'?="@WGJQOPM \#7Y\0)6UM7"+7 .@BPL1.T MV5%O,NV!#VVH3MU4/UXDO3)-3OOP^&XZLIC1@'H]I0=MG1>[<7XG690?Y#/* M]5D S'U(.HX53"V@IEXW[5BMICVE!VUH3MTT7]8'0\VQD=*%GEZU/(-R!+ZV MJC;)3&DW[5B,>O(];=!-W?O+.N::=?38\B[+XY9Q#+7M03-KU416":>=[ MN&\B-^BE;O1>;C8L+OJ430R5UP7 BB UM(H+3:X'H'//"1ZUX->< M\*_G+VWX2]W\U>.1L%C/^>*G3<-XT: %,W@)T10#GT@G:3J"0T M=N86JZ/CI.-72@UW?3=W5X?]/BU>34+Q!E5.G I(FD7U602S2<$CS\H7W) [ MK0SV3\K@4WD[[I&&P;Z;PFUO'RS>QBGW2?<=@L:)AWW UY/7=Y%VV MWAA5!Y#=E[V52&)[UV>5_\3"!'Q9E.^3ZY_K3^*<*\ M> '?^?P#/EN4/RAHW)2_;_@<25CG.4K9!EQZ[\?0;[+\R4!YH\2^>.N^%DJ) M77&Y95'"I#: [S="J!\W^@'U#S=F_P%02P,$% @ X6.J5JFO:0L8!P M]S, !@ !X;"]W;W)KBWITE!AI;+P&V+FC:[;,BT;96270E.F[VZT?)JAV1-!.C5R"()?ON.?+X MD#H^H"YWM/[2K EAZ%M95,W5:,W8YF(R:=(U*9/F'=V0BO^RI'69,'Y;KR;- MIB9)UCF5Q<0T#'=2)GDUFEUVW]W6LTNZ945>D=L:-=NR3.K':U+0W=4(C[Y_ M\3%?K5G[Q61VN4E6Y(ZPSYO;FM]-#BA97I*JR6F%:K*\&KW'%[%IM0Z=Q=\Y MV35/KE';E7M*O[0W-]G5R&A;1 J2LA8BX1\/9$Z*HD7B[?C:@XX.,5O'I]?? MT<.N\[PS]TE#YK3X)\_8^FKDCU!&ELFV8!_I+B9]AYP6+Z5%T_U'N][6&*%T MVS!:]LZ\!65>[3^3;WTBGCA@ZX2#V3N8+W6P>@=+='!/.-B]@RTZ^"<.U?S7G/NQV9Q6&6,?W"*L@;1);^C MZ9/M:M$G:=^& MZWT;S!-M^$194BC>K3;.M'T_V(=+[OT_3;;DMNA'[BZU)S0>QY$O8NEU; M'@CZ@S:J5L5ZU ^T2FG%:EKP7U;HIF*D)@T; DTXSPYD,P]D,SMD^P3R-5GE M59LKOMP42942E#"T(.D[9.&WR#1,K"+/'M/M,-NE^&&&?-)LD)5T]G M,#T< MVWY_5>3)?5ZT!6N2_:!+3S)Y]J Y_()$BR ! LAP:+GTQH# MQ1NPQ#NPQ-.RA.]_^>ZVXCNMNB95^HA8G50-KZB[?;66,)Z\0$)%D""A9!@ MT0OR&@,%'!!H>B#05$N@N< -5).T2)HF7^:<4XPB$\*(XW0M:S3KAD0ZE+ M=CE;KTF1H26MV^I9O?3TP09KIS7U!2+IFW0NDU0QL>5Y@J@"&C14!)U*R@MH MR!@*;4B4)SHMUA*E4VW&K4R?=5LK7MYV58J2!EC*CNE(+-#&.YL%+P@9@(8, M0=$B4+08"FU(EJ/.BO5":U!E@LKZ9U(?5%93R1E3&D#L8W?JB;11V$DZJ\+( M-K%CB7Q08+D>_Q/4$X7=>&H:ACC?%69XBK$ %ROL'-]25X_X*+9BK83VO+BM M3KLEI\#R''G-5MC):9>-;&P94MH56*;%QUI,NVPW=DU;2KO"S,18*ME5K3LE M->&CM(CMGRER8T@Q;0Z*M@!%"T#10E"T"!0MAD(;,O*H?F*MKJ55NWM78:YX MXO90'^%L'H%JE^HN.*:X>(#*DJ!HL:H+>'IB)3H*CMC]6;(WAM3J9H&@A*%KT@MS& M4!&'=#F*GUBO?OZ $(YE80Z;DN*ICW\V=T U3U"T$!0M4F;7EK8TLI5]XGEV ME#.Q7L\$$\2QK,*-;2SM<$#U35"T !0M!$6+7I3=&"KF\-S74>8T]3+G#VGC MIBSV28>_0"5-4+0 %"T$18M T6(HM"')CA*IJ9=(8;5T4U8TQ]B3B >JHBIC MFI9PFB@ #1HJ@F)#/,$4@<:,H="&3'ER#E6OCYXCIINR6NC[MD@#;;RS:?"" MD %HR! 4+0)%BZ'0AF0Y"KNF7MC5B^F6DC-[Q,$18LLSL$0;A9U\:%DVLHVI M6& '*BRS/9 L'EN6[<8.]FQQOBO,>'>GPKH0*ULG'L68/'E!H7TEAB=PE5<- M*LB2>QGO/$[U>O^6R?Z&T4WWSL(]98R6W>6:)+P,;0WX[TM*V?>;]C6(P[L^ ML_\!4$L#!!0 ( .%CJE: R5-6<0( /(% 8 >&PO=V]R:W-H965T M&ULK511;YLP$/XK%I.V5MH* =I5&4%JLD[;0Z6HT;:':0\. M7()5@ZE]A/;?[VP(2RL2[6$OV'>^[_-]A^^25ND'4P @>RIE969>@5A/?=]D M!93<7*@:*CK9*%UR)%-O?5-KX+D#E=(/@^#*+[FHO#1QOJ5.$]6@%!4L-3-- M67+]/ >IVIDW\?:.>[$MT#K\-*GY%E: W^NE)LL?6')10F6$JIB&S"/Q7K5?H==S:?DR)8W[LK:/#3R6-095 MV8,I@U)4W2"<::APYON@(WU#, MH[7\=;,VJ.E)_QZK7L<>C[/;-I^:FF@=>.G;-Y.KX-.8]/]$]J(0 M\5"(^!0[/;:RI-;MW@D3QC2T5.#JTCM;@44!,F=G8A]X/E:3[J)+=Y&=5+LT M"J^OX\3?'8H=B8KC.!BB.A7^0?N4H+=NJAB6J:;"[M$-WF%PW;A^?>6?TT#K MYL]?FFX:TI/:BLHP"1NB#"X^4DZZFS"=@:IV3;I62"WOM@4-9= V@,XW2N'> ML!<,8S[] U!+ P04 " #A8ZI6G-SC<64$ 6"@ &0 'AL+W=O5%*9;#Z-?"AFV9 )D:8\,(+$WRV]):T9 M"#2^M9A9YY(-C[\/Z.^C=FA92T]OK?Y#%:&<91>9*&@C&QVN[>XG:O6\8KS< M:A]_Q2[MG# &1>'^0MRC*A MC!]!F8B/UH32BQ],0<5]^P$8=;3&!UK+\9. 'Z7KB\FH)\;#\>0)O$DG^ECG-,IP%3^Z6 MLOGS9Z/7PZLGV)YW;,^?0O_/2?G_*$OIE1=V(U;,VF >1^.WDG Z*M14*-3U\>D2LD3Y^"%J6\);$F,@(AJ:7#/F4BL"NPFU#9H8SC M-A.U4P"I-7*Q)4-.:KWG=:I#L@T@]ME$(M&/%R^>/[L8CX=7/RX6J_@YNGHI MT)JP.Y!3E=ATS)1)+2N>?5,D[XRH#-+>Q*;@1;""3[<8#<\^Q6T+%U2N*>7R M@D-U3=M&)YR;LS_[8A$508#>]QAP+PHKC T SG53()9:LUWR=9_$QMJ K5#B MZ%NC.$;KO6 U407G0%.@(QF^"W!?<*+V)-T9 2H_3LA:ZACBU,@Q)\5.>K0G MAYX'M\Y6XI#34]@]L6Y@9T'LH9)"^5Q;W[@3I/OB0\J2K95AC9!=28-NSJB] M:$\^J"HFCP,@BR]H:JE@7K $Y6,MP-!PI#1\Y(US/(=2<(W4_F74JB &G@WE MY#WNCQ@P*392.5$?5?-1';8RBK[XM49Y14?8B8;MHS4S#Z4C$E5J7\3M2Z#Y MY&77?00J.0;EX%FA2I4I5"[Y0CED^H ;2AD0@ST8"+JK M :Y:DTN5=O#&2<8)_=1(AX*&IVNJK0L"NK[7J2]MHPOVP/L*->VPH.,XU_.&,;UTVQ:.;6+AVI MXM7H J'3\=UP2^ #5R?"$'$4@G@OS+Y9HU(5JH1\_]15,#BZJRMRV_@B81 T MQ71M=[/=HV>1[OKOV].+"76Z13,3FC8P'?;?O,J$2Z^0- BVCC?_V@:\(^)G MB8(AQQNPSJD_#-A!]Q2<_P-02P,$% @ X6.J5G;(/Y%F!P [1$ !D M !X;"]W;W)K&ULE5AK<]LV%OTKIE698BP^] MG-B><=QVMK-)ZXG3W0\[^P$BKT0T%*$ H&7]^ST7("DI5MSD@\W7Q7V>>RZ@ MJYTVGVQ)Y,33IJKM]:!T;OMZ/+9Y21MI+_26:GQ9:;.1#H]F/;9;0[+PBS;5 M.(WCV7@C53VXN?+O[LW-E6YGXQ?CF M:BO7]$#NS^V]P=.XUU*H#=56Z5H86ET/;I/7;R6ZLOZ_V 79]'(@\L8ZO6D7PX.-JL-5/K5Y M.%JPB+^R(&T7I-[O8,A[^;-T\N;*Z)TP+ UM?.-#]:OAG*JY* _.X*O".G?S MMK%X8ZUXH#5R[>S5V$$M?QSGK8JW047Z%169>*]K5UKQ2UU0<;I^#'=ZG]+. MI[?IBPK?2W,ALB02:9QF+^C+^A@SKR_[BKXV-/&!MMHX5:_%?V^7UAD@XG_G MP@W:)N>U<9>\MEN9T_4 ;6#)/-+@YLT?UL]OE.%^%B2 MN-.;K:SW0EDAQ;K22UD)1WE9ZTJO]\+JJN$VL6)K]*,JR B]$E2OH8H,%1% M5SPR-87\^"P+ K#X3HHM7)%;A^!+BHE MEZI2_.!5D/$,5N>*Z M8-)S^+.BTKD,WJA:_(Z82W$+I2J7D7@ %QX]_M(84&KPZM8J>3X;MJN=(8\R M1)Q#1-?^)7QW1WX,Y2CD'AZ#2=D'SW;**51E9?1&[$J5EU#V2'5##((UU62D M0RW9$7H"RUL(2\/+\\;XF@^7(ZS4E@1?U$*'98 4M+9)#M MZL9XF&FQ)($"<=)A$L^^]FW*0FJ'^4A :1MXH6QNR)%8J1H84 #_L4UNBD>I M*KFL@,Z#UWT5.%AZE%7C#;*7)2G3?6> KA17J'9&+9LN#G>FL) !=%7A%;6Y MA$F(&DX\H'A2D @O'1K0NJC[[.03M4'F9!A_0H?ECC;!5> <./".RE.+F&#* MO@@Y0"?73>WCWV)=KEI8%(0(PCF:EXSC4M-/F[_5H.[HX]^K6OR(/# MBZ"%,XG @BUNT]NZ;B 2*)SCXIDLDOBG?_DJLY4]28,.P QBM-%FB92T4R0- M$3\'\6DC_<.W&PPP#@[%WR'_0J*1-""WL[U!:%.Z8,;T#4K%:U@Q1"?S\-RK MW['9>I 5]6D[@MQ]@-+PG;9V]!V2'P#?2'SL&%UU$'GHR/F5F$VB;#'!38KK M@E]DT3R)<9-$<78)A92#I;D\H5GN.Y9/)U&*%<-LLAB)9!K%6#6<7R8CU(RH M.@BRQ?&]2.)'B>KF( MYI?LYC")+N-XU(?>=MFP\@%[6FLK"CQ%7"%;ZEW-?/%(OEVJIF#P]DR1:X/R MXO8("EVG'?=]3X>8(QW%'-:6V/Q^;J1!7XI54^>!^#T!%Q@4N0,?MJ/OF)@Z M3M[[;CHXQ9M*WZJ='.OW+1CUA'W,+)$ _GI=+8*772,V-;?+3KE2U5_08F^( M7Q_"Z56Y_9:Z\?\EJX8&:O/2.<\T1T]MECLN.BC.,4G;O'#$EK:2WU?[GI]\ M#8^=O!"WB!G1YIC=P0 "?-Z4F.%?XN%;^-9YT'U?__(FU'/($3Z^0"+TG>.- M Z0[)/_65DY)$0N)!S M$8)65=7PEII97UI+SS:*3O &]O)/&@45B*,/>GMO/BQQ([)!R[OX[G-RQ MMP> R6!OWV?FW;N[ U$,N472^$TK[)^2-P'-K^#99,*S%TC/>;LPT"+?)N;(DSXUI6 M_*XWA@&(HX#\B];!L'5I ^R#V%(8'>_O,:GG#E,57^3>T[*CQWS!L? M'<&QTU_['QJ8?4#CX33>O^U_R[@-1_B#>/@A!&!8^S,%K; TOIA/!\*$'Q?" M@]-;?Z!?:H>CB[_ED4&&!?!]I;'Y:A_80/\+S\W_ 5!+ P04 " #A8ZI6 M UL\DN8( 5%P &0 'AL+W=OM+FB]T(X=CS5M7V>K1QKKF<3&RY$5MNQ[H1 M-=ZLM-ERAUNSGMC&"%YYH:V:I'%<3+9IM< MWN:TWB_XFQ1/=G#-*)*EUE_HYN?J>A230T*)TI$&CI]'\4XH18K@QJ^MSE%O MD@2'UYWV#SYVQ++D5KS3ZN^R*>DKM;+^/WL* M:_/9B)4[Z_2V%88'6UF'7_[=N/HE'4>_$U<1!&3V:E*W@;1!,OR&8L8^Z=AO+ M_E!7HCJ6G\")WI.T\^0V?5'A1V[&+$LBEL9I]H*^K(\L\_JRER-C*Z.W[!U\ M-<@ H.LV[)W'51CVC[=+ZY__\QP 07]^7C]5RZ5M>"FN1R@'*\RC&-W\]$-2 MQ&]>\#[OO<]?TO[2OOPF0?:P0>A:H>ADO6:.+Y5H*T_^2UCF\/J=WC:\WO_T MPSQ-9F\LJ\$!EBN\7>Z18Y^U88W1U0ZP\;IB%*(L!2NY$VMM]E!OO)Y&&*DK MRSP,M1/5):P;(8XRQ&\K_4O9)RX5NPN:K5?]1Z677+$/1H9:_W8?7 I*[K7:D;1E\RC+"I:D43Q=>&O104@* M&X7EG6R11]D\9T46S9(8?HF26T<94QKA!+O=254!0\N2.)K/"[:(%K.8_8+( MS=>K^["2+,KCE$WA^QFE_;(TC]+YG"58!^,?^!(0 %^XYX08H 3;TV1&,15Q M#CW<>9G:M(CF28$MB>)9SAZTPPX<4N"" M)7 JGQ/PBWDT6^0^I7Q:2+=G>G4VATR;?M*&PFLZZRBSVJZ$,8AMD$TD@?2@ MITZWA"<,G$7.L49+^"EKYM 'QMY^:P]2I5[7/I4[DQ#QV3@4HH=/&UEN_*M. M/=-+AWYE64FT ,YM@^FR'7G=NA>UT@AG+6IAN%)[/!+UT7HG':JKX=929>EC M6[L&"6TWLO&@MR73U=*&H]B$J(]0&(J/V<\U4W(K*2>00Y2]P5RE8:S6KD?6 MPSK G][U,%5L5SN4W9%K9!TK!/IB-0RHA;\25JYKGXW-9F^1F(HIC?1$D8W9 M7X9L0<+ FZBFQ;+W"O=K3?1PM.M/,(V_P%#V/Z02M KL2=W"D_W1'U1K5I9=*KGGH M"3NJ+Z1OO?Z]$V;+^!HX4E0VS 02%P/Z,6)0\!8Z[$H":MV%,F9=HWU!\1%K M#$O14J'P&B V.\>V 6(_75:!+]IB;+3Q_1 UA"%E!X!*;4EQ7>Y,RQ;"PA]? MI,Y#"+'/&'G;E=J\:*?5JO@2"X,$%2:A6"($-&&R?6IBL#P"2^" 0 TR: Q\ MV9D:M CPG)+ C @/R0; *G;Z"IBMA&E7!%#8J=W-055(=Q'HO1H M"'CG<\_!O"Q%XWSH5&ZM%*7+KSL9ZLX>DNUL#/\C+KT[VO-0CT3R][X>#^/; MX>I0V%V"$1I4L1A#DH0N%E&&A4D^CMF/N!L7^#F(':%(4EDR)798S!.2P;\$ M_X(KAW@[@FAI]**CD'0^3J$^B\(J3=5L>V/>: M$A)75BM9^WX_/D!;RB]W&98:+^S?56VH5T>SEMO_8->._=A MO0>,VR6VL^]9V,,L*I+,)QRO*AEV@$;"8]4LP8 ;LX=VNFBGS.-%J#?5<0G* M2^^HC@];QU[!U*)X?>+4R5!Q09=I//LO@1CLU "-/Q^>_@9(BFB&.CA3^LO<;0B,X.UNER]WQJ172/%*+ SK!D@CK,VH,.KSZ#L3P;=8E'4DLB M1-)8@;70)1R1_BL+SBICH$$%@KQ$:?R BSTXQNM%8^PK7P4 =WZ- ]E+< M,"/M%[]EAW!#?5;8,Z7;@\6J[6(#\-"[>F4;B89C_ Q_X#A,Z>C=Q'\E!@I> M[H?=WG:LT3N\Y68MZ:SB.VZ]C@B%)Z$4_=+VB&>@YWA0O>%N:*KA#KVU#E/E MJ2:84@%=24E(A5L!"W_5"^JE_\KB^8[*&5'O!3PP#17]_O;1]GJ. MW/<#51V^= 1%5&@[G]#PJV4DC!UGDCDZFG,V'+G08!N>/8P8""[2Z0+S?T*2 M7\^D-;)LD%?^$-?ERC>FV<&QE"NKZ>NHZ.9!.E'R\@LF?SA[Y,9\O/BQ&Y). MJK&5\*/$H.3:6=*&S21(.7:HE$VW0#P[0=U+['5]&PO=V]R:W-H965T_8"Z&2ES:U=,#OZ4E?*GO86SBV/^WU;++@6]D@O66%GIDTM'#[-O&^7 MAD49E.JJG\;QL%\+J7IG)V'MRIR=Z,954O&5(=O4M3#K"Z[TZK27]#8+'^5\ MX?Q"_^QD*>9\S>Z/Y97!5W^+4LJ:E95:D>'9:>\\.;[(O7P0^%/RRCYX)Q_) M5.M;__&N/.W%WB&NN' >0>!QSY=<51X(;MQUF+VM2:_X\'V#_CK$CEBFPO*E MKC[)TBU.>^,>E3P33>4^ZM5;[N(9>+Q"5S;\TJJ5'60]*AKK=-TIPX-:JO8I MOG0\/% 8QT\HI)U"&OQN#04O7PDGSDZ,7I'QTD#S+R'4H WGI/))N78&NQ)Z M[NR-UN5*5A4)5=)O;L&&WBDGU%Q.*Z9S:]G9D[Z#)2_?+SK4BQ8U?0(UH_=: MN86E7U7)Y6/]/CSQ9UO\_?8XIN%DPS7:'-I9J3$WXK0"AL0H>*!338DE0TWP!. M1254P31=H\67VK1JEN=H? >N MX; L8.3*<"&LHTNM"L..L:#+IH KUXZYVGUZK?_#1.D_0EWC(L91EA;F J*/2Q,:R* M-:&0E*U$F$>R!LN.DBS>*FZ>?NVQ ZC_8K%M %A(XR@>/6U]/,Q"/BXUK*BU M)] /<+LCWIN7)D3LV 8>5".J:DUE8T("0SH;XQ9TUPCCV+0,B\KJ'9Y$.HRL MG\&5,Y*.I,6LA"A&&)? %JY;K<$15?*681G+BI1V[7YP %AT+ZJ&/0NBJQ'O M7J-:_8JM;15#B0ECUGY;U+I1[HA^1TS2"3_Z 58X;1"I\;1:*'I7],XQ6BTX M%/?_X%H$8Q(YE:JHFC)PPEU-A(RW->.("ZUT+0O"LY2^)[GVE( MV!UC!6*8,@)#!Y:R:)LT% ,8LLWT,\Y8;[KM\"/ZH+]9&+1"91N^:R0@?95[ M!BW.4A^\YX(]MVVK8.5N7Q[WM,:#$&:-\P/\@5VX9_P *G13E1MSJ,].1(]+!O2? M[VMVC_'5 (K:FD)[:Q4&;,=:U_!A&(Q>AO[Y3^$B M@YR<@P'77^DY2H.2B-HLE@1 =YE.3I(671.!GL0S8030&ZNLNOVAUG ),0\@!)QL>4CKQX0S'41:'D/)!-!J,?5A(P""?[#D7 M_BOVDJ$WDR0_2%\RS@-]23J!=!;%@\&WZ<.)=9!%D_'$TS?)\SWTQ0GH V\I MG!A&V2A_BCZ?_2S.6_KB. WTP9]1$NA#>K*$]EV"^@_NLK5O07]C#RVK7'NM MW:YN_Q2%_AC MP\8+8'^FM=M\> /;OTIG_P!02P,$% @ X6.J5C6+07+C P GP@ !D M !X;"]W;W)K&ULC59=;]LV%/TKA!H4&Y!&LIRD M06(;<)P-';!B0=*M#\,>:.G:XD*1&DG9R;_?N92L.H%K]"$1/^[GN8?W>K*U M[LE71$$\U]KX:5*%T%RGJ2\JJJ4_LPT9W*RLJV7 UJU3WSB2952J=9IGV65: M2V62V22>W;O9Q+9!*T/W3OBVKJ5[N25MM]-DE.P.'M2Z"GR0SB:-7-,CA3^; M>X==.E@I54W&*VN$H]4TF8^N;\]9/@K\I6CK]]:",UE:^\2;W\IIDG% I*D( M;$'BLZ$%:&1'4RG1?^=SCL*=PE7U'(>\5\AAW MYRA&>2>#G$VF,V+PK8F>/% !:F-7&J: MI &&^3HM>B.WG9'\.T;&XK,UH?+B%U-2^5H_14!#5/DNJMO\J,'/TIV)\>A4 MY%D^/F)O/&0YCO;&/YZEF)>E8F)(+>Z4+[3UK2,O_IXO?7 @RS^'<.CRH&F"%^+);2B9O7\WNLQNCB1Q/B1Q?LSZCY;JJ)'#(1Z"9U%)LP8> MBM]>E/,"/4"T!I2+;XJE9*]Y*K:5*BHA'4&\L X\$-*+1KH@[$J\?W>5Y]G- M(UZ?,FLA#6Y+T%DQUOPN!3VCSWCR47)TPWY#A3 L*(7SDE?>:E7*@,UCP >] M 3'#^A\-L14(( YZ$X(T.]LL>C*ZN(CN3RY',1]V$BI').J.P\0<%F @TME1 M,&I@D9\R& W%5J)?SL27&&+=2/,BR <@I_ 6?;0J-3J>- 5%/X4C\$V 9D@R M-I)2H"M50, Z58"%.UQQVL@0R!D?_5H8XS:Z_+?S"T'34==S?@8U\QX-]128 M%;HM&>"B=0[H1'W.OF#0T'6?T.:_J2-^)\L(5U]V'RO86*LA/P2)[KPK\-K9 MMO&O-("J5[72 3*9SLEVG 3;_CM MJ8*ZW.-P@JE!$;%YU:$0FR.0<:2[XE>JB;*KUD7(:@BNP9/]L+J2K2S7AH$* MD>R>0F1WJ'K2Q8HR%4U?F6ZGCC8PHW0&T>HG >EKE MXD17$ @ 08 !D !X;"]W;W)K&ULA51- M3^,P$/TKHX X!=)\M&E+6XG"HN6 A&!W.:SVX";3QL*QL[;; +]^QTD;BE2Z ME\8SGO?FC:!R0HLF;E0%4JZ62I=,DNF7@6F MTLCR!E2*(.KU!D')N/1FD\;WH&<3M;:"2WS08-9ER?3;'(6JIU[H[1R/?%58 MYPAFDXJM\ GMS^I!DQ5T+#DO41JN)&A<3KVK<#Q/7'P3\(MC;?;.X"I9*/7B MC+M\ZO6<(!286ON/+E##-+]1M;!QYD*V-5>463 I*+MLO>]V^PQY@ MV/L"$&T!4:.[3=2HO&&6S29:U:!=-+&Y0U-J@R9Q7+JF/%E-MYQP=G8G-RBM MTF^3P!*='26\9_H"XM"' MJ!?%1_CBKK:XX8O_5QO<<),)9=8:X??5PEA-?X8_ARIN"9/#A&Y QJ9B&4X] MF@"#>H/>[.PD'/0NC\A-.KG),?;CK3@*/2SLH_R/$S>P86*-.3 +;(.:!@\R M92PH#9)V VVX.]L(; -]*$N.&T""G5@FF&D)OTH$*Y563'Y=G8RC,+TTA!+ M62E)>0RH)? N)6MLZFU6=,T%)G.XP0S+!?%NO1$PZD^['?@[2>02+"5:*D%I MN5R!=;K&>UR?*&ZYY#0(.:R4R@V<0I+Z:3]QA]!/XA">:3^<:96A,3#T MATD"(W\PBN&1U316%C5GPD"4^J/1 *+$[X_2[ODX&CAO7ND4AN[*<:=]/XU" M.-3_8&\L2]2K9OFXAUI+VTYHY^WVVU4[UA_A[7*DDE=&PO=V]R:W-H965TE98"V#S?WH-A*HJMLI9*B1Q?QMID MW.'53-IV9@1/O5"FVG$4';4S+O/&Q9E?NS479[IP2N;BUC!;9!DWRZ%0>G'> MZ#2JA3LYF3I::%^.&RP58UXH=Z<7[T7I3X_T)5I9_\L686^WUV!)89W. M2F$@R&0>_O+',@YK L?1,P)Q*1![W,&01WG%';\X,WK!#.V&-GKPKGII@),Y M)>7>&7R5D',7'W4^>>.$R=B5&#G&\Y3="<6=2-D-=_A@S]H.=FAW.REU#H/. M^!F=77:CU[%V>BG13O@U\-7]#YL$LG6YE-:4NB4826-N@Q1SW\'#2:?:.^NQ: MYCQ/!%,"Y64]H+%?(G$^,4*@"SC+XGX'NF/VH!U7[#AJ1B='I..X?\(^"FM1 M+\9@)^K#%48Z"67[G4[_ +\Q?E=>S;3Q/<%C.8&XQ]+OQ>QSS@;%!'7'.EW/ M-_A"'E_J;,;S99-) $EU)JR3"5K9R,I4<@-330\\$<:A%5*@:.* ]/ $,!&!/\;K),IW),X2079T9J@\'Q#!$W)4$&8H:% M"C2$,9]KPT=*L#+ 9?H]6O'H(!1LE$Q;LK%!1@>7UGT+E:(4-S:@17KYG$NU$=@=!3*JD:.@:'/MYO8X$GD[_;)DI,(C/9@H%3Q'%N6\B"=/6,D <5$%EX!:ZF@ ( M: )2XMG94U#V /G469%QOXP&BW_HP!C<7ID=]0DFG0@P[A+R9UM4:=)II5, M?6?\D--T$VE.LV,?$I5P2;>G ]8*JE.4TK]B]K?#3\\7 T0S*G$@,RH#>3: M(:.)P-=]><"Z+4Q!T*/3 EU\Z2/L3H2$@ZI2H\OH,L8@68I60Q,1(RI!R5F? M8';K-_X2_M!M]Z6WW8M>MIW01*657:9+K2.D1N8^-9?K<;B6CS2%ID@]1>SW MTQ4"^E(.ULW]6E8W4C0280+X@",X=8):ZT>#V+?S>.-HL#F5T24%%6$H*D]O M:C1T)/AI'I>S^#X(#"J!>A9#4(]\6:.4,"I0$Y0QLOV5Y^^UIDL)[C>KQ*R[ M/:*+UT'H&"+#R0<'#K4,HW)9-XPMY>9;6T(M25,"O#V@RQ9+ M^7K29#T^$]3@3HG^X!EEK7!^5JV[ HWE* ]J=M5\#9B,=%M]9&QJ=#&9LC^+ M7%33N/NB-P./8G6<):'-!"^XGT30@8;F3ZQ^(-*65=">8=GF:8,[" M;;!>K>_2@W"%7&T/%_&;T*0!: S1"!%M,!,NM^'%Z9F_4(ZTP_74/TX%QV2A M#?@^UMI5+V2@_@_#Q?]02P,$% @ X6.J5B!R$\$2 P B < !D !X M;"]W;W)K&ULG57;3ALQ$/V5T;:J0 K92Q*@:1*) M0*OV 11!6QZJ/CB[DZR++UO;2^#O._8FVZ"&"/JRZ\N<,V<\GO%HI(L28YCR;B*)J.P M-C.3D:Z=X IG!FPM)3./4Q1Z-8[2:+-PS9>E\POQ9%2Q)=Z@^U;-#,WBEJ7@ M$I7E6H'!Q3@Z2X?3OK/H-(("%ZP6[EJO/N,ZGH'G MR[6PX0NKQK:71)#7UFFY!I,"R57S9P_K<]@"G#X'R-: +.AN' 65%\RQRF\4 MYVNJ:4.5/4/5@TNM7&GAHRJP>(J/25:K+=MHFV9["2^9Z4(O[4"69+T]?+TV MUE[@Z[TDUA D_#B;6V?H:OS<%6]#U]]-Y\ME:"N6XSBB>K!H[C&:O'N3'BDKI6SP!6X4M>6J<(>PM<28:$%E2V!P;&Y0+!( M9M0*7$F6"+F65>U8J"^]\.7!N+7!'Q$$.&UP77B_ M!<\9V0_)J4%\1)IV3]YG_'9\.MN%;HG:' MO1^Y_\B.@!6_J!V0P>K5(J=[1-%))-TL.6P&Z8!.9*^0?^WIGM#Z"D.$:4A( M2LEBRO&C$!2UW8W&3>9=2+-LTHPAS53M>=F6>Z#Q2>]0Z[<5AN8M'CN #[FH MO?W":-E<0B;R6H1+V-U5>/%6=Z3[LPQO@*6HZ,XWC;)=;9^9LZ:[_C5OWBC2 MN.3*@L %09/NR2 "T_3]9N)T%7KM7#OJW&%8TE.)QAO0_D)KMYEX!^WC._D# M4$L#!!0 ( .%CJE9!&YCID0, 8( 9 >&PO=V]R:W-H965T]4SC>*>.HW66@]JC*"&I/EX_&[K%':)LMY7+OVR[GKR&B+UQY" MUS3*[R[1N.TBF22/"Y_UIB99R);S5FWP!NFVO?8\RP:64C=H@W86/%:+Y&)R M?CD3^VCPE\9M.!B#9+)V[DXF'\M%,I: T&!!PJ#X[QY7:(P0<1A?]YS)X%* MA^-']@\Q=\YEK0*NG/E;EU0ODM,$2JQ49^BSV_Z!^WQ.A*]P)L1?V/:VTVD" M11?(-7LP1]!HV_^KA[T.!X#3\0N ? _(8]R]HQCEE2*UG'NW!2_6S":#F&I$ M4;,*.M9L4=?]NC\!?04/CE+=8#?;8GE M,3[C2(9P\L=P+O-7"3\IG\)T,H)\G$]?X9L.Z4TCW_2[Z<&5#H5QH?,(_URL M WD^$/\^EW+/.'N>42[)>6A5@8N$;T% ?X_)\N>?)N_&O[T2[VR(=_8:^W?+ M\>-H/K- -?+G$:'IRX12)F"1BWI0&90M99"/HOW*-:VR.[YPA?-BK2SHGI=8 MQ35:K#2!J^#-R6P2P6].QJC_)>TP^ M&I_-OD5QDQ%_6%7]VJ%GKPB%9'*6GKWM@YZET[?'%"E<=6SN8BI59PS<*].I MO@$8[D#*%BC!E4P;2!=R@]%[SE-\*(Z4PI$0OX2XTWIWKV,GJGY8V-)QVM:1 M-"_I0B"Z'HHH5$,@QW*-8H8Z\++F;JG-#E@)G@3VPRJ0U%@2<9V'E;*JU"R< M8&ZM)K;Y4]L- MI,\KMZTU2\!Q&WW']1!RK@^W2"XE!+VQNM*%LL0NO%9K;33M8CX:@"HXJPQ8 M1=('V*_(M^X"V_6J%ZXS?.9-<*!9*"[:<63?'DA4G.[73GE"GS[7 +*#WMR@ MW\07*(@?2WV;'E:'1^ZB[^U/YOT+R<=KPR4 @Q5#Q^G[DP1\_^KT$W)M[/1K M1_QNQ&'-#S5Z,>#]RCEZG(B#X>E?_@]02P,$% @ X6.J5F"3/*KF!@ M&ULE5A;<]NV$OXK.VJF MT\[0DDA=G=B>L9.TS4POGJ1I'\Z&%TXGC/',6%^N2^O_PB[LG8\'D#?6Z2H*DP>55.&_ M>(PX] 26YP2R*)!YOX,A[^4[X<3-E=$[,+R;M/&##]5+DW-2<5(^.4-?)7:"H;K:N1(.^\9Y5'37="4G=$T@5^T4'?I MUXO5-SH5:"(,QU'NQ)V8YN#5& MJ"WR:_I] (QJ:GC7$MO;:UR/%Z0,5BT3S@ MX.;;;]+Y^,T+H4R[4*8O:?^_LO:BIM-^GE,/OQ?H%X3:4T7FVE"FP?K=*[\[ M[^_&B*/>P*OE<@I"K>%5-EL"]1)PI,H5!A&J0!MDV@ E/2^ZK'L1>L@2,F=K M]"5<[OFM%(ZV.\T?G)&Y:ST!L1-F;;UHC<;W+94C-$JZ^&T(MY:].C:6T!8. M:JODW^="8<^C?E<(YZ-H >$]N;/LTP/Y!**NC7Z4E7?TU2*9+)?#(P1WLBRA MLTBZI/T7+N@'#.@U-7V7:@O9\!+V* S[9'2S+6)@%-1\")[V%J2U#:D4! Q# M1DV+$6!'7TIAC'6+"HTHR^CSBH PN@)BS(/4C:7UJ-X&8QZ;0CP@;45NWB+_ MVDA#&U;[(\PX2066WB]'VVQC]C&-C'3C"FT\%#Z;!W.4S&"0O"7^!)$A?#QP MP7,X@?L> SP2\)EX8!.OL//P99:$-$&2[F5JQ(!J[K4>R08GU/[ M":<]W)[9-E"+OFQ0.L%ZSA6&MT>+AZ0Z&K,7GK-&L.P^D$R$ KU@;K%9J==< M(R4%!U*M9>Z9K2D6LY/$S)C;AF$K]\S,TRZ V)):[KG#%FJBXO.]%)IM5G]1 M43&2@L>?K)H*M(H^L>>:CQ./C*P6 O""?OHE%IM+QR:BGV(U*#J)P>J_V&D%V%,7D.K MG.BVU'*M*!L\O??K/,TL4;>T0=WT'935+97Z]\ M$6+HG\&T/X!5U#%D3;E/N%;IW$.#A#UZFO(8]7&G*P2)D1*=TX E;4G;+\Z0 MF6)WA0<5S=&>D&G++K1 R[]CJR)_#3I>X_ U'8R&\&%S$@CF#??E%C_55"NR M1&_G' K-/7#)5TI>\,&!W2!F4A(M?FWX1"'R7#?JB)9Y0^ %L$]V=!(H& XH!E,='WH#(L*?-\:P[6"P&Z]MYRY.2[0Z/IL%LR=B_"UP5/JG0= MZ=R"<#H,?9KG1['TP&L-GL1.P0^X,@3O/AZ+6LT=<>G%IQ;#&>)B4//M@5D@XFH4^C;4??"W47JOIX,K2CKJ0;I6_V?MR%:R65 MA8TL/A9*3@*7/!VI\1!T&+<'9\(-DMGYK\^OK_LGDG>M_7/'CC_]%9)>;ZD4 MZ48,OS7..G*"@Q0>IG=$ M^JHH4,TL4T21<3F,Z3;+Z$=+Q,IHLEO*(/P\4" M?HPC,)U<)I>78_#4R-[ 9+Y(9G043]/A? I_A$[QW8Q.J=GE]]VN]G\Z'\ZF M<+O^BRZD_M[$"!PF7:S?9SWRJ9ILG*3C*:2SX61^(K@G9_]L-D^6DVD;V?1R MGJ33,40-\W6KOVA0UTO[/<_ -0 M2P,$% @ X6.J5AD$-ZTX! %PH !D !X;"]W;W)K&ULG5;;;N,V$/V5@3;8)\,7V=DD7MM +@T:H$&#;';[4/2!DL8V M&XK4DE0<]^L[0TJRO4A<;%]LD9PY<^9*SC;&/KLUHH?74FDW3];>5]/!P.5K M+(7KFPHUG2R-+86GI5T-7&51%$&I5(-T./PT*(74R6(6]A[L8F9JKZ3&!PNN M+DMAMU>HS&:>C))VXU&NUIXW!HM9)5;X!?W7ZL'2:M"A%+)$[:318'$Y3RY' MTZL)RP>!;Q(W;N\;V)/,F&=>W!7S9,B$4&'N&4'0WPM>HU(,1#2^-YA)9Y(5 M][];]-O@._F2"8?71OTA"[^>)^<)%+@4M?*/9O,K-OZ<,EYNE N_L(FRXTD" M>>V\*1ME8E!*'?_%:Q.'/87SX3L*::.0!M[14&!Y([Q8S*S9@&5I0N./X&K0 M)G)2$NGDO3\XE9("]^$JA'N4;C:(D7\ C>'> M:+]V\(LNL#C4'Q"ICEG:,KM*CP+>"]N'\:@'Z3 ='\$;=YZ. ][XOSV]D2Y7 MAIUU\.=EYKREXOCK+9\CY.1M2&Z8J:M$CO.$.L*A?<%D\?'#Z-/P\Q'"DX[P MY!CZSZ3F?P'!TQKAVI25T%LJ9(^6ZHLBXFE[R2HO047$G.JS6A60 M(35ECM13!7@#U&@*!+69#)'N6U1"MLOF8[N:J+ MX)1%!(4OJ!R8)1U4M7?1GU)LV9O:14\:^!]B0""YE1FRXS3)IO ;8\%H"K]G MG'F1*3Q I>G"HP=J+8J_J9%)\WMM^*]UC2/J0BC":&KV'="H!5F0=S(7*@;4 M<43;\$ET_<9\.H6[:--09"Q;UJV9#C^$H*#!XM=DK.$=20KRT^SXLV6.<)?$ M+F,]0!DL%)*R[BEI3%*WJY;/> I?M7D[(&Q+&P^YL=9DQ@HFF6W;<% F1!]Q:SYCY7NK=KJB+,+D+,%&(\H?.QVJ(%"-# M4G%RI8-IJBTNWL/"VJN\/KS75@3TB)6ANM4KH*&,/R%YS]S#U&O3U.2YC2_< M4,^5&27BF- 3N4W>5\9),G,"H[/VY^.'\W24?C[X.G9ZIRF$'"Q.%[B-J!R, M>J>C42?QX^IB/'QG]63\KIY/6#$][\P'E -6O8O)V>Z8@7;'MTVAQK8NX\V# M?//LA9 O#AHS!7^DO2#?CCNJ6D.)_H?D9>LA-8HID3B MX<59C_1=A:%K%;7&TIIR)[N+5/^M6V"P=UF7:%?A2>*H*VKMX[W=[7:OGLMX MV>_$XY.)7%U)[:B0EZ0Z[)^=)F#C,R0NO*G"U9\93P^)\+FFEQM:%J#SI:%) MT2S80/<67/P+4$L#!!0 ( .%CJE:KCCX7F 4 -<. 9 >&PO=V]R M:W-H965T#OLR!)$IZGCWW/&Y._)RH"ER9:\ZF7/E>:]GDPP+8;NZ1$5?9MH4PM&KF?=L:5"D?E&1]^)^?]0KA%2= MR:6?>S"32UVY7"I\,&"KHA#F]09SO;CJ1)UFXE'.,\<3O;XA.YS^6#H MK==J266!RDJMP.#LJG,=G=\,6=X+_"%Q89?&P)Y,M?["+_?I5:?/@##'Q+$& M03_/>(MYSHH(QM=:9ZY1 M+SY@[<\)ZTMT;OT3%D%VV.] 4EFGBWHQ(2BD"K_BI8[#TH+QK@5QO2#VN(,A MC_*=<&)R:?0"#$N3-AYX5_UJ B<5;\J3,_15TCHW>40G#5*4'3SD0MG+GB.M M_*V7U!IN@H9XAX8!?-3*91;N5(KIZOH>H6DAQ0VDFWBOPH_"=&$0'4/WV"'OKNBS/4KXB\&<^$PA=^DF,I<.HD6_KJ>6F>(&W]O\SPH'FY7 MS/ER;DN1X%6'$L*B><;.Y.V;:-2_V -[V,(>[M/^4SNS5\-V?.MJ86/B4X9P MJXM2J%?(A 67&41*P%:L]&(N$PX2_8P&I+.0ZD"=;K%KH53XAS M1DXKG]H>4!?N6G/"(& NYW*:(S@-I3!.)K(DLPT4499&ET;R%*_WN9T2I!JU M]S3)A;5R)A/!=KK+H7G[9AQ'IQ=V!8EE8ZQ]W2N&OQNZQSOG4/HUKUY%X\WR M!MVK1!<(3YA41KI7N$XR1294I9C11*B#B8*VAKB4XF^HGH7MH>F5BQ]6%JW M*?8.314U&11%;PO(DFT285*D*J@R_SG6:52J>9@'>$3)K7LL/=KQ29P M W+T;U=8M1%KH#[F^;K"S5NA1"JZ%-]EFOY*=E-='"\';UG9O:#J,_^;7+#2.L\-+WRI&\=1XB',!I1(_A&=R],-5(E&I0910T@"@WD5PY' V/ MZ#$ZHDQ)]%S);R2JR'6JZA45(I%#KJV%: 31>'=,R!8!.8!HA5;H;7L"%^(+ M\]^1OM6<)T(>#/M]EI%!E'_^1613RF:B.$>BNT:^_[JQC9K_U\Z>G/#.GOQP M9\<#VMEQ= 37A:8*_LV788XW%6["S"U-4K$(GOOR9BB#9#CO%;JB,C:BO_V\ M&, PWA[10^GK[5$#^S Z.V*&Q.O1-3BOL+\4&DNB2[ M!+M*N;;ZYL-EE+XU!:Y>EVXVE'U[1VWO_<_NWFHA^UZ/TX#G1=(A%ZF''XR' M31_;J.T4Y::3VEW)L*9M,.PWZM;"MCL)&M;?+M?5S>.)+G"[]U66J'5V$_#"CFR<:%J#O M,ZU=\\(&VKOLY!]02P,$% @ X6.J5E7.WE1]# E1\ !D !X;"]W M;W)K&ULK5EK;]M&%OTK ]W_]GG-G^) M.]O=!8*8(CGW?<\],WR]=?XZ MK(UIU$U95.'-P;IIZI='1R%;FU*'J:M-A2=+YTO=X*=?'87:&YW+HK(XFA\? M/STJM:T.WKZ6>Y?^[6O7-H6MS*57H2U+[6_?F<)MWQS,#KH;5W:U;GCCZ.WK M6J_,9]/\6E]Z_#KJI>2V-%6PKE+>+-\OCOE^_+"7ZS9AM&UHB<+YZ[Y MXV/^YN"8!IG"9 TE:/S9F M3%!0$,WY/,@]ZE5PXONZD_TE\AR\+'V,(VUH371PUT<<51EN2^BW+G#\@] M49\@:1W4ARHW^>[Z(]C8&SKO#'TW?U3@)^VGZF0V4?/C^U?//?5&(2D[W*V%'O0RUSLR; [1,,'YC#MY^ M^\WLZ?&K1UPX[5TX?4SZ_Y"[_X=<=>E=WF;#O5MU46A;!O5E;;"FK'5UJVQ MOR]^0P^JQJDZ+=EJ[W6%%5EV DJHS+4>M]U269BS M: .,#6&JT),J,[X![J ?JG:)#"%=>:_"H_M6Z"SSK2XF:KNV MV9HVZ_PW]!ZD$3A4R5(N;MG^?"8RC,\0$. 636L!.M M>$CCCBJ(M"ZWF2ZBJJB=RVT.57:)1X)D\!S%Y(HV_EJJZ\IM*T0NMQN;4^P# M<9ZJ7RLNN=09I:DK;0OO=*Z^^_:;Y_/Y\:M?+Z^NY'+VZGNF/?.F,>J+->J3 M;AKCU2\5KCQB-#MA)\Y>[$:9U<(T(>7!YA;YFZB+OWU!0#+G:^R4X4&G M:Z+@H&'VD"6'\&(8-(5A":KSE3?QZCNJ2HOWO=!;OK7-6M$7UIR$:F-B'@QB M5*T4*W@5@YGJK8S^(9@/A*AS<3-5/TW?L?X"%XP]O^>$.DC91/YN%U^%:,V\YE''9/L?O M)X&F;&V!2M"W*1)X0Z^P G[CJJ0*NGMX=CPY/CZ6F&%HHW3,D]_:?"4:K&0E M-%UG++"ZBN'5ZG N"VU9&J0:0J$K6D,+Y"4J]8:]QZ@?GCZ7%;6V3#3^A0;% M'H'&;>"@5L'>/+DUVJ=N0&=!/# 9RU,SF.72R"A7.97"A8?"@@<>$5VK]R8S MY0+R,3M.50U :74E@*2)8J4-P0%J?G:-F:KSU+ELP\E8/RS^$4!#4&+EBY=[ M-4QBQ#7MR 7V6K0,*X%+<($XFJJ[2]%+&/%X(Q%P>5,OE\!:. Y\TR (95MH M"4;C$,MQ7E.P<=DAH@C@$+(9ES?:KTPCB>E?U54E^)$,#DR#DGP@];:2-.X" M@+Q1&'9/$)1&R<""]M&"G:KWK:&M1%!8A@'AIV2H)KWT&63&D)7(4U.( $ M5H-/2![-CG]CG27&A%2])G4!%(<.: F[;*IE*RV&> M$8[^;"KC(1E BF)!\&2F;C5]R@P:-1^0#F.6)?29H0IW(G\Y>'Q.1G[;XE6I=BZ.)67D!.:0#35:/6;^0ITG4XF\X4 M8*J0W3M,P(UGW8V)9#,2 <[I!!/1!J1;#@/8H#U8L9OTM:"') M_9R<"/D.? MF"8&'-4?760=6>(JL7H%7=50:\E=H5E(%AT SVFL^.9\+S&7B >SD=X0A=.[ M,.+-QIIM5W1QG\%5[+P[['\4MKR=B,\LR#0B=TU030$4A1&ORBY M9YH!=2$N<-IKR1ECL$(!U1#L$/0NCUCD^$R84;4AI4][.9$J69%4M$7351!' M(N=N?*]V'),CBW8&(>WNNKDK;"E9Z-N ?[&C ?9/-&MA-W^Y@RFL@(2@M^.M M&#:UURJ@"<3X+FKB<%UHH*2 1BKF#O*I.=%H3=?ABT:ZLEA;/1>*[4Q$G;UX M]I2+MVM#N.Y)3:P/U$-V'6L@2S;'X$*HH2V-PAY).#EA("J6M%)]3GI<;$QZ M_N)T.FP#YT]E3!]/^IK$RZU4"0 >TT5J_AS&*>Q(B*;0,ZQUQJ/QOTP+6_V)$RV0DBCXA$/X*B+ M>@>;KW8*GR%@>VCSJZ6L4FJM99DDOT MJ4>,8V$RW8:^O0OR5TZ91>0VJ7TV,44/@^\DER UK-!YJ M8!C#J;Y9NC9 1&3_@=^W3-@NK8BNA*];DJ&"V'F0C)V$C)T^L(T6V/B9G*,3ZD0$QU+'*!RU1-Y@M1CSQB&2<.& M[39?NP"<"E:DRAB9JG?2BVTM!P[Q*%V>MM[#5K;W!JQ=@YE,>)JE5Q%;>V19 MF,*:C;E'='K&!T?,"BJ(S:2?;?AC1(94HB^8 M@+ES$,=#2 <^4=AKYHH0"\#)O%T0$A=N(Z@.+K74&^>9[K$ L*LB_TH$Q0MH MBO"[LTNZNW>:[S\!A25W]P%R,!U&]$L.!>:3T]/GD7CA\ME\EW+=HS"RT1UM MAV(Y%;*!&L,9!?[WQ[YQ0Z:S2&O()T >K MBK$?'3Z0YW8X,*[2"2>TC8/+U;9*U38"BAX7^HFR6YC_@1$3M4#*1M2E2,=0 MU>[9X61@O+%C^49R&+4K-.=K_7\7O08\Z+J:EA86E""74XH]-3]5'W="D" R M5M5D.$!_-**(&L]AZ(H.H+T+. T3XAXQEN?@"YU4WY'?]BSYSD-$PMP(9LA9 M6G_._WV,F>P0!//S?<=;7' G)>,&SN,W*1E1??WUY=D9+7;PO$A*FQ07-R;* M6&G'G>QR?W$ON3KA !B\_+;+M"$=Z023H2^ESHV@[V!9#-GNJVEOQ+='A;YW MB U=MR_C$YYCB3%Y_WD.8P&ULG591;]LV$/XK!Q4H M%L"Q;#EM@\0V8+?K5FS%W&3=!@Q[H*6SQ98B59**XW^_.U)2G4S)PUYLB;K[ M[OONCD?.#\9^=26BA_M*:;=(2N_KJS1U>8F5<&-3HZ8O.V,KX>G5[E-76Q1% M<*I4FDTFK]-*2)TLYV%M8Y=STW@E-6XLN*:JA#VN49G#(IDFW<*-W)>>%]+E MO!9[O$7_N=Y8>DM[E$)6J)TT&BSN%LEJ>K6^8/M@\(?$@SMY!E:R->8KOWPH M%LF$":'"W#."H+\[?(M*,1#1^-9B)GU(=CQ][M#?!^VD92L<5XN5$N_,(AVLZR!/+&>5.USL2@DCK^B_LV#R<.EY,G M'++6(0N\8Z# \IWP8CFWY@"6K0F-'X+4X$WDI.:BW'I+7R7Y^>5[J87.I5!P MZX5'2K=W\,/&*)E+=&?SU%,0-DWS%G = ;,G &?PT6A?.OA1%U@\]$^)7,\P MZQBNLV[ F\59Z;1GNI]]#)A+]76^+'!<);0N']@Z3Y3ZV?87O1L+YY#7ZZ%DP[,#C:, MK:E&U,M#)/\'S.\ETJ[(354+?>1\-%HTA?18P%M#U=,N/CE*4R%X>;!;2G&' ML$740/IK8-5JAU)&_8^VCKR=BGW4@ M$N)01[Y\<9EED^N?5JM->)Q>GP&-)++V:&4%NYZ9U'%4A3VOBQB=$:6F&C=A M&#CP!GA7PW1R_BF8K:R7N<)8N$M.U0WN&Q5Q;L__&L,J*"(!ZCABP",4!K3Q M!)RKIJ!<*L5^,=9#$CMC/)F2$HO?&LDYVAZ!U0057 .%'D]DN#[!8^!"'5'8 MPX=8)5-+S1I)=B4T37%&'05_=%Y6H7B< %%\H6'6CA>6(%WH!7+4G"E% M,?+&6EZC5K"-4.XL:)4DAB)KS-$Y.C="P@3LA+10GW3S21^V,HHQ_%93>X5 M9$F#V@5O9NY+BPA5G%7(LPIHTN1E/VJ .CDDI8LLJ4NE+F0N^"#I*MWA^E)X MRL&1& #>UW3H<,K;8%P\#L)$WA%<'VC/^B0H:H_:DGRL4@;HDL; _\Z7H\ILB,R M- +"A.!]-WUS[6"E-95G@.$O_Q%,8(-ZL[:#GI$<[5GWB$]_HDB-'C9N.PL. M.&I'0;?2N,C&0W,_/3FC*[3[\=_-XTV)^G1/PPP4[LAU M,G[S*@$;;Q_QQ9LZG/A;X^G^$!Y+:ABT;$#?N?3="P?HKX#+?P%02P,$% M @ X6.J5G.U5!I*! !0L !D !X;"]W;W)K&ULI59M;]LV$/XK!W7H;$"+]6+)I1BJI&H2LI0.%Z[EV$YY>I MM7<&?U2XTP=SL)FLI/QJ/SX5KY!S"T0T_NDPO3ZD=3R< M[]%_<;E3+BNF\4KR/ZO"E',O\Z# -6NXN96[7['+)[%XN>3:_<*NLPT\R!MM M9-TY$X.Z$NW('KHZO,8AZAPBQ[L-Y%A^9(8M9DKN0%EK0K,3EZKS)G*5L(>R M-(IV*_(SB\M&TXK6L,0-U=IH&-RQ%4<]G(T,X5NK4=YA7;98T0M8,5Q+84H- M/XL"B^?^(^+5DXOVY"ZCDX#73)U!'/H0!5%\ B_NDXT=7OP"7ILASG'MT'C>H>O<7[=V$:?#C!==QS'9]" M7RSI^A4-1Y!KXIM+D5>\8D[);N4>18.P5K)^.CHCX4H*+7E5,//M";0IG0YZ M5U*\+2KFBD-)D;:UC6=HXTK66R8>?]2T8>MG90)Z'WN'"H%I6$M.%]V.RGD1 M6B4+#:Y$@EB=PUVI$)]IY=C2[]21EHR4N,\//O?,;I1<5P8&OTFMAV^PO&45 M]^$.\U)(+C<5:A^8*,A/W5@'\90 ,6?: MV$+G"@W:"$634P6BL1^1QR >9T,($S\@K\%D&@YA:1#YDZ&->(U,-PH=VRCU MLS"% ;E%@1],QC"(_-"BW$G#N U-<&/')B(2$8W3S)],+1[9XQV[$TV%U9P2?* H%,X /]*>J$7YRB= V26U(RIF0 MT6?BIF#0F0RA$KFL#TRS:#*$)(WABV!TU7*762X5$:#I'KI5F718S:%AR=2& M=@DHB:8V9D9P]BAAA90)[N,9]N#N TEQ$D;#=A9,QZ>4EO9*2[]#:1=:(Y7O M4%BOT=7)D,>;M6UW;;^RI]H>7\5Y8_\2C"UAR^1Y_X/5XS%%GE 5_8WEI?L? M^X@YUBLZ$OOQBF844O,)@M#.)M02PO!$^PF#L9]D(8V9GTRS_VLZ<>9'<0H) M.5'O.:ZE+O\X\),TL$.0)7U/BN/4CR>V)\5IXL?4[(XI8W3P-*F1I&&PO=V]R:W-H965TC,Q* MHRB\456.PB!(1I60]6!ZY)]=ZNF16MM2UGBIP:RK2NC[4RS5W?& #[H'5W*Q MM.[!:'JT$@N\1OOKZE+3;-2C%++"VDA5@\;Y\>"$'YXF;KU?\)O$.[,U!A?) M3*G/;O*^.!X$CA"6F%N'(.CO%L^P+!T0T?BKQ1ST+IWA]KA#/_>Q4RPS8?!, ME;_+PBZ/!]D "IR+=6FOU-W/V,8S=GBY*HW_A;MF;4H>\[6QJFJ-:5[)NOD7 M7]H\;!EDP5<,PM8@]+P;1Y[E.V'%]$BK.]!N-:&Y@0_56Q,Y6;M-N;::WDJR ML],KO,5ZC?#Z1LQ*-&^.1I90W;M1WB*<-@CA5Q BN%"U71KXL2ZP>&@_(C8] MI;"C=!KN!;P0^@ BSB ,PF@/7M2'&'F\Z)D0YUI5<$9<-4F!TFR7<.83C!K^ M.)D9__S/70EH\./=^*YL#LU*Y'@\H+HPJ&]Q,'WU@B?!VSWLXYY]O ]]>DUE M6*Q+!#6'-A(#LWNX$)^4ADNMBC5%\X&L=C'?B[V;^GZEJ)>K[5R^RD*=O#=34/(PH&V*5)[9JB8FZ (#17D9N)\0KH0LNY"-A_ZI5#-1PKF639%?B)I: M"34-"T,8)RR(,S?@+!ESN,%\6:M2+>[ANJ'4@%RK C M1:Z?KN[#XA&+@Q#&Q'T':+\LC%F8967Z%G$K2R1[S%/74Q) M$!..L)Z2"^0"A5GK)EL\8>%D BF+B>(CB,=KPX1E/*$M84$:PXVRM ,;"0R! M$ZDX22,6"XT+X?=\4QB[*F _["_;RG62M+)R MLB=,/].B-G/:+IHOE)/JEIX-W EZ8-IJ,=\I:VIS^;+O<\^K[>M2>&:[F@VZ M5)+&LG81HJN)B&51[':KT=O022D-$QID(9LD(7R\I<#]:J>A<=#)F',63 *( M0C:FY4^WORV+82?182>8C3*>2T?XOZ.(K$.8F:; 2)2TN2L7C"M[,1 MLW$KJE(<0!2P*HEW):)K#L"O485J=N,&$1+>3Q00 O M:7:0T-_&C#X M^S(*N)CE[-)QIT-_7#Z::ALXNW2UHIKV"4VS Y"@H^"@Q1> M[FDG2=].DF]N)[L_"=CF^8DQ:+?F'Z28R5+:^UW]9J_?[SAQT?KM)D9;)^X/ M!O*.A7"LS.$CF@9.12EJ.FU)-JY78H[5C-+;5Q;E-&()C[P 1%'(YNBSZC$T M<#H2 KAI>Z!I/J >+J(OXL8;F8L\5^N:[$C)*&]]&*_)U21Y\XC4H]8W=,,P M2.'?):)LMX-ZQ.'33:*GWY"2A*6DRQVE^##F+5R1JMX#>SY6R MW<0YZ&^FTW\ 4$L#!!0 ( .%CJE;L).(41@0 L* 9 >&PO=V]R M:W-H965TN!V6CDI5=JZD$21<-!PX4,9A._ MMM"SB=K:6DA<:##;IN'ZZ1)KM9L&<7!8N!/KRKJ%P6RRX6N\1_O[9J%I-NBL ME*)!:822H'$U#>;Q^67FY+W 'P)WYL487"9+I3Z[R8=R&D0N(*RQL,X"I]\C M7F%=.T,4QI>]S:!SZ11?C@_6;WSNE,N2&[Q2]2=1VFH:Y &4N.+;VMZIW2^X MS\<'6*C:^"_L6MF,!5!LC57-7IDB:(1L__SK'H<7"GGTBD*R5TA\W*TC'^4U MMWPVT6H'VDF3-3?PJ7IM"DY(5Y1[JVE7D)Z=O5>JW(FZ!BY+^,U6J.&#M%RN MQ;)&F!N#UL#) Z>9.9T,++ETBH-B;_ZR-9^\8I[!K9*V,O"S++'\5G] H7;Q M)H=X+Y.C!F^Y/@,6AY!$"3MBCW7Y,V^/_4C^WV=^+4Q1*[/5"'_.E\9J8M%? M?3"T7M)^+ZZSSLV&%S@-J'4,ZD<,9F_?Q,/HXD@.:9=#>LSZ[)XZM=Q2T&H% MAWSZ8CQJI3_&APIAI6IJ72'78!T-P.]* H?8 D5%B*$!(6%]@'+):RX+A.43 MM>U&Z5;-X)J:V9(Y[34WJ(4J#]:P/(<[+NH0'K"HI*K56J )?5GN*191D).% MQH(;"U=*%AHMTH(JMP6%IT[I%[NKF?3XHRVNXW,?%C4/J&@MLEL3W M/9L2^ GB<3A.(PE&>T>#MFSR)DPL:,5IB#.@LH$Z7U)M:HRR>@#@A3EZVKT'<5"%M*J6:CI&<8Z;F5*UKA\LFC,;IP9.LB MY6V?[E![6%NNFO-_NOOD3V=**^5,3 OBFVSI>+1SD>Z 3\J^/09B5YP1?4X2=DJ_%!:DXG9B2=A"EQ[4'SDNY9NH,])M9-0?(&O=(H'&L,?E?9M5U,;( Q)CNRPX2DD8Y?. M, ]9Y%-*LW"4Y2XM*D"6CGL:X_]"+QXZ-W'\'^&+\]3#%R=CDF9AE&7_#A^U M[ D+Q_G8P3=.TQ[XHIC@(]P2"F(8LE'Z&GRN^BQ*6_BB*/'P43RCV,-'Y6%Q M;XL.7ES0E-W:/T,,,7TK;7M7=ZO=2V?>7O#/XNTSB8B]%M)08"M2C&PO=V]R:W-H965T6D+76DCM65HDX:$@(T/TSZXR:6Q<.S,=EKX]SL[;5:F M4FE?$K_[XL MK5L(TW'-EOB ]GM]IVD6=B@YKU :KB1H+";!-![-^B[>!_S@N#8[8W!.%DH] MN\G7?!)$3A *S*Q#8/1;X1R%<$ DX_<&,^@H7>+N>(M^X[V3EP4S.%?BB>>V MG 3# '(L6"/LO5I_P8V?@;":=CGEV72:9:J1 MUL ]9LA7;"$03A[=SYR.0TL,+B[,-FBS%BUY!ZT'MTK:TL!GF6/^-C\D99V\ M9"MOEAP$O&7Z''KQ&211TCN U^OL]CQ>[S_L3O.PQ= 930;7&9(9 50MSC600OBEC]CDYR+7?R6/ID!T)ETNP_A0-D@BB MLR58VIZKJF;R]?AHF,275P;8&TE9*XF.VJ 9O:^7KF'&A-]AQMF])I?5 O7V M323P 89Q#^:-UB@MU*BYRJ'6:L5]WX@' WC2W.)'513 EM2FC-U1D_ M)/3HLK)[=8[A8@C[[BW-O]B'-)TD!@ M0:G1^>4@ -UVE'9B5>VK>*$L]00_+*D)HW8!M%\H9;<31]"U]?0/4$L#!!0 M ( .%CJE82HJ_AJ0( +L% 9 >&PO=V]R:W-H965T[[[ZS_=UDK?2+*1$MO%5"FJE76EN/@\#D)5;,G*D:)>TL ME*Z8)5,O U-K9$635(D@ZO4&0<6X]+))X[O7V42MK. 2[S68554Q_3Y#H=93 M+_2VC@>^+*US!-FD9DM\1/N]OM=D!1U*P2N4ABL)&A=3[R(G'&;3'U>HX0"LRM0V#T>\5+%,(!$8W?&TRO*^D2=]=;].NF=^IE MS@Q>*O',"UM.O:$'!2[82M@'M;[!33]]AY^0&Z24/9+RBI5 4 OH MJ.\C>1!F/\FG$N%25363[R='PRA,SPWD9"M)98RKR+O#8HU-EY&7W6T DP5< M88[5'/76&P&C VUUS?]@01A@J=!""1(]ETNP[FV-=[ ^0%QSR>D)%[!4JC!P M#$GJI_W$+4(_B4-X)F6?2_\':L4Z#;4=$:5M6-/.?*DMB;94G3%;4+H/V% M4G9KN +=O,[^ E!+ P04 " #A8ZI6DQRL^K8" #(!0 &0 'AL+W=O MP\ZF:G: M"B[Q08.IJXKIUP4*M9T'W6"_L>1%:=U&F,S6K,!'M-_7#YI687':GB[Z+]P$_.&[-P1Q<)2NEGMWB-IL'D1.$ E/K&!A]-GB%0C@BDO%G MQQFT*1WP<+YGO_&U4RTK9O!*B9\\L^4\& >08=Y/(J[QFEB4SK;:@732Q MN8DOU:-)')?N4AZMIE-..)O<*5E\MJ@KN,:5!28S6*)@%C.X9Y8.#)P]L95 M4#V,*@W&"2?/G2'T9<32ONMTOXI]N21W)C5 D'E\-^=W4K27)-1K#FF^B3O M<=5O"3*7(%7D0>.>!"6W)4*N!)F9RV)*CT2GI;^2:TRQ6J'VBR5NE-A0!*0: M,VXA9RD7W+["1QA-.N-X0)-)MS,8CN"&2R93!('D+N.?8.ZW')P5&M'7!O&H M2]PQ/"G+!(RC3C09.H[Q: )W: S916N*)'O86G/+B>RLVQV=TQC3^%;56FG? M$KR6"<&]EM$@AF,W%1ZXJT)=^!Y"V50M;6.T=K=M4Y>-.]_"FQY'?ZO@TE"I M.4&CB]$@ -WTC69AU=I[=:4L.=]/2VJUJ%T G>=*V?W")6B;=_(74$L#!!0 M ( .%CJE:D;-F)U@( .4& 9 >&PO=V]R:W-H965T%'L3B\J2D>2F M_#TK.3$II)[R8NNRY^S9E78UV2I];W)$"X^%D&8:Y-:6XS T:8X%,SU5HJ2= MM=(%LS35F]"4&EGF084(DR@:A07C,IA-_-I"SR:JLH)+7&@P55$P_6N.0FVG M01SL%V[X)K=N(9Q-2K;!)=HOY4+3+&Q8,EZ@-%Q)T+B>!N?Q>#YP]M[@*\>M M.1B#BV2EU+V;?,ZF0>0$H<#4.@9&OP>\0"$<$,,&I<.>#C>LW_TL5,L M*V;P0HD[GME\&IP%D.&:5<+>J.TGW,4S='RI$L9_85O;#J, TLI85>S I*#@ MLOZSQUT>#@!GSP&2'2#QNFM'7N4ELVPVT6H+VED3FQOX4#V:Q''I#F5I->UR MPMG9!Z8EEQL#"]1PH8J",K7,F48XN64K@:8S"2WY<=9ANN.=)*>,5T#_IQ%Y(HZ;?P]9N@^YZO_Y*@ZVB_G:^, MU71'OA^+MZ8;'*=S=3,V)4MQ&E!A&-0/&,S>O(I'T?L6L8-&[*"-?;:D.LPJ M@:#6\*_P+LR9X2DPF<$E%Y7].^%U .TN;G.$M1)4H$0.UIT[&+2&%K7-P=)V MJHJRLLQ7$@E9-4ZSVBD(90R4)"NM+Y'Q:24"#Z<-KC(#7&8\960_AMM<(SZY M*?YXW2>!ZZI S2RA'<,+O8WAFKJ8WWH-)TDW/HT[;A1WAV>C#ERB5%1!CG4, M=[Y_HN<;_1V? 0?B#J>-CMR/:4O066_:#" M)X/M?XNNA(]OX!FN(J)*V[D+-:M/# MS^O6]<>\?@"HRC=<&A"X)FC4.QT&H.NF6D^L*GTC6RE+;=$/WGHG >3")*SB4UML^SVUU=R2$JG+"^)'4N?OD^6E.E!Z7M3(EIX;&II M9EYI[>XJ"$Q>8B/,0.U0TLE&Z498VNIM8'8:1>&\^;N8>2$3PAISRPB"7@]XC77- M0$3CVQ'3ZT.RX^FZ0__#:2@!)Y$,< MQLD%O*37G#B\Y#G-I=!XU+P23U1B%A9:"[E%7OOPCY*Y,"6\?^1\('Q=K(W5 M5$#_G]C+RAH?A"Q@A]J-%)GCV[6[BM:$SXSCS\9MUY(("JU= M#%MJ1&C:"D.N,*#ZR,N^0*[@]B>-FR[^ZB1<>_.N\N&+:UO:+AY0TQ2"?_?6 M6"+!(H7AO-Y@CLT:=1VG8.]5_[*;YHA]=/\_870&2V ME310XX9&ULC55M3]LP$/XKIX#0)E7DK4"!-E(+0T,""0%C'Z9]<)-K8^'8 MF>T0]N]W3M*T3&VW+['/OGON>7+V>5PK_6IR1 OOA9!FXN76EA>^;](<"V:. M58F2=A9*%\R2J9>^*36RK DJA!\%P:E?,"Z]9-RL/>ADK"HKN,0'#:8J"J9_ MSU"H>N*%WFKAD2]SZQ;\9%RR)3ZA_58^:++\'B7C!4K#E02-BXDW#2]F0^?? M.+QPK,W&')R2N5*OSKC-)E[@"*' U#H$1L,;7J$0#HAH_.HPO3ZE"]RV2FTDA_W!KX],SF LWGL6\IB_/UTPYQUB)&.Q!C MN%?2Y@:^R RSC_$^L>LI1BN*LV@OX#W3QQ"' XB"*-Z#%_>2XP8O_K?D:VY2 MH9QJ S^F>/-%-S"J!H!:P)C^ J3%(I6(R@SO.YEQPRTE(5\<,Z- _8EIIS>429LQP MLTW9WMS;E>TZ-,Q2PE)IZQ+2<43X?T^J MIV?4!=W*4AE.:0XA/%M]C@Y&41A=?ICMV[V5%DFQ!>WHF9J5!L+!21CV'G]; MYW&PPWI6E@E@;;T.76 TZM,W*!]8#WG:>_(W[7Z!>-EW.0*HJ M:=M6T*_VC73:]H^U>]N%J0Q++@T(7%!H<.SZEFX[6VM853;=9*XL]:9FFM-C M@-HYT/Y"*;LR7(+^>4G^ %!+ P04 " #A8ZI6(ZUP3LL# !&# &0 M 'AL+W=O;DQUYOLZS;%D^E16*&AF+U7)#'VJ@Z\KA2QS3F7A1T&0 M^"7CPMNLW-B5VJQD;0HN\$J!KLN2J7^V6,CCV@N];N":'W)C!_S-JF('O$'S ML;I2].7W*!DO46@N!2C-0/^F!#V4GYV7Z\R]9>8!EA M@:FQ$(Q^[O "B\(B$8\O+:C7KVD='_8[]+ IFQS1>R.)OGIE\[2T\R'#/ MZL),(A:ATB MQ[M9R+&\9(9M5DH>05EK0K,=%ZKS)G)&ODIRW4MH&*GH"*X;T4)M?P1F28/?;WB5;/+>JX;:-1P/=, MG4(%U+7"H8@;P.DPH%7, MF:Y8BFN/)*%1W:&W>?4B3((_1NA.>[K3,?3-#2DPJPL$N8<+J8VVG>_/:XCT M*.PPZ=L<82\+TB@7!S V!5JA\J^HP= TWM--H!&8UC+ES-!&'KG)W5Q*!Z_X MKK9"TY2>&8*1=H;L*Y=6='\XRPH5EYD&M[0@D#.XS17BH]QQ!VZ;"#X*;E>Z M,;2@AI>0A%-JXV &%TRPC$$2T5AG]A>QSV0)$0V%\8PLE_&R",R0SL_ZOZ+Z9+TY)+GSN[D-]"=]W3G/YW='^CUZ6B[3!\B.PHW3-;B M-@G'4ZC:IR1U4NKR\7%^9>T>[EHRG8_-X=[%N'PMFWQ%EZ]T4Z5Y?U4!$UF3 MO4=45C"MM/0/1LG8>4C-=PAM27FI9*C2U$M 1(B4BA7*23"?4 M)!.Z'%)Y$*38# 2%3B]>30)F!5 *: @3"!?PY)[06D3D)8PJ9=&?[N)GE-+J M<>@X1_U_,?>6/;OEE78GJX I83;Y$HZGR^M&^2#YO2L-O MYDV%3;M^X/04%[@GU^!T3J^5:HK6YL/(RA6*.VFH['3=G I]5-: YO=2FN[# M+M#_Z[#Y%U!+ P04 " #A8ZI6XZM7I)P" #2!0 &0 'AL+W=OM=3)3K15< MXEJ#:>N:Z9>.+U/"^%_8=K'G M<0!9:ZRJ>S!E4'/9?=ESWX<]P&7T"B#N ;'/NQ/R65XQRY*95EO0+IK8W,&7 MZM&4')?N4>ZLIEM..)NL5%US2UVV!IC,8:6DY;(D&VXX2[G@EJ.!=_ MST)+H@X:9KW LA.(7Q$8PRU15@:N98[YO_B0DATRCG<9+^.CA+=,G\%X= IQ M%(^/\(V'#HP]W_A_.Y"YPJ^XR80RK4;XN4B-U?0W^G6H"YW(Y+"(&ZVI:5B& M\X!FQZ!^PB!Y^V9T$7T\4L)D*&%RC#VYHU'-6X'PM8!/K77)KME+5Q*Y;K!D M FB^K$#O/)3_487#^=]7"/CS)PJ+4V)UHF?@( MC6YON'A5>,<+,@THB:/D4EOR,ZF2&R 2M%C.%'PY\ M?0"\V9?Q3"=P>1I%D3,F_?%>6>K2"8PNO'GH6<*].:M1EWZ;&,A4*VTW@NPW2&58U?FI396D'^&-%2Q>U"Z#[ M0BF[,YS L,:3/U!+ P04 " #A8ZI6 E>I][\$ ",&P &0 'AL+W=O M2=L=L!\_ZF'1LF@N3KDOMB3?>W0.=2]Y+$[VC'\5:P") MOF5I+J;>6LK-G>^+: T9%;=L [GZ94K:?>M@[7'A.5FM97/!GDPU=P0+DE\T3 M5V=^@Q(G&>0B83GBL)QZ'_#=/ R*A#+BCP3VXN@8%5)>&/M:G'R*IUY0,((4 M(EE 4/6U@SFD:8&D>/Q5@WK-/8O$X^,#^L=2O!+S0@7,6?IG$LOUU!MY*(8E MW:;RF>U_@5I0O\"+6"K*3[2O8P,/15LA658G*P99DE??]%L]$$<)"L><0.H$ M2JU\3E2=G M]UNAK@B!%K!23T<*=(.>(6)YE*0)+4>:+=65'>1;0$O.,ATI&9JS7+ TB:F$ M&%T]@*1)*MXKC"^+!W3U[CUZAY(^^XD?.\ O1 M(\OE6J"?\QCB=KZOM#:"R4'P/;$"/E)^BT)\C4A 0@.?^>O3B85.V(Q_6.*% M9_#JP50CO&%<)OD*?_J3EJ05,P%D65.BA3BYEH-\.XWQN-)O[NF'\W;#P: MCGM-5(M8OR'6MQ([/)+?-\!I^4B>.%LF$EW]RH1X;Z); ?:/>/2#\(1K-^:& MD-'0S'70-W*';;AFZ5.X(K*5\U"@?O;U; M1IW2,G9+-\S2+>.&V-AUMXP[/$@0DA.RW: ;/ X",UD..J=5*8I+!SB,/,7R.VIOZP MLTX9HG 0CL_PU=X!6Q?HV1.'B I9_&>).$@HZ,;;Z$P/.74.KM#:RK5WP"/' M/60U(Q>K=X365J\-"K8[%'L/&[.TW MN/11N4)K#XD=H;?7:F1"[,[$WDL&##$9X<%J7AK @&)[YMTRT"R%V%V(O MS-=/^T[]B2NT]IAH?T(<^Q/BU)^X0FNKU_Z$?(<_(09_8JI6TSN5L]4::G\2 MVOW)&Z;]&O'XI>S-Z:1OBB'X:&VHZ/I'^QH9\%6YW2-0Q+:YK-[X-U>;+:4/ MY4;*R?5[?#>O-H8T3+5/]4CY*LD%2F&I((/;H1I"7FW]5">2;&ULS5=M;]LV$/XKA%8,"=!$ M$N77S#90.RL6H,6"N.D^#/M 2V=+*$5J)!UG_WY'2I;?9#4%/&!?;)*Z>_C< MP]/I.-I(]4VG (:\YESHL9<:4]SYOHY3R)F^E04(?+*4*F<&IVKEZT(!2YQ3 MSGT:!#T_9YGP)B.W]J@F([DV/!/PJ(A>YSE3_TR!R\W8"[WMPE.V2HU=\">C M@JU@#N:Y>%0X\VN4),M!Z$P*HF Y]CZ$=[,PL@[.XFL&&[TW)C:4A93?[.0A M&7N!900<8F,A&/Z]P PXMTC(X^\*U*OWM([[XRWZ1Q<\!K-@&F:2_Y$E)AU[ M X\DL&1K;I[DYC>H NI:O%AR[7[)IK(-/!*OM9%YY8P,\DR4_^RU$F+/ 7&: M'6CE0(\=.F<>7S%Q8]\RPR4C)#5'6&M'LP&GCO#&:3-ACG!N%3S/T M,Y/I6N.*UF0.*SP=H\D->8)8BCCC&7-*RR7YO0"%$[$BCTHN,T.N/DFMK\E2 MR7SG:2292:$ESQ)F("%7]V!8QM'NACS/[\G5NVORCF2"?$GE6C.1Z)%O, ;+ MQ(\KOM.2+SW#-R*?I3"I)K^*!))#?Q]CKP6@6P&FM!7P,U.W) K?$QK0J('/ M[.WNM(5.5)]'Y/"B,WB5F'@&A516\?>[XT#Y'PSD!%_>-YW(R8'\^0EWV\#6PI=)-\#\>-D/\=3FAM)!O[8ZX-ZM MN7?;N9L4%+F"5ZS4&J[Q?8EE#O@*"3!-1$NT[CZ)<$#[1U1/K;J]J)EHKR;: M:R5J$XXL #6%+4G#7J%1S=XI2=H/Z1'))JM@V&FFV:]I]M^8"_.6XV[%^-'4 MOQ#80;B#.MS!_[> #"ZIXH7 #E0/# M8/=1#UKI/P@#*(HA514Y7STJH$,&T6!PQ+/)+.J?X[G7?(07K745W/>*78/9 MV6H7TAU9VDKV63#.9>Q>A%@J3 (<;A76!/L9(ET\ZWW#E*E5=\IWH]EI_?;WNM4<4!W;Q&N4="U,V;?5 MJ_5%X8-KCX_6I_8"X;K@'4QY^\"N;)4)33@L$3*X[:-ZJFSHRXF1A>N)%])@ MA^V&*5Z"0%D#?+Z4TFPG=H/Z6C7Y%U!+ P04 " #A8ZI6+H>^ 'P# "I M#P &0 'AL+W=O^XL*2;K;8+?C:K MR 96H%^K%VEF?LM2T!*XHH(C">NY]Q$_+G!L 2[B3PH'=39&5LJ;$%_MY%,Q M]P*;$3#(M:4@YF\/"V#,,ID\_FY(O?:>%G@^/K+_YL0;,6]$P4*POVBAMW,O M]5 !:[)C>BD.OT,CR"68"Z;<+SHTL8&'\IW2HFS )H.2\OJ??&L*<0; DRN ML &$_Q<0-8#(":TS<[*>B2;93(H#DC;:L-F!JXU#&S64VVU<:6FN4H/3V=-. MF16ET HV9G>T0K^@)>2"YY11XBHMUNBC4F NK:4HCX%("[007 E&"Z*A0.^? M01/*U ?#\+IZ1N_??4#O$.7HRU;L%.&%FOG:9&SOZ^=-=D]U=N&5[#X3>8\B M?(?"((QZX(MA^#/D+3SLPGU3I[9885NLT/%%5_B.TI=0":DIWZ!/O'Z23)WZ MU-5TDWXZ^X0^JHKD,/?,(ZA [L'+?OX))\&O?5I'(NLHCUKET1![5AN@3V*- M2QS.OC/V610ET32=^?OSY'O"DCC"01O626O2IC493.N/"B1Q&]':]U^T-"Z\ M0U\@WW+!Q(:"ND/&?B9$[FD.O2H&;W/K1HU$UJE(W%8D'M>B\9C*1R+K*$]: MYPTD4!/C"HCUATQ!CW&_1:9O6]':+ODC(B=+V!9I+T& 61+'+ M^],?Y+]UAT8BZY0B;4N1CNO-=$SE(Y%UE#^TRA]^T)L/WYLNF,3II3?[PM+X M(>WW)@Y.7__@=G>N- !K+>G>G9^!J)T$&]'[%1^\RZT[-19;MR9G'1$>UZ8- MWUCJ1V+KJC^U.'BPCQBP:@,\-V&4AE%R8=6>L'@2X^2*54\="!YN05XY84SD MKM?,A31[8X:(7$]WD.[F71F)K2O^U.?@R'+6C&8NMJ_[4T^#!QF'(D_'W M?640)\&E)_O"S OTPI/^V3G*'F+-\6-#N4(,U@87W$\-C:S/A?5$B\H=K=Z$ M-@&PO=V]R:W-H965TN^3OO'/''XQV*J]-3%,YD(\F\U=-+0< M4Q#$$&J#0/&R@3'$L0'",OX4F%:9T@3NKW?HWS+NR&5.%8Q%_)M%>C6T>A:) M8$'7L7X4V^]0\&D;O%#$*OLEV]RWT[9(N%9:)$4P5I PGE_I2Z'#7D#+/Q+@ M%@'NVX!C&;PBP#LU@U\$^)DR.95,APG5-!A(L272>".:661B9M%(GW%S[#,M M\2[#.!V,U@HM2I$9+/$TM2*?R0\J)37'02XGH"F+U15:GV83[(OT MWJG5ZK=+IP/R[9)\NY;\O4"JIJDJA2^.")]DI9E>8\E5G&NQSN7?W3DXUX4Y)N%-+>(PO0PTAMA20RU?L97+#0E#D_GY8 70\ 0 ,H= 9 >&PO=V]R M:W-H965T0O*\I2+.0I6]M\RPA>EDEI8B/'">P4QYDU M&977GMAD1'.1Q!EY8H#G:8K9ZSU)Z'YL0>MPX3E>;T1QP9Z,MGA-YD1\WCXQ M>68W*,LX)1F/:08868VMC_!NZI8)9<2?,=GSHV-04%E0^J4X^6TYMIRB(I*0 M2!006'[MR)0D28$DZ_BG!K6:,8O$X^,#^F-)7I)98$ZF-/DK7HK-V HML"0K MG"?BF>Y_)34AO\"+:,++3["O8QT+1#D7-*V3905IG%7?^&L]$4<)$J<_ =4) MZ#3!.Y/@U@EN2;2JK*3U@ 6>C!C= U9$2[3BH)R;,ENRB;-B&>>"R5]CF2/X#W[SZ M=R#.P,N&YAQG2SZRA:RFP+2C>N3[:F1T9F07S&@F-AS\DBW)4LVW)8N&"CI0 MN4=:P!EFM\"%-P YR.VI9WIY.M*4XS8SZY9X[AF\AYCC]9J1-2[U2E>@GNN^ MJ:J@O'ZHXJ]\Q[ ?22WPW- [$61/E#N 3K\@PZ:Z4%O=$R,1Y@),:18Q(LAAW^VM4PMU M[9H8 E-8#QO60W-*')ID;0A,80V=]F;K?*\6:X1CF2$/=7;'GC#H.^?4"(_L M -16.!>$)(T(R[UQ1C#/&9'>3?06K 6\=GU,H:GT44L?F1-FC66*N2$TE7GK M5J#6%EPD3;\(<9W#FS@U;9P'UUJ*X=ZO*_)30A2SZD<75,\$, M9_+1HQ J^ ;>KM3K0-ZAEHR['%)K*O/4Y4&LH+M)RT!&I M'SA>9YOM"8.!#\]HN?4D\#],R4&6KXT>*W'2)"]6B[]5P-IAKUY&0VCJ)+76 M"(8&!6S4')E"4YFW]@AJ?MOD-[?_"$VA)V7YM6R-?K&QA2:.C>MLT*>0=D:]4BF MT%3FK4="^O=!E\C6[\K6]1QT*MMNF.]XYV3;6AFDMS*/>"'=+19$WO?51[-O MIQ%;3#W;UVOT?KW50ZZ'0P*!JC1HC4V@J\]88(?U+HTM4&_9LMCXQ"/915RPE;%TV"SF(:)Z)JJO47&T: MDA_+-MS)]7MX-ZW:BBU,U>6<8;:.Y<-:0E82TKD=R#\2JQJ'U8F@V[+WMJ!" MT+0\W!"\)*P(D+^O*!6'DV* IGT[^1=02P,$% @ X6.J5B+&U%DL!0 M7B( !D !X;"]W;W)K&ULM5I_;^(V&/XJ5G:: M[J2NB>TDA Z0KNU.VQ_54-O;_O8% ]$E,;,-W*1]^#D_&F-(7%!=52I)>/WX M?>R'^/&/R9[Q[V)-J00_BKP44V\MY>;&]T6ZI@41UVQ#2_7-DO&"2'7+5[[8 M<$H6=:$B]U$0Q'Y!LM*;3>IGT3ROD%0>_[2@7E=G5?#P^@7]2TU> MD?E&!+UC^=_90JZG7N*!!5V2;2X?V?YWVA***KR4Y:+^#_9-;!QZ(-T*R8JV ML,J@R,KFD_QH&^*@@,+I+X#: NBXP% -N"V :Z)-9C6M>R+);,+9'O J6J%5 M%W7;U*45FZRLNO%)6G;86W385HH$(,'E@IUP+\ M5B[HPBSOJ^0[!NB%P2VR CX0?@TPO (H0+@GG[OSBR-+.KAK4%SCX0&\^TR0 MU8K3%:EEJIJS;>*^IFJ@PGZHZA=\(S8DI5-/_40%Y3OJS7[^"<;!KWT\'8$9 MK,..=6A#GSTS27)0JM>.(#GME44#$-< U M*K\&(#K058+&,3I2WVE4G(1CV*^^I,LNL6;WYTZ]2X>49RUZ:1\X C-8CCN6 M8W?*&[MD[0C,8 T#/8 &;]5>BW H*XPB%!^)KR\L4'_]ZH,'0SRT9OBHQO K M\$S3=-X0*S:9D"[SSA# MK-;!W@Y_<75+<*AW%"(3N;@/6$P"H;&>J3="+*[D4%5GC/(V[$O M[JOW6"U!VO6@T*%*G=H;5V@F@;W)#F> MS_>&C<+1@$*U_4!V^_$D*X_E%WRP%^1R,\CM;M![&!RL#0Y^\X90BV"ZS-')JFAO6'"PSMX!=WUGLLO&!M>;##32/LU.:X0C.9:YN#W[QQU"*8&Y?!^'@F MWQ.FIDS'*O4/=NH+RE?U 08!4K8M9;/EW3WM#DE\KH\&'#V_A3=WS5$'#=.< MO'@@?)65 N1TJ2"#ZY'2%F\.,S0WDFWJ\P#?F)2LJ"_7E"PHKP+4]TO&Y,M- M54%WI&3V/U!+ P04 " #A8ZI6NC%7V"H# #6# &0 'AL+W=O"LU&=6/<26YNILI/QG=P0[H%M!G]',''-VK1X16 M) >!SI<@29:+3^K>PVJ)SL\^H3.4472?LJT@-!$S5RH&&L>-Z]VNJ]WPD=T" M=,.H3 7Z2A-(VOZN8M[0QR_TK_%)P!O"!RCP+Q#V<&#ALWB[.SY!)VBB&1B\ MX C>,A-DL^&P(29'V1K5\;6%JH(:VJ%T^5Z*DL0P=U1]"N [<**/'_S0^V+3 MV1-82_6P43T\A1Z9S)$Z'8BQ6 MGOHU5BV6HX;EZ'TL2^ Q4*E>5C:F%=CD@(,WP!/<86JS"KRQG6G8, W?R#2C MY5:B F3*$AO)DSCO3:&>P%J2QXWD<7^%,^Y3=4]@+=631O6DK\*9_%<2?HA] MOY..%JMI@+$]':<-RVF?A5.!35LEX0\[1*>6NO&GH9VH[[T>9MX;J:J.Y73I MG$9Z;Q;UA=;6?7"(^_V53XW5E_*>T-K*\:MRW%<)U4CM&@K\42=.(? MR0:_MXQJM$Z)#+L5;S?SNVS=@PZQ +XQC;- L8Y5U6TUJTUS?F5: MTL[ZM6[:3>?Y"E-U_*J7VF14H!S6"M(;C-79R*LFNII(5IH^])%)U=6:8:H^ M/(!K W5_S9A\F>@-FD^9Z!]02P,$% @ X6.J5NE^G'$0 P ^P@ !D M !X;"]W;W)K&ULK5;?;]HP$/Y7K*R:.JEK((% M.XA4Z*;UH5-%U^UAVH-)+L2J8S/;@79__L^KY,<"JI/Y1($[F12%=3@5"U\O51 4^=4<#_H="*_ MH$QX\MN%&5ODQB[X\6A)%W +YFYY MHW#FUR@I*T!H)@51D(V]B^[Y=&CMG<$W!FN],R96R5S*>SNY2L=>QQ("#HFQ M"!3_5C %SBT0TOBUP?3J(ZWC[GB+_LEI1RUSJF$J^7>6FGSL#3V20D9+;F9R M_1DV>OH6+Y%K=[>7Y/CH'3DB3)"ON2PU%:D>^0;/M@A^LCEG4IT3 M/'-.2*ZE,+DF'T4*Z5-_'SG7Q(,M\4G0"GA-U2D)NR=#D_C_!/8D%+TZ%+TV]+A63[4&TWA7*H#( =@Z MLXK#;M 9C/S5KH@&JS#JAK75$W;]FEV_E=V$DDD"4Z$SD I2(F16$038"LZY] 8Y.B0 M=G06[=%N)?#*BS*HY0U:Y5V)!!N/!EM:YHSC]D+;,3PDH%UZ$JG-B9WS,L5= M5%R],E0N%X+]WJ\DE?#!@?#NV7 _7ZW47BE\6 L?M@J?'T#]O1/_ M 5!+ P04 " #A8ZI62(M+IX8# !9"@ &0 'AL+W=O+*T6Z)&6G^_4[4K+BQ+*P%NL7FV]W]]SI[LC93JHON@0PY+[B0L^]TIC- MI>_KK(2*ZG.Y 8$[A505-3A5:U]O%-#<"57R-IP) MN%%$UU5%U;<%<+F;>Z&W7[AEZ]+8!3^=;>@:[L!\V-PHG/F=EIQ5(#23@B@H MYMY5>+D(8RO@3OS%8*8(F 0V:L"HI_6U@"YU83C"ZLLDU^Z7 M[-JS@4>R6AM9M<)(4#'1_-/[-A ' E%T0B!J!2+'W1ARE-?4T'2FY(XH>QJU MV8%SU4DC'!/VJ]P9A;L,Y4QZ"UL0-9"79"F%41@D!# E63K3H,CS:S"4EK#45N9[Y!LU;)7[6FEHTIJ(3IF+R!DV4FOPN_9% M-*CP#57G) [/2!1$,?EP=TV>/WLQH#?N8A([O?$)O5TD/CZ*Q)766"57A;%C MCNE,108$3,D-=2:SRN% A#/MU*SNWNCJK\,X">.9O^WAN.@X+@8YWF)$:8[!PPK5Q$B2[6-/;;1[LZS1>'$ $D;3 MH)\CZ3B208[WB@I=@-*D4+)Z0H%EWT0+^6B6R5H8C1TI [:E*PY]C,D1X\LX MF2;]D.,.*XS6C*\:9^?8?$G_R M$Q)_VN%/_^_$GQZ%,1E/POXHAL%#WPT&0?:-%_-(K@7[!_(GJZB!T\] MZ>4-C\MV.CF%&SW@1H.X[TR)GX_F?V,BXF/!Z#.$W9.M:HW'D3K'FU\;9FK5 M6ZVMC4>QQ$*9G(![N$?"P1[^W07;JGO48Z.C3^H?W/98>FOWIM'$]:7FXN]6 MNW?35?-:>#C>/+H0:WYL9#L,=%X\R0U2P M+W(FITZF5#EQ71EG6!#9Y24RO9-R41"EIV+MRE(@2:Q3D;N!YPW=@E#F1*%= MFXLHY!N54X9S 7)3%$0\W6#.=U/'=PX+"[K.E%EPH[ D:URBNB_G0L_1;,G4\0PASC)5!(/JWQ1GF MN0'2-/[4F$YSI'$\'A_0OUCM6LN*2)SQ_!=-5#9UQ@XDF))-KA9\]Q5K/0.# M%_-'Z+BM!<7L 94 9W&=](PA(9NDH3,7!N7!]Z4QT:O'#H=R*ZT/,[$'A! M#^Z7MW!^=O$2;O^ MT,:[PN^WXYL+,I$EB7'JZ!L@46S1B3Y^\(?>IQ/L>PW[WBGTAKUH$E$>)8(W MB6CC72$/+;*YA]LH&%R-QW[H;EL8]1M&_; MXJZ:N,MG!:<=*4_:J)_FX,,3$M$6:O>HS9H72[>Q-642&PO=V]R:W-H965T3 LA(8 M]HM%4IS#,\.98\UTI\U7FP$X\BV7RLZ"S+GM;1C:)(.K=+*#!Z\*S MV&2N7 CGTRW?P!+ MM/Q7I"Z;!>. I+#FA73/>O&P4D*:S3>6V,#'*AJB?_ M5@=BSX"Q(P:L-F">=W609_G('9]/C=X14^Y&M'+@7?762$ZH\E:6SN!;@79N M_I?6Z4Y(2;A*R3\N T,^*L?51JPDD#MKP5GRGBPQ&]("5_2:-"9O'\%Q(>T[ M\H8(13YENK (8Z>A0V8E?IC4+.XK%NP(BY@\:>4R2_Y4*:0_VH?H4>,6>W7K MGO4"/G%S36)Z15C$8O)Y^4C>OGG7@QLWX8H];OR3<'6Y6%G>=%N6U75KMSR! M68#E8\&\0##__3!J^=' 8-!P&O1RP2K &%&:M,:"2[\09KJSDOOI$CKZ[+BX5Z&"/ M"XVC;B;#ALGP%Z,!*OU)*(8'Q\?1>'@D%*.&P*B7P#.6Q17Y!$FFM-0; ?;* M%]@2KUTDT%DAO8@GIL^XX3L^.:W'%^ U:7A-SIG6D\-4FDQNQMUW2:-6(J-+ M)':-^DN93??TFIXMMVNH?0;X;STZ%A#6= J,>" +(Q.B\1U M*W\OUHD)1%O!IJ% ?P8[8[$):2;MMI-3Q=O>@GU MIJU\T[/J-ST4\",IQ5KQ9A<1;W8HWL>HM-+-SB?=-=2PY_QP[ZL_![/QO8TE MB2Z4JQJ 9K7IG^ZJKJ'=7C5?^+F,UV.)A#6:1MXB5=MB1 M^&&&/2"8<@.^7VOM7B?E 4U7.?\?4$L#!!0 ( .%CJE89M+7'?@8 TP M 9 >&PO=V]R:W-H965TW0. M=:ES1;/'6ZF^%2LA-/J>I7EQ,EAIO7XU'!;SERX.G>A9L=RH],D%Q<*%9LLX^KVM4CE]F2 !W#J&0D4C'7)00W?V[$F4C3$LGP^'?KY# M?U.)-V*N>"'.9/HU6>C5R6 R0 MQS3>I_BBW[\1>4%SBS65:5/^B[3XV&J#Y MIM RVR<;!EF2[_[R[_N!.$@P./X$LD\@S8111P+=)]!*Z(Y9)>N<:SX[5G*+ M5!EMT,H/U=A4V49-DI>W\5(K\VUB\O3LK92+;9*FB.<+]+=>"87>YYKGR^0J M%>BT*(0NT!&Z-.6SV)@S\KKU/7I^+C1/TN*%"?Q\>8Z>/WN!GJ$D1Y]6?BWF=3@)T:'WC:(5'._#>)'FBQ=&?9A(LVK?, M-^ [/.;'*Q\7KXHUGXN3@7D>%$+=B,'LUU_P*/K=)Q8(S)'.:NDLA#Y[JV11 MH#.NU&V2+]$7GFZ$3_ .952AE(^SF]EH0J/Q\?#F4(DO*HI('>50C&N*<9#B MZ7R^R38IU^;FG&92Z>0_7CZV?#1W2/$!@2,6C^-)@Z;VM%UJS8D=#''(X"=*[,./7,8?# MF7TK&0K-U6DM&D-[- 8U:2@T5[ZU:0SCTWN8PQJC-&H68CC(I6AM&L/Y-/8X M,)XTGSKW1;E$K4UC$)_&;0O&K/7,"0>Y#*U-X[!/GU4O*^;]08FT&L-BE:S] M10YJU%!HKFQKU1C:JS&H64.AN?*M76,8O\8^-V:X59J^,#QA_N(DUK<)G&\3 MGR6SZ2ANPM"9.PB;^2?&%R+CZ M5E1K![H\1#G/A+?HPV!]BQX*S95N?9U ^SH!]74H-%>^]74"X^ND;=GC:=PT M3&\4[; C8IV=P#D[\;U;8T::3#UA=#KIFN_6VPF(MY.V;=,);CV5/%%3UO4 MM>Y.PN[^2M S=$S6B MXXX93JV?T["?O^$W4O&RT%/!"^\M#R/T7D)^"A.G!^OGX OHL"OH3V'BU)HX MA3%QZGGO;BVUW1/D4K063N$LG/J\>=2DZ0DB'9T&M?9-0>Q[CW+X0P.9XB;# M=A"-NJ:V-6\:-N^OU8^9Y2C>",67 OU /[^J'L;N7?5/X>W4>CN%]G8*ZNU0 M:*Y\Z^TT[.VM0CB<5NA"J$26PX+^$5SY1R.,C]&MR?0*[Y_H_C9H&P,6;@P\ MQ1Y8;PZ#];V]4&BN=-MF, QG[=58SU[-%'UP$2Z,U_LN Z&YVZ=L%Q='P$4> M@W9R4&BN?-O)Q>$%HT<7^3WXF'47^8-279VV98M[MFP_T$^L0X5!>]_JIUB' MBFTW%T.O0\6@+1P4FBO?MG!Q>!WJ\94>Q@\\S1^2N5,Y/-AP;;KN9;4/O4#S MZ/EOO=3^M=G@/;?ANH_P'KI9)7IABOS:IT\YVJ^*>7)J<"[Q5H)=%P=2/(>9RW?=:WL8PYO/, M6(,?]Q9LCA,T=XM;13N_1DEY@4)S*4#AK.\-6F>CKO5W#I\YKO76&BR3J93W M=G.5]KVF+0AS3(Q%8/2WPA'FN06B,KY7F%Z=T@9NKS?HEXX[<9DRC2.9?^&I MR?K>6P]2G+%E;L9R_0$K/AV+E\AUG L(J('1$R\HA.:73AM7#2QX<*^Q8E1 M])13G(D'22*7PF@88X)\Q:8YPAOXR)1B5E\X/D?#>*Y/R'HW.8?CHQ,X B[@ M4R:7FHE4]WQ#=5@T/ZER#LN-XG^JO200;$L-@+^ - M4Z<0MAH0-(-P1SVCEX<'>\H):TU#AQ<^@W?)!1,)%_,M41LPR*ECR(Y O0:9;;V[FRVS<_T@B78]ZB/-:H5>O'K5ZVH^6Z7 M% <">R1,NQ:FO0\]'I>(3H"EH*/KFMD>.58=PP;@ UU0&G?I4()'#MS>3JNX MU>GT_-4VO;T%_"6]3DVOLY?>A"XC>NL->(\"%)"?=WT^28R]M MW>QA+[8NY#F'I$G/=D(^J1)1PW/%N)I[I=;UM>^KM,2*J$M1(SSFA1XC_JAOI5FY_,0[1TBI[LE1ASEMBCW6II;:OQTLDA3 MT7"MX Y3I%NR80@7L&"F6(2G"*;LL)*840W?A5*HX'2-FE"FSN $*(MMS1.]PCN!% Y1$(W@X7X-IR=G1W!'?9)&#G?T7I)>I&,MFHW.&P9=[H8B;P''PX"VTZY5 M35*<>Z:5%,HM>LG'#^$D^'1$[KB7.SZ&_DINULDE>[GGL,&" RG,N%(:2)>I(063-PHNPB 8EC#M)4S_KS3(LW_4 M9?JV+I.K5ZK\@X%0H2S-D(;8:56Y;F[X#2&IC[7 C=;2Q!_[])_@!02P,$% @ MX6.J5E8X *&% @ R@8 !D !X;"]W;W)K&UL MK55=3]LP%/TK5H8FD 9IOEN61H)6"!XF(1CC8=J#F]PV%HZ=V6X#_WZVDT:E M#=T>]I+XXY[CG*&3A!AZ'O)UQ*S0J:NTBL:G)MW M[-US]ZLWYOU+5_P5[-S(G/* MY5H ^GFUD$KHZ_1KR%]+& X3FA2[E#7.8>KH')(@-N!DGS]Y\>CKD-O_1/;. M>]![#XZQ9S>$$7U-"K3B?/@H6WQL\2;Y-UF8)%&8NIM=#P-17AAX?=0[<6$O M+CPJ[EFG^CEAY[7@.!SNBSL,FL238%A;U&N+CFI[P(U.. 6" M8#JH+#I8U$\FDWA/VD!4&$V286UQKRT^JFU[H0E(G;4,U)"^^.#$QGKE_:T[ MC$JBQ-\_5W>GTI@JKQ-\19A$%)8:-[I(M$'15LZVHWAMB\^"*UW*;+/4CPT( M$Z#GEYRK;&PO=V]R:W-H965T I$N0 MVD35*K52E;3;P[0'!RZ)58.9;9+VW^\:*$H3$NUA+^"/>X[/N;:OQULA7]0: M0)/7G!=J8JVU+J]L6R5KR*FZ%"44.),)F5.-7;FR52F!IC4HY[;G.*&=4U98 M\;@>>Y3Q6%2:LP(>)5%5GE/Y=@-<;">6:[T/S-EJK5J+2B&U&ML:-9N5[:35=]/H\X[H>Z#RDOCN5^(YGM\#GYZ&SR#IX-Y' MN(V9ZM+E=>GR:C[_*!]ZGC&5<*$J">37]1+]XUG\W6>MX1KT:5*FL#$ MP@NH0&[ BC]_OV*@TYQ<%+QD]"4]^D)#M8:.LXH MW%-TRA]&H7U/8:0I/:KH'I;#V2(FYPEJC*\DT@]ZLA0?K7[ANM">R+\@[ MLM-1IS$ZK;$K0Z60YD'H4Q?UG,313G8:>8=1(S<*]O?5WJFQYGW#PK1BA<*C MEB'.N8S0GVS>C*:C15F7W:706,3KYAJ?69 F .&ULW9IM;]LV$,>_"N$-0P>DEBA;=I(Y!FQ+00LL:9"LZVM&HFTBDNA1 MM)T4^_ C)44R;9F+L=N+M"\:/=V/XAUY)_[-T9:+IWQ)J43/:9+E5YVEE*M+ MQ\FC)4U)WN4KFJD[%1.D>[*(^=/^N1S?-5Q]1O1A$92(XCZLZ$S MFB2:I-[CKPK:J=O4AKO'K_3KHO.J,X\DIS.>?&.Q7%YUSCLHIG.R3N0]WWZB M58=\S8MXDA?_HVWUK-M!T3J7/*V,U1ND+"O_DN?*$3L&GG?$P*L,O#V#'CYB MT*L,>F]MH5\9]/<,[UA< MU#GBN+^U M.1\2%D#"0B"8$8U>'8V>C3Z^81E+URE*Z(8*E3^1G@Z\+1A6SJG!@(0%D+"P MA&&WH.EBM!GWND-_Y&Q:O-ROO=RW>OEUS$?EF)]78_X,D92O,XE4G>[KEOWL73KX8,7V!\,#QX,@5[/\*Q?>]:W>O;N M=H:F)'M"M]U)%\V89-]5K=^Y]$U5ZEQE&;'@U54]P#.2H$F>\X@59^4=%:!) M2@6+2&DZ425C>O,%?5)%@N46Z[_1-5\+N=3F6:P*S*0H-BJDNMI4B6ZR$)2J M^VV9?&KMY*D1AH0%D+ 0"&:,E$$]4@90=6< &0U(6 )"X%@1C2&=32&;ZH[ M<_:LIDBT5/.3%M\Z]B(T/,S.N.OZ9D*:69L^U>60L! (9KC\O';Y^8^6*M7C MQN2>@69J]ED M64U.[>A3(U31_)U,[>U]8((V&$+13,_OJ T8:"%5@?:6&-Y^$;.W=^H8!Z6% M4#33UXV"@*U+XA^XDOVQ;1\RH$H(*"T I850-'-D-6H([D'5,PPJB(#2 E!: M"$4S8])H)]@NGIR064L0QD9F/4BLD')* $H+H6BFJQLQ!;\+->6>;GBR8=EB M7S!K#3JH=@)*"T!I(13-'!R-?H+!!!0,JJ" T@)06@A%,V/2J"C8+J/\1V'9 M3C\Y3L,#Q1B[Y_U#91FTV1"*9H:@457PNY!5CN9, '7:[H&3APFHE )*"Z%H MYEAJU!0,)J=@4#T%E!: TD(HFOEK=2.I>'9)I5BVL7K9AO26@M8?J^T8'[U0 M(O+67Z8A=9 E!9"T4SG-ZJ*9U=5CM:WE#P7BX)'+A2T2'M$O<>QC03XL#+U MW/+?WNK _D(G!P-4=H&BF<'8V;AAEUW,8*AOC"CB(M;E9TZ)7 MZAA*^I>*M M0?$.%4*_/2:P>S=@-V_\'X*%UP@6GGW_QK].$):I6R2GZ@!%/$V9U%FL+0]- MJZ9V ^(?F22@:@4H+82BF0%IU K/KE:\@\_!.\&X>-/^*]"-)Z"T )060M', M0=/H+IX/MB<.5.X I06@M!"*9L:DD3L\Z]+]6&9M$JK>K(!4TQO&U_E.;FV- MVN#P ^1PR]7,_DHGAP-4Z8"BE>%P=C;VZGW;-RH?JH]LE-"YPKO=H0J^*+=" MER>2KXJ]OH]<2IX6ATM*8BKT ^K^G'/Y>J*W#]<;TL?_ %!+ P04 " #A M8ZI68[@LYX\# "?# &0 'AL+W=O^6DN@J74J&SGGF4\%J7.&8=G2519%%3^.X5<;"=> MZ.TFOK)5ILV$'X_7= 4+T"_K9XDCOT%)60%<,<&)A.7$>PP?9F%D'*S%=P9; MU7HF1LJK$#_-X%,Z\0+#"')(M(&@^+>!&>2Y04(>_]2@7K.F<6P_[] _6/$H MYI4JF(G\!TMU-O%&'DEA2>%5HQL[+F5--X+,662&.-:.;!QL9Z MHQK&31H76N);AGXZ?J*2,[XBSR#)3!0%1G:140GDABRP9-(R!R*6I#93ULX: M7),I52PAE*=DSO)20THNYZ IR]45>K\LYN3RXHI<$)\HXZ (X^2%,ZVN6Q/? M,E$JQ,#)B[WQV-X>==#I-:GJ6;S>$;PO90&2:B$)[EY3NW7TTSKZ MN5"*K#$_295'&^0'5QRK=>[I25%>N6%0+]%L)"(/A?720)I?58-1WIVG8L!]VLF^EJ;6EG-OH5RJ& M)ZEP61U5,6I4C#J+[6FYQ"O1'-+V(,!+D2A(2LDT ^4LO]$YR^],8'O2[QOI M][^5P,Z3$.\DFOZ--RH:;/]_W=Z?E'&7U=&,A\'[I1UT"I]V56JI4CMKAT[N M-?JP?>H%MX?VH?,_R" &D,\/U2 M"+T;F 6:;Y+X/U!+ P04 " #A8ZI6+R[PW[XW)8;P1\DD5 )H\5R57 M4Z?0NKYT79464%$U$C5PW,F%K*C&J5RYJI9 ,PNJ2C?PO(E;4<:=)+9KMS*) M1:-+QN%6$M54%94_9U"*S=3QG>W"'5L5VBRX25S3%=R#?JQO)<[!GQAL%$[8V*<+(5X,I/K;.IX1A"4D&K#0/&SACF4I2%" M&3\Z3J=/:8"[XRW[1^L=O2RI@KDHO[),%U/GW"$9Y+0I]9W8?(+.S]CPI:)4 M]I=LVM@(@]-&:5%U8%10,=Y^Z7-7AQT \@P#@@X0[ .B5P!A!PBMT5:9M;6@ MFB:Q%!LB332RF8&MC46C&\;-OWBO)>XRQ.GDFJ>B O) GT&1XP5HRDIU0D[) MX_V"'!^=D"/".'DH1*,HSU3L:DQJH&[:)9BU"8)7$H3D1G!=*/*!9Y"]Q+LH MME<<;!7/@H.$-U2.2.B_(X$7A -ZYO\.#P[("?L"AI8O_&L!R8*IM!2JD4"^ M72V5EGA&OP]5K&6,AAG-O;U4-4UAZN#%5"#7X"1OW_@3[_V0W?]$]L)\U)N/ M#K%OS6LTOP0..=-#=EN.B>4P766=G(XC/W;7NS:&@KSS/NB%O'$O;WQ0WF>A M% K#7@=XBK=28? 4C__,'YSYP9[*H2CO(AJ6.>EE3@[*_)#G8+O9CD@BJ09R M7(-,@>N3(<4MZ?F.%F_D7USL*1Z*"J)P3[&[TT$JD"O;6!5)1<-U>S7[U;YW M7]F6M;<^PY[>MN#?-.V#@!=OQ;@B)>1(Z8W.L):R;;+M1(O:]JFET-CU[+# M=PFD"<#]7 B]G9@$_4N7_ )02P,$% @ X6.J5N/U+BQ&! *1< !D M !X;"]W;W)K&ULQ5A=<^(V%/TK&G>GLSO3Q$CF M:U-@)I#MM _I,$FS?1;X IK8DBL)")W^^,JRL7%B1,@XV9=@R[I']QSI2B<: M;(5\5"L C9[BB*NAM](ZN?)]-5]!3-6E2(";+PLA8ZK-JUSZ*I% 0QL41SYI MM;I^3!GW1@/;-I6C@5CKB'&82J36<4SE;@R1V X][.T;[MARI=,&?S1(Z!+N M03\D4VG>_ (E9#%PQ01'$A9#[QI?30A) VR/[PRVZN 9I51F0CRF+W^$0Z^5 M9@01S'4*0.?'-0KQDP##Y_WZ+]9\H;,C"J8B.AO%NK5T.M[ M*(0%74?Z3FQ_AYQ0)\6;BTC9OVB;]>T1#\W72HLX#S89Q(QGO_0I%^(@@'2/ M!) \@#P+P.TC 4$>$%BB66:6U@W5=#208HMDVMN@I0]6&QMMV#">3N.]EN8K M,W%Z=*_%_/%B;(0(T43$9G4H:O6]0']2*6DJ,OI\ YJR2'TQK0_W-^CSIR_H M$V(<_;42:T5YJ :^-LFDD/X\'WB<#4R.#!R@6\'U2J%O/(2P&N\;$@43LFA9TI:@=R -_KY)]QM_5JG1T-@ M%77:A3IM%WJ^[#+6\P-UZDAG2%V+E.Y*FU&_WQ[XFT,N+_N03K_H4TFQ4Z38 M<:;X[2DQ6XW-3VED)DZE,Z40[-NU0!M0NB[ESHMT>D&__RQGY_!OU+];D.LZ MR=W!7"PYLPLR K1EE]WC$(%"I$&ZA M."M[TD8AW=5M'!,GU!N%Z17"])R)WC!#4PM91]$9>6[U-016(=DO2/8_?F_J M-ZE.0V 5=;X6ZGQU+P%8@)2&LED)P!*=%T@=9S=0-U_K=02=D6\DB%OEH=\Z M4?Y*2V9W,;L3UQ[?3HAS)[0IM"KA Y>#/W[%YV,VI5!#:%6%2*D0:>Q$SJ'< M1W+>J?.:,QF7K@H[;8-N]U;=5'4TG4#!)ECJ:7V'LX-E]8-G_)NITI ;X5IO&6< MQ>NXEGM#%BO7XST,&RX=&^[]@&)HU.PUA595J+1[V.F77E,,;@!LBZ&6V7LX M-5Q:->RV6%.0]BJ+SR&_Q,A*@O(PFV_T8/[+J;^>:,B"Y3J\AZ$CI:$CK8^O M =*H VP*K:I0Z0")TS^=Y6]R*+>_J>ETU-^0TH81MPT[7:HG !SGECORW!GP M#RX=8Y!+>Q>KC+9KKK-;NZ*UN.^]MK>-GO1(K%7FS.AM8CMXPIH"#+M8+XOA-#[EW2 XG9\]#]02P,$ M% @ X6.J5NZ?">)/! 5Q0 !D !X;"]W;W)K&ULQ5C;;N,V$/T50BV*72"Q1.IFI[:!.-EM^Q T2+#99\8:VVHDT25I M.P7Z\:4H1?1&$F,[6^Q+=./,G!G.G!-SO&/\2:P )'K.LT),G)64ZPO7%?,5 MY%0,V!H*]67!>$ZE>N1+5ZPYT$0;Y9E+/"]R$AA)_;N49G*(V-/Y<,?R<3Q2D20P5R6+JBZ;.$*LJSTI'#\ M73MUFIBEX?[]B_?/.GF5S",5<,6RKVDB5Q-GZ* $%G23R3NV^QWJA,+2WYQE M0O]%NWJMYZ#Y1DB6U\8*09X6U94^UX78,_!)CP&I#8C&7072**^II-,Q9SO$ MR]7*6WFC4]76"EQ:E+MR+[GZFBH[.;V7;/YT/E-Y)>B*Y6JS!=7E.D=W("1/ MYU)]T:L0+1)T"URW0C$'=+^B'-"7(I4"?;@&2=-,?!R[4L$JG;OS&L*L@D!Z M(/CHAA5R)="G(H'D6WM7I=/D1%YRFA&KPQO*!\C'9XAXQ$<_(Q>)$JFH+Y8( M?E,U7T?P>R)\U9NM"G.Y!:Z:%_W&:2&1V@% GVG*T0/--M!5BLIOT.VW',$+ ML:9SF#AJQ@3P+3C37W["D?>K!770H YLWJ=_;J20:A/38GF&9K!,BT+=JJ;. M]'9^V(@$K8%79?J(_MTK75!Y#7I:)4-;!?QHV'$'['#@1]VPAPWLX>%=]TE?3VZY M8;OE@D&$NP&.&H C*\#7/-<5V.KAQ+'%GN%HSTHWKQ&>H6M8 .<-,U<<;.'G M3E;V_H^D]H0'OXN-TJ)NA&Y)J9R'W[!/@&._NQ:L9&*+!=*;H&LA. U50XED=.B $*,7Q$K=!W)([>20R(;4B9W4OS=]D#;- M]V$T#$_L#/\.^B!MUK?T"C&D3^RDOS=K]6\Q\XOKC=FS>SYQ]HC1"Q+\ $(A M5I$Z-2DC,.0(@3F:4$A;8[ W#.*^+C$:0^P:75D=L-Y:JU!&ULO5AMHK"6(Z=C5+)M>M*?P,1E9<\@5@_67$14:5O MQ=J5B0 :9* H=(GG]=V(LMB9C+*Q!S$9\52%+(8'@60:153\.X60[\8.=O8# MCVR]46; G8P2NH8%J._)@]!W;LD2L ABR7B,!*S&S@V^GA%B )G%#P8[>7"- MC"M+SG^:FR_!V/&,(@C!5X:"ZK\MS" ,#9/6\4]!ZI1S&N#A]9[]+G->.[.D M$F8\_)L%:C-VKAP4P(JFH7KDNS^@<*AG^'P>RNP7[0I;ST%^*A6/"K!6$+$X M_Z=/12 . .08@!0 \EI IP!T,D=S99E;TT&],D(: ^ I55A?H1DK0!C0. MT%=&ERQDBH'0?<\5AN);N, @@;\S(['Q$+@ZBB6H23[ M4$Z)E?&>BDO4P1>(>*33),@.GX-?PHE%3J?,;"?CZYS,[(5.0TAC'] BJPR? M!4\3G9T+=,=B/T52<:YE0'\:.+BD2Q!:< MR:^_X+[W>U,X6B*K!:=;!J=K8Y]\ Q'IU9YPR52CISF\G\%-*=Q.\&#D;@_U M6TUJJGJEJIY5U9=8@?95(:&3@>2.)HW:>B\G[F'\3%V#T;#C->OKE_KZ5GUS M$&Q+3=W-J\#!6_/7ZN!E>C!A-47Z]DF9BK_45>0V3B/0?IGA/[E"/PWL,W@M$16"P[VJG;OG5?X M"GS/5OGL-G5E!QL1W$;Q*U@.Y_:>R[.9U-612ATY:TT7<'O8K#9U8567Q]8^ M6:QITJBIU7;=%EO=SZIAX^Z[KVMLW22\.4 ML=4#5.T=L'WS<'IE]TZO')M) M75>U9\!M-.IIP5);'"]W-4U61[^^07^/_HVKAHW?O_.C5MMW6VQU3\OJ]Y-SNS=Y&5??K["K29U757G)JUT M;G*Z=G4Q)Y/,T5OEI3#E:GG[= M9&<^;F6>'YW=4[%FL40AK#34NQSH<(C\-"J_43S)#G267"D>99<;H $(8Z"? MKSA7^QLS07DF./D/4$L#!!0 ( .%CJE;T*X\GR@( %0) 9 >&PO M=V]R:W-H965T&!"=+!GDUP;"\?.;*=E_WZVTV9M"1ELU5X2^W+WW7U?;)_C)1>/,@=0Z*F@ M3(Z<7*GRU'5EFD.!Y0DO@>DO,RX*K/14S%U9"L"9#2JHZWO>T"TP84X26]N- M2&)>*4H8W @DJZ+ XN<8*%^.G)ZS-MR2>:Z,P4WB$L]A"NJNO!%ZYC8H&2F M2<(9$C ;.6>]TTED_*W#/8&EW!@CP^2!\T85H"N $Y*$RH/-+6N^DY.CPX0@>(,/0MYY7$+).QJW0M!M%-5WG' M=5[_A;P!NN9,Y1)]9AEDV_&NYM 0\==$QGXGX#46)RCH'2/?\X.6>B:O#_<[ MR@D:70.+%_Q1UV,TQA2S%-#4;LM+P:N2L/DQNB!,VPFF:*JPLL*C"2[-\FY5 MM,[8;\]HMONI+'$*(T?O9PEB 4[R_EUOZ'UJDV-/8%OB]!MQ^EWHR153H%$5 M@B=]&DEH(ULC#"V".8H622^(HMA=;))X[A2$7N.S5=N@J6W06=MTBCJC MWBK^GL"V" X;@L/_OC*'^Q1G3V!;XH2-..'K5B9A*2]:%V;X;,WY_<'.NNQ, M\I<4HH9"],^;JQ/AK?\K>B;(QW!G#[H;#:H ,;=]6Z*45TS51WQC;:X&9[8C M[MC'^LI0=_C?,/5]0Q_@<\(DHC#3D-Y)J/>8J'MX/5&\M&WP@2O=5.TPU]<> M$,9!?Y]QKM83DZ"Y2"6_ %!+ P04 " #A8ZI6HAQBW7 # #[#0 &0 M 'AL+W=OAJR\YK M+PFP-!MV$[7KW68GI1)@M^22Y:8']^*-LQ_86VRB"]KXDDBR2CTB)E&8' MJ7[H/8 ACTDL]-S9&Y->NZ[>[B%A^DJF(/!+)%7"#';5SM6I A;F0DGL^IXW MX ;B&.K"3G^+94ZE4TKV&P?M7_*%X^+V3 --S+^AX=F/W0[:9-C(IA9$@X:+X9X^E(QH"_KA#P"\% M_)R[,)13KIAABYF2!Z+L;-1F&_E2WY [N]6Y.W%.Y+B$GJ4!Y53 M@ESYH$/YNMQUZQ-U!5JOM#U'USIE6Y@[>% TJ =P%G^\H2/OSQZV0<4VR+4' M'6PKB' D)$L0V"JB1E9<;V.I,P5MN(-7P!U6N,->5QYQMQA^Q3=9?A1MF(C( MD@VH-MY"XS#7:+/*PV(X7W[+PT9DA#FY2ATVH*V.G9R$,F@/Y;0R/WVF^;#TVZ;T6R?# M](2!MC-0KTZ:WHOOZE)ED\/OX&@D;_HLCJ8/+@D\IECS<#C*#.X@ DD:RR?T M6A-77V)Y4_7^'XO_@T3+&2M]GH% MS]SBM,[_-'CI,TE?HRC0NBK0WBQ^WHX]N?[,M5^X6(7RJ35:J^" MO'0OD9YH'5]H+WY_+S0CI^=;.K$3_LS__^7;"8GR288="6;NG#0 M_LK1CO\+)=D\U?Q=<-,3N,G@-S:W<1]/0.WR5X=&6YDPQ=6\&JU>-A^*^WP] MO7@6X3UWQY$LA@A%O:LQAE05+XVB8V2:W^XWTN!;(6_N\74&RD[ [Y&4YMBQ M!JKWWN(_4$L#!!0 ( .%CJE;T!(>>M0, .D- 9 >&PO=V]R:W-H M965T MML^,=+:)2J1&4G'67[\C)A[R>'><[*3ZJK< AKREB=!3 M;VM,=N_[.MI"RO2MS$#@F[54*3,X5!M?9PI8[)S2Q ]ZO:&?,BZ\V<3-/:K9 M1.8FX0(>%=%YFC+USQP2N9MZU-M///'-UM@)?S;)V 968)ZS1X4COT*)>0I" MZ#W"SJP#L[B3PX[77LF5LJ+E%_MX%,\]7J6$200&0O!\.\5%I D M%@EY_%V">M4WK6/]>8_^T8E',2],PT(F?_'8;*?>V",QK%F>F">Y^Q5*08Y@ M)!/M?LFNM.UY),JUD6GIC Q2+HI_]E8N1,T!<=H=@M(A.'8(SSCT2X>^$UHP M<[*6S+#91,D=4=8:T>R#6QOGC6JXL-NX,@K?+?I3!;33Z(&.*FOX^"*E7!7M4\Z 3\S-0MZ=/W M).@%_18^B^]W#SKH]*M%[CN\\ S>L^ &8K(RS$#K\G2ZVY-\KS,6P=3#HZI! MO8(W^_DG.NS]TJ;M0F -I6&E-'3H_3-*EQ@I J7N8\;&%%ER'252YPK:M(>7 MU'XAL(;V0:5]T+G+GX0!1#4DPH/2IK1P'SIWFUY?9R,Z\5_K_$]-PKO*I,%J M6+$:=K+Z\)9AQL0M46!R)0BFSLQN"M,:3&LP%GB#&H>;87C$L\UFV$YT5!$= M=1)]@DAN!/^&5 5F'FM!VIG<5T[OO23J_<;&)9=K&JM/_ M1T_>A< :4FGO4,5ZE\X[)>*%Y%\*K:F_5L7I_\L]I7\]O@:#HQ!LL0D'[4%( M@P.SX,+YIP1L))?Q\7%I-3IS8NBA3M/N0OV02F7X-^8Z3+DF&1YT['EQNW@$ M;FTUP1:'&(6M$B_ZT%3FHGW)^R<4C_-3ITE3PZ$"T\XB]^-YM,2KDSA9[5.3 M,#A#]% N:7>]_&^IE)Z6R!MZ=\SWU(@>\_5K37,*:N/N$AJ_B]M9=)K5;'5? M>7!=^M'\W-YC7#-^@"DN0=A';CCVU FL$;)W.T):JKA7% ,C,]>:OTB#C;Y[ MW.)=#)0UP/=K*YF_P)02P,$% @ X6.J5KE!D] W P SPT M !D !X;"]W;W)K&ULM5=K;YLP%/TK%JNF5MK* M*X^V2Y#:I-.FJ5+4K-MG!VZ"5; SVS3=OY]M"(&$H%8C7Q+;W'LXYW QUZ,- MX\\B!I#H-4VH&%NQE.L;VQ9A#"D6EVP-5%U9,IYBJ:9\98LU!QR9I#2Q/<<9 MV"DFU I&9FW&@Q'+9$(HS#@269IB_O<.$K896ZZU77@DJUCJ!3L8K?$*YB"? MUC.N9G:)$I$4J"",(@[+L77KWDQ<7R>8B%\$-J(R1EK*@K%G/?D>C2U',X($ M0JDAL/I[@0DDB492//X4H%9Y3YU8'6_1OQKQ2LP""YBPY#>)9#RVKBP4P1)G MB7QDFV]0".IKO) EPORB31'K6"C,A&1ID:P8I(3F__BU,**2H'":$[PBP=M/ MZ!U)\(L$XYR=,S.RIECB8,39!G$=K=#TP'ACLI4:0O5CG$NNKA*5)X-'D(2# M>BX2S1),!?J,YJI4HBP!Q)9HPH04>G 0=SX%B4DB+E3&TWR*SL\NT!DB%/V, M628PC<3(EHJ@OHT=%F3N$3(^>F!4Q@+=TPBB>KZMA)7JO*VZ.Z\5\ 'S M2^2[GY#G>'X#G\G;T[T6.GYIMF_P_"-X4UBJE4BY2B4GB\P4LK8338D($R8R M#DVNY:B]9E3]HM^(-0YA;*DW60!_ 2OX^,$=.%^:)'<$5C.@5QK0:T,/[E_5 M]B- ("P$"PF6RHP-D3$**XX(5=]1HP\Y^," Z_WI);CVAR/[I2KO,*;ON&5, MC76_9-UO9?U$B28ZEXIO8U6WIK_W^70$5E,Z*)4.3E*@@RX-Z BL9L"P-&!X MR@+-P?N5XANXO;T"/8SQG7YS@5Z5K*]:64\PQ1%N(M2:]]X'TQ%83>)U*?'Z M))5YW:4!'8'5#'"=W9?:.65M%NBUXO3V:K,IYLCFZ58Z#/B>IU *V*Q,Z0JN;L&MTW-8VXK]KU3_XBGN50BPD'@:Y M_OY.:E=:XQ3XRIP8A**149GWD>5J>2JY-;WXWOJ=/JV8EGL'DQ]U5)>X(DI, M DL%Z5P.U>O#\]-#/I%L;1KP!9.JG3?#6)VX@.L =7W)F-Q.] W*,USP#U!+ M P04 " #A8ZI674O_6E<& !5, &0 'AL+W=O3W8*+5] M/QS*>$,R+"_XEC#]R8J+#"M]*=9#N14$)T50E@X]QYD.,TS98#$OWEN*Q9SG M*J6,+ 62>99AL;\A*7^Z'KB#YS?NZ'JCS!O#Q7R+U^2>J(?M4NBK84U):$:8 MI)PA05;7@P_N^\CS3$!QQ[^4/,F#U\ATY9'S;^;BS^1ZX)@6D93$RB"P_K4C MMR1-#4FWXWL%'=0Y3>#AZV=Z6'1>=^812W++T_]HHC;7@\L!2L@*YZFZXT\? M2=6AB>'%/)7%3_14W>L,4)Q+Q;,J6+<@HZS\C7]47\1!@.YH=X!7!7@O B:G M D95P.C<#.,J8'QNP*0*F+P,.-7I:14P/3?#K J8%8-5?KO%T/A8X<5<\"D[HWWW)L;SPK\C,4%>X5^CAWD>O7[WI:M<9 MF)%K,-[H&8.V7.FOA>(TW7\51&ZY?AX?4_)UBX7:=R3Q[4E\$M=)/$M; SOF MGFPUQBDPK@43GM%E;UI@''2J2Y$=\E?.+I S*;[^&8IYML5L;QG642W24<$= MG> N!4_RN%'DOI%IW-7,FQ(W[L:9ZOY>;G%,K@>Z?$LB=F2P^/TW=^K\T:45 M2)@/"0L@82$D+ *"M=0RKM4RMM$7GW3)6N-BHI-$J928ZH9PQG.FNL1BI?45 M2PF;%C"S#-@M])V.,Q_N#E4 F3* A(60L @(UE+!I%;!Q*J"+WGV2 3BJZH. MF5E,;;#2ZZ>8Z&DL01CI^D$$3A'CBL8$I5HM.N1U5;C>H)_=-:R4C35]7]E MPGQ(6 )"R%A40F;'#YJX^9!:XEF6HMF:A7-TJ35Q6*'TYP8[0A=/!(]Y1<+ MZBX56'E]53 ][I'K.,?E S)I D+(6$1$*REA%FMA)E5"0\LH3+F.R)TI?BE M"JRLOBJ8'4\ALRX50"8-(&$A)"P"@K54<%FKX-*J@@]ZE1G3+59:!'%*,$-; M(BA/NC1@)?75@+U9[@CM"19=.RX?LAD!)"R$A$5 L)8JKFI57)VYM#C8$J*# M+6&Q?S(+#LKB--=;6[-/QFM!RJ7HS]Y;R1MK@_J*Z^IXFCDJ+I ) TA8" F+ M@& M&;E.X[TXYPJI$HP@WW-JIAS%3:DQ5F,S^R1$TC4K)B&CH5-:L2?M*Q90 MF@]*"T!I844[?"Z\]E,1025LZ^7 JW.M>@G8C@K.3!'1F.)UIZJL M3>NM*GM'5W7C8ZX78J:9G6J";%, 2@M!:1$4K2T\KQ&>9U\'Q;'(]6CH>H1( M2X1:-%W+D!L[L+=7[Z8LSKOFKUXA@/0EH6@M B*UA[FQF9UK;[< MXF%Y=]E!:"T$)06 M0=':JFE<6-=NP_8UX^VXWJ*9',T(DPXG!31I $H+06D1%*VMAL9>=>W^JDT- M;U&<"T%.R&)Z/+4?C>.M/7OO&@%JLX+20E!:!$5KJZ*Q6EV[UVI7!>/LG4T9 MLZ-=V_BR0QJ0GJ0/2@M :2$H+8*BM:71^*^NW>E\*P-V=Z MVG<%;4< 2@M!:1$4K2V)QGQU[>[K,A?Q!DMB_C9;'5WJU,6QR]E9%R#M1!^4 M%H#20E!:!$5K'_-JG%//[IR>VJG:P_I6 U":#TH+0&DA*"V"HK7%T=BDG@N[ M4_5 O4U0F@]*"T!I(2@M@J*U5=-XG-XO/$[&\L)P?IY5++M4[]AI[)A;[ E[ M"P&2%G3TX/B<6@B:,X*BE0,\/#CTG!&Q+LZS2SU^>LS*\\_UN_69^0_%2?%A M9I @ N 4 !D !X;"]W M;W)K&ULE53O;]HP$/U7K*R:6FEK0H"LZD*D JLV M:950?VP?IGTPR4&L.G9F7Z#][W=V0L94BK8OQ.?<>^_>D;MTJ\VC+0&0/552 MV4E0(M:786CS$BINSW4-BMZLM*DX4FC6H:T-\,*#*AG&492$%1[B5JQ+=!=AEM9\#7> #_7"4!3V+(6H0%FA M%3.PF@17@\MIXO)]PC+X%4#< 6)?=RODJYQSY%EJ])89ETUL M[N"M>C05)Y3[4^[0T%M!.,QFNJH$4I?1,JX*-M,*A5I3S+X*OA12H #+WK/K M!AL#;,&?V^33.2 7TIZQ$R84NR]U8XG IB%268X\S+L2IFT)\2LE#-D-B9:6 M?5(%%'_C0[+3>XIWGJ;Q4<(;;L[9:@;K&ULW5A=:]LP%/TK1EU'"Z-.XL6-UR2P!0J#;13:A[T5)983@2QYLM(E M_?75M6SGH[JEZ\.6S"&U=(_.N4?2=2TR+,U:L-L%8R98Y4*6([(PIO@4AN5L MP7):7JB"28MD2N?4V*Z>AV6A&4U+(.4B['4Z<9A3+LEX*)?Y=6[*8*:6THQ( MOPT%[O8U'9%N_)$$3FZB4C8B]V?O?RV5N7H7N/O)AY.3SOWYU7[\K +.2>@5 M[;]"]**#ZUH,DXYWI9OAIU:KY9YBY$L/><-$:0-OSJV,%3&L%WP\S)3: MKKN]/MD0JIM-,E4Z9;I-TR5-:#P4+ ,[FL\7<#>J" $T1N6VD7(Z5Y)6'AI& MW;"R,R;$+3PH/[,=[56VM6<=V#'9-JVANNED7 ?TM]6<]K9L[TVZ0<$?E/FR MM-.151\JF]UHEO%5U5]EK0%,O8NKTZ(0Z\^"SV7.W.1?G7 \I TO6"C-'VTV M*)69#3!-@@>F#9]M1WYK6MRQE6G*:97AGGM'Z/GOKO.<2::IV#9M:_^05_G- MCJ/+?V6Y^J^R;]CKL7[[';K)_C&8C(_!Y!'49)06\F6>M*-N8"'J49OV-YA>-V[/@387ERE;L712=_5\6C4#V[!9ZPL( M^\AU=?D1C.,P/P(8E@=S@'$<"\OS/\UG@,['89BW@1<9H)P!RG$L'S*I/E@> M/R>QEW^F21)%<8RMZ&3B=3#!UBV.X>M7P[P! \L#F?YLK?'=QBODY3K ]O2E M"L%FBE8&"[@-4.Y/?G@9KRRK<_'HU?@)02P,$% @ X6.J5I>*NQS $P( L !?3T\$MP>:4#M.*2VBZD8_1!2:5K5N %(MB6/:(7->=I3W;+T]!;X"O.DQQ0FE(2S,.\,W2?S+W\PPU M1>5*(Y5;&GC3Y?YVX$G1H2)8%II%R=.B':5_'P+(1GW7[SI']<>O\T]*Y)_&C,C9, M!^L8GR^&PU"L527#[^Y963BSR7+L%8J5F:8C$:3826U'7SZ MN*MKYH?XP$551.TL%#8%#UIMP]OYYE!L=-!+;71\F0[:[T8-1*6MKO1/54X' MHX$(:[?]TWG]T]DHS:+PSICI8-R=>% ^ZF*O>-% WLME:$NB7,XE@$P'DQ%4 MN-(^Q/:*MGX)C!L%%W='=72?M8G*W\BHOGA7/VO[V%0#=S%$M]&VP^ZS:\0+ M_U^:T:U6NE WKJ@K96/7CEZ9!M"&M7X. V%EI::#:[=1OKD?^(/;LKNW"%"H MI?R%AA/^MFSQ.%%LJ6Q0I8!OP1E= D=C'AD-<8DS*(V-FD5P6A:NA M%\5<%4IO9/OO;VB4/<;,^KBUT*'1^1<,1)EBS*R*K\X^GD-(5XD;M8QMQ\Z; MZV#]^"9CQ)B4*\;,LOA#>@O!9A S&'/7KJJ<%8NU]+V.I3PQ9A;%K2UEA3&S%Q;1%4_G5[(S0P4UA?8BS$<98)"F5N*;DJ'V>U9( M*"LDS%:8JZ@[)#&#.+G'14DA8<\XJDK'MJG:^0K2CS W&LZO6BXQ)IER,,OB MD/#%V0S"DT*K\!O&I&21,,MBS_WB[+XQ1I^0PX" 9Y9"$V2%D?-#O9$HE";-*CL8'78/B M#0Y**2FS4HX9^;7;,29EF)39,$?$O!N<&),R3,ILF%\%?6CRI.2&%ON.%F'J M_K8;)9B463#["CQO%DL']C9:XAP@I7R3,ON&Q.RW)N6;E-DW-";>?$LIY:3, MRCF$^5UZ+YLM?W&&,2G_I,S^V04_YV(A86J+Y0MXYV_GQ7)F\^"]YH-#,J>$DS,+YVB.VRU &),23LXL' )S MK@).>G+R23ZS<(ZEXMV(+#$F)9R<63C',5OI8$Q*.#FSA>F]#4/)9W+*QSH] M1TXH^4Q:^0QW[^"5:@5I?OD=_B) >2%-,?.B^>C>)LCRYA'@JC;F&LKN[%I>/7;GKAWPZ7]GTX[&;SLMQFX9N_=YM<]+ELDWC[8SF^>EV MYN+U<\C_,['?;/;K_+-?_S[FT_2/P>E//[Z775DWZ.%Q/EW0Y MR-UY5LUX\N;-*EVD$*0U@\R"++Z00Y!7C\H("CJ![40U-8/NH>@^_I! M#Q#T4#_H$8(>ZP?)$F5<$B3-L";06I!K(?!:$&PA$%N0;"$P6Q!M(5!;D&TA M<%L0;B&06Y!N(;!;$&\AT%M1;R706U%O)=!;9Q_;!'HKZJT$>BOJK01Z*^JM M!'HKZJT$>BOJK01Z*^JM!'HKZJT$>AOJ;01Z&^IM!'H;ZFT$>MMLLX1 ;T.] MC4!O0[V-0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T>]G4!O1[V=0&]'O9U ;T>] MG4!OGVUV$^CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z.VHMQ/H':AW$.@=J'<0Z!VH M=Q#H':AW$.@=J'<0Z!VSGY4$>@?J'01Z!^H=!'H'ZAT$>@?J'01ZMZAW2Z!W MBWJW!'JWJ'?[G7J7Z?.0R[7G:XW/_TZJI_.]^?KXR_+KY.R]7'!.MQ7E^2]0 M2P,$% @ X6.J5O\GIW7C 0 ;"0 !, !;0V]N=&5N=%]4>7!E&ULS=I=3\(P% ;@OT)V:UCIU_R(<*/>JA?^@;H=9&%;F[8@_'N[ 28:)1I, M?&]8H.UYSWJ2YXKKIZVC,-JT31>FV2)&=\58*!?4FI!;1UU:F5O?FIB^^A?F M3+DT+\3$9%*PTG:1NCB.?8UL=GU+<[-JXNANDWX.M>VFF:&PO=&AE;64O=&AE;64Q+GAM M;%!+ 0(4 Q0 ( .%CJE;(HO8VR@4 (\? 8 " @0T( M !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5DY/BZC; @ ,0@ !@ M ("!T14 'AL+W=O(8 !X;"]W;W)K&PO=V]R:W-H965T&UL4$L! A0#% M @ X6.J5D&6!MK: @ <0< !@ ("!WR( 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ X6.J5H#)4U9Q @ M\@4 !@ ("!&34 'AL+W=O&UL4$L! A0#% @ X6.J5G;( M/Y%F!P [1$ !D ("!7#P 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5C6+07+C P GP@ !D M ("!W%( 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ X6.J5B!R$\$2 P B < !D ("! MZ6 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ X6.J5AD$-ZTX! %PH !D ("!%V\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5NPDXA1&! "PH !D M ("![)0 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ X6.J5I,&PO=V]R:W-H965T0@, .<& 9 M " @1FE !X;"]W;W)K&UL4$L! A0#% @ MX6.J5J*T3S*J @ :@8 !D ("!DJ@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5@S8OH(1 P @PP !D M ("!T;X 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ X6.J5KHQ5]@J P U@P !D ("!H\P 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J M5L"-W_BJ @ E@< !D ("!"-< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5CN-MJW, @ X@@ M !D ("!1N0 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5KEW^JW@ @ Q < !D M ("!UNP 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ X6.J5G.2"9N@ @ ]08 !D ("!T_D 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5DS( MEEX=! 'Q0 !D ("!K04! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ X6.J5O0$AYZU P Z0T !D M ("!J1 ! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ X6.J5E?%T>9I @ N 4 !D ("! MD1X! 'AL+W=O&PO&PO7W)E;',O=V]R:V)O;VLN M>&UL+G)E;'-02P$"% ,4 " #A8ZI6_R>G=>,! !L) $P M @ '"+ $ 6T-O;G1E;G1?5'EP97-=+GAM;%!+!08 1@!& "$3 #6 %+@$ ! end XML 78 Show.js IDEA: XBRL DOCUMENT // Edgar(tm) Renderer was created by staff of the U.S. Securities and Exchange Commission. Data and content created by government employees within the scope of their employment are not subject to domestic copyright protection. 17 U.S.C. 105. var Show={};Show.LastAR=null,Show.showAR=function(a,r,w){if(Show.LastAR)Show.hideAR();var e=a;while(e&&e.nodeName!='TABLE')e=e.nextSibling;if(!e||e.nodeName!='TABLE'){var ref=((window)?w.document:document).getElementById(r);if(ref){e=ref.cloneNode(!0); e.removeAttribute('id');a.parentNode.appendChild(e)}} if(e)e.style.display='block';Show.LastAR=e};Show.hideAR=function(){Show.LastAR.style.display='none'};Show.toggleNext=function(a){var e=a;while(e.nodeName!='DIV')e=e.nextSibling;if(!e.style){}else if(!e.style.display){}else{var d,p_;if(e.style.display=='none'){d='block';p='-'}else{d='none';p='+'} e.style.display=d;if(a.textContent){a.textContent=p+a.textContent.substring(1)}else{a.innerText=p+a.innerText.substring(1)}}} XML 79 report.css IDEA: XBRL DOCUMENT /* Updated 2009-11-04 */ /* v2.2.0.24 */ /* DefRef Styles */ ..report table.authRefData{ background-color: #def; border: 2px solid #2F4497; font-size: 1em; position: absolute; } ..report table.authRefData a { display: block; font-weight: bold; } ..report table.authRefData p { margin-top: 0px; } ..report table.authRefData .hide { background-color: #2F4497; padding: 1px 3px 0px 0px; text-align: right; } ..report table.authRefData .hide a:hover { background-color: #2F4497; } ..report table.authRefData .body { height: 150px; overflow: auto; width: 400px; } ..report table.authRefData table{ font-size: 1em; } /* Report Styles */ ..pl a, .pl a:visited { color: black; text-decoration: none; } /* table */ ..report { background-color: white; border: 2px solid #acf; clear: both; color: black; font: normal 8pt Helvetica, Arial, san-serif; margin-bottom: 2em; } ..report hr { border: 1px solid #acf; } /* Top labels */ ..report th { background-color: #acf; color: black; font-weight: bold; text-align: center; } ..report th.void { background-color: transparent; color: #000000; font: bold 10pt Helvetica, Arial, san-serif; text-align: left; } ..report .pl { text-align: left; vertical-align: top; white-space: normal; width: 200px; white-space: normal; /* word-wrap: break-word; */ } ..report td.pl a.a { cursor: pointer; display: block; width: 200px; overflow: hidden; } ..report td.pl div.a { width: 200px; } ..report td.pl a:hover { background-color: #ffc; } /* Header rows... */ ..report tr.rh { background-color: #acf; color: black; font-weight: bold; } /* Calendars... */ ..report .rc { background-color: #f0f0f0; } /* Even rows... */ ..report .re, .report .reu { background-color: #def; } ..report .reu td { border-bottom: 1px solid black; } /* Odd rows... */ ..report .ro, .report .rou { background-color: white; } ..report .rou td { border-bottom: 1px solid black; } ..report .rou table td, .report .reu table td { border-bottom: 0px solid black; } /* styles for footnote marker */ ..report .fn { white-space: nowrap; } /* styles for numeric types */ ..report .num, .report .nump { text-align: right; white-space: nowrap; } ..report .nump { padding-left: 2em; } ..report .nump { padding: 0px 0.4em 0px 2em; } /* styles for text types */ ..report .text { text-align: left; white-space: normal; } ..report .text .big { margin-bottom: 1em; width: 17em; } ..report .text .more { display: none; } ..report .text .note { font-style: italic; font-weight: bold; } ..report .text .small { width: 10em; } ..report sup { font-style: italic; } ..report .outerFootnotes { font-size: 1em; } XML 80 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.1 html 181 248 1 true 56 0 false 9 false false R1.htm 0000001 - Document - Cover Sheet http://www.lbfoster.com/role/Cover Cover Cover 1 false false R2.htm 0000002 - Statement - Condensed Consolidated Balance Sheets Sheet http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets Condensed Consolidated Balance Sheets Statements 2 false false R3.htm 0000003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical) Sheet http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical Condensed Consolidated Balance Sheets (Parenthetical) Statements 3 false false R4.htm 0000004 - Statement - Condensed Consolidated Statements of Operations Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations Condensed Consolidated Statements of Operations Statements 4 false false R5.htm 0000005 - Statement - Condensed Consolidated Statements of Comprehensive Loss Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss Condensed Consolidated Statements of Comprehensive Loss Statements 5 false false R6.htm 0000006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Parenthetical) Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLossParenthetical Condensed Consolidated Statements of Comprehensive Loss (Parenthetical) Statements 6 false false R7.htm 0000007 - Statement - Condensed Consolidated Statements of Cash Flows Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows Condensed Consolidated Statements of Cash Flows Statements 7 false false R8.htm 0000008 - Statement - Condensed Consolidated Statements of Stockholders' Equity Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity Condensed Consolidated Statements of Stockholders' Equity Statements 8 false false R9.htm 0000009 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) Statements 9 false false R10.htm 0000010 - Disclosure - Financial Statements Sheet http://www.lbfoster.com/role/FinancialStatements Financial Statements Notes 10 false false R11.htm 0000011 - Disclosure - Business Segments Sheet http://www.lbfoster.com/role/BusinessSegments Business Segments Notes 11 false false R12.htm 0000012 - Disclosure - Revenue Sheet http://www.lbfoster.com/role/Revenue Revenue Notes 12 false false R13.htm 0000013 - Disclosure - Goodwill and Other Intangible Assets Sheet http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssets Goodwill and Other Intangible Assets Notes 13 false false R14.htm 0000014 - Disclosure - Accounts Receivable Sheet http://www.lbfoster.com/role/AccountsReceivable Accounts Receivable Notes 14 false false R15.htm 0000015 - Disclosure - Inventory Sheet http://www.lbfoster.com/role/Inventory Inventory Notes 15 false false R16.htm 0000016 - Disclosure - Long-term Debt and Related Matters Sheet http://www.lbfoster.com/role/LongtermDebtandRelatedMatters Long-term Debt and Related Matters Notes 16 false false R17.htm 0000017 - Disclosure - Earnings Per Common Share Sheet http://www.lbfoster.com/role/EarningsPerCommonShare Earnings Per Common Share Notes 17 false false R18.htm 0000018 - Disclosure - Income Taxes Sheet http://www.lbfoster.com/role/IncomeTaxes Income Taxes Notes 18 false false R19.htm 0000019 - Disclosure - Stock-Based Compensation Sheet http://www.lbfoster.com/role/StockBasedCompensation Stock-Based Compensation Notes 19 false false R20.htm 0000020 - Disclosure - Fair Value Measurements Sheet http://www.lbfoster.com/role/FairValueMeasurements Fair Value Measurements Notes 20 false false R21.htm 0000021 - Disclosure - Retirement Plans Sheet http://www.lbfoster.com/role/RetirementPlans Retirement Plans Notes 21 false false R22.htm 0000022 - Disclosure - Commitments and Contingent Liabilities Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilities Commitments and Contingent Liabilities Notes 22 false false R23.htm 0000023 - Disclosure - Financial Statements (Policies) Sheet http://www.lbfoster.com/role/FinancialStatementsPolicies Financial Statements (Policies) Policies 23 false false R24.htm 0000024 - Disclosure - Business Segments (Tables) Sheet http://www.lbfoster.com/role/BusinessSegmentsTables Business Segments (Tables) Tables http://www.lbfoster.com/role/BusinessSegments 24 false false R25.htm 0000025 - Disclosure - Revenue (Tables) Sheet http://www.lbfoster.com/role/RevenueTables Revenue (Tables) Tables http://www.lbfoster.com/role/Revenue 25 false false R26.htm 0000026 - Disclosure - Goodwill and Other Intangible Assets (Tables) Sheet http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables Goodwill and Other Intangible Assets (Tables) Tables http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssets 26 false false R27.htm 0000027 - Disclosure - Accounts Receivable (Tables) Sheet http://www.lbfoster.com/role/AccountsReceivableTables Accounts Receivable (Tables) Tables http://www.lbfoster.com/role/AccountsReceivable 27 false false R28.htm 0000028 - Disclosure - Inventory (Tables) Sheet http://www.lbfoster.com/role/InventoryTables Inventory (Tables) Tables http://www.lbfoster.com/role/Inventory 28 false false R29.htm 0000029 - Disclosure - Long-term Debt and Related Matters (Tables) Sheet http://www.lbfoster.com/role/LongtermDebtandRelatedMattersTables Long-term Debt and Related Matters (Tables) Tables http://www.lbfoster.com/role/LongtermDebtandRelatedMatters 29 false false R30.htm 0000030 - Disclosure - Earnings Per Common Share (Tables) Sheet http://www.lbfoster.com/role/EarningsPerCommonShareTables Earnings Per Common Share (Tables) Tables http://www.lbfoster.com/role/EarningsPerCommonShare 30 false false R31.htm 0000031 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.lbfoster.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.lbfoster.com/role/StockBasedCompensation 31 false false R32.htm 0000032 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.lbfoster.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.lbfoster.com/role/FairValueMeasurements 32 false false R33.htm 0000033 - Disclosure - Retirement Plans (Tables) Sheet http://www.lbfoster.com/role/RetirementPlansTables Retirement Plans (Tables) Tables http://www.lbfoster.com/role/RetirementPlans 33 false false R34.htm 0000034 - Disclosure - Commitments and Contingent Liabilities (Tables) Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesTables Commitments and Contingent Liabilities (Tables) Tables http://www.lbfoster.com/role/CommitmentsandContingentLiabilities 34 false false R35.htm 0000035 - Disclosure - Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) Sheet http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) Details 35 false false R36.htm 0000036 - Disclosure - Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) Sheet http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) Details 36 false false R37.htm 0000037 - Disclosure - Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) Sheet http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) Details 37 false false R38.htm 0000038 - Disclosure - Business Segments - Narrative (Details) Sheet http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails Business Segments - Narrative (Details) Details 38 false false R39.htm 0000039 - Disclosure - Revenue - Sales by Major Product Line (Details) Sheet http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails Revenue - Sales by Major Product Line (Details) Details 39 false false R40.htm 0000040 - Disclosure - Revenue - Timing of Transfer (Details) Sheet http://www.lbfoster.com/role/RevenueTimingofTransferDetails Revenue - Timing of Transfer (Details) Details 40 false false R41.htm 0000041 - Disclosure - Revenue - Over Time Sales (Details) Sheet http://www.lbfoster.com/role/RevenueOverTimeSalesDetails Revenue - Over Time Sales (Details) Details 41 false false R42.htm 0000042 - Disclosure - Revenue - Narrative (Details) Sheet http://www.lbfoster.com/role/RevenueNarrativeDetails Revenue - Narrative (Details) Details 42 false false R43.htm 0000043 - Disclosure - Revenue - Contract with Customer (Details) Sheet http://www.lbfoster.com/role/RevenueContractwithCustomerDetails Revenue - Contract with Customer (Details) Details 43 false false R44.htm 0000044 - Disclosure - Revenue - Remaining Performance Obligation (Details) Sheet http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails Revenue - Remaining Performance Obligation (Details) Details 44 false false R45.htm 0000045 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Goodwill (Details) Sheet http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails Goodwill and Other Intangible Assets - Schedule of Goodwill (Details) Details 45 false false R46.htm 0000046 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) Sheet http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) Details 46 false false R47.htm 0000047 - Disclosure - Accounts Receivable - Narrative (Details) Sheet http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails Accounts Receivable - Narrative (Details) Details 47 false false R48.htm 0000048 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details) Sheet http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails Accounts Receivable - Allowance for Credit Losses (Details) Details 48 false false R49.htm 0000049 - Disclosure - Inventory (Details) Sheet http://www.lbfoster.com/role/InventoryDetails Inventory (Details) Details http://www.lbfoster.com/role/InventoryTables 49 false false R50.htm 0000050 - Disclosure - Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) Sheet http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) Details 50 false false R51.htm 0000051 - Disclosure - Long-term Debt and Related Matters - Narrative (Details) Sheet http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails Long-term Debt and Related Matters - Narrative (Details) Details 51 false false R52.htm 0000052 - Disclosure - Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details) Sheet http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details) Details 52 false false R53.htm 0000053 - Disclosure - Income Taxes (Details) Sheet http://www.lbfoster.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.lbfoster.com/role/IncomeTaxes 53 false false R54.htm 0000054 - Disclosure - Stock-Based Compensation - Narrative (Details) Sheet http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails Stock-Based Compensation - Narrative (Details) Details 54 false false R55.htm 0000055 - Disclosure - Stock-Based Compensation - Restricted Stock and Performance Share Units (Details) Sheet http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails Stock-Based Compensation - Restricted Stock and Performance Share Units (Details) Details 55 false false R56.htm 0000056 - Disclosure - Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) Sheet http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) Details 56 false false R57.htm 0000057 - Disclosure - Fair Value Measurements - Narrative (Details) Sheet http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails Fair Value Measurements - Narrative (Details) Details 57 false false R58.htm 0000058 - Disclosure - Retirement Plans - Narrative (Details) Sheet http://www.lbfoster.com/role/RetirementPlansNarrativeDetails Retirement Plans - Narrative (Details) Details 58 false false R59.htm 0000059 - Disclosure - Retirement Plans - Schedule Of Net Benefit Costs (Details) Sheet http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails Retirement Plans - Schedule Of Net Benefit Costs (Details) Details 59 false false R60.htm 0000060 - Disclosure - Retirement Plans - Schedule of Costs of Retirement Plans (Details) Sheet http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails Retirement Plans - Schedule of Costs of Retirement Plans (Details) Details 60 false false R61.htm 0000061 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details) Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails Commitments and Contingent Liabilities - Narrative (Details) Details 61 false false R62.htm 0000062 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details) Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails Commitments and Contingent Liabilities - Future Payments (Details) Details 62 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 1 fact(s) appearing in ix:hidden were eligible for transformation: us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 - fstr-20230331.htm 4 fstr-20230331.htm ex-101q12023.htm ex-102q12023.htm ex-103q12023.htm ex-311q12023.htm ex-312q12023.htm ex-320q12023.htm fstr-20230331.xsd fstr-20230331_cal.xml fstr-20230331_def.xml fstr-20230331_lab.xml fstr-20230331_pre.xml fstr-20230331_g1.gif http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 83 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "fstr-20230331.htm": { "axisCustom": 0, "axisStandard": 22, "baseTaxonomies": { "http://fasb.org/us-gaap/2022": 583, "http://xbrl.sec.gov/dei/2022": 30 }, "contextCount": 181, "dts": { "calculationLink": { "local": [ "fstr-20230331_cal.xml" ] }, "definitionLink": { "local": [ "fstr-20230331_def.xml" ] }, "inline": { "local": [ "fstr-20230331.htm" ] }, "labelLink": { "local": [ "fstr-20230331_lab.xml" ] }, "presentationLink": { "local": [ "fstr-20230331_pre.xml" ] }, "schema": { "local": [ "fstr-20230331.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": 420, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 1, "http://xbrl.sec.gov/dei/2022": 5, "total": 6 }, "keyCustom": 37, "keyStandard": 211, "memberCustom": 18, "memberStandard": 38, "nsprefix": "fstr", "nsuri": "http://www.lbfoster.com/20230331", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "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.lbfoster.com/role/Cover", "shortName": "Cover", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000010 - Disclosure - Financial Statements", "menuCat": "Notes", "order": "10", "role": "http://www.lbfoster.com/role/FinancialStatements", "shortName": "Financial Statements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000011 - Disclosure - Business Segments", "menuCat": "Notes", "order": "11", "role": "http://www.lbfoster.com/role/BusinessSegments", "shortName": "Business Segments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000012 - Disclosure - Revenue", "menuCat": "Notes", "order": "12", "role": "http://www.lbfoster.com/role/Revenue", "shortName": "Revenue", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000013 - Disclosure - Goodwill and Other Intangible Assets", "menuCat": "Notes", "order": "13", "role": "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssets", "shortName": "Goodwill and Other Intangible Assets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000014 - Disclosure - Accounts Receivable", "menuCat": "Notes", "order": "14", "role": "http://www.lbfoster.com/role/AccountsReceivable", "shortName": "Accounts Receivable", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000015 - Disclosure - Inventory", "menuCat": "Notes", "order": "15", "role": "http://www.lbfoster.com/role/Inventory", "shortName": "Inventory", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000016 - Disclosure - Long-term Debt and Related Matters", "menuCat": "Notes", "order": "16", "role": "http://www.lbfoster.com/role/LongtermDebtandRelatedMatters", "shortName": "Long-term Debt and Related Matters", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DebtDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000017 - Disclosure - Earnings Per Common Share", "menuCat": "Notes", "order": "17", "role": "http://www.lbfoster.com/role/EarningsPerCommonShare", "shortName": "Earnings Per Common Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000018 - Disclosure - Income Taxes", "menuCat": "Notes", "order": "18", "role": "http://www.lbfoster.com/role/IncomeTaxes", "shortName": "Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000019 - Disclosure - Stock-Based Compensation", "menuCat": "Notes", "order": "19", "role": "http://www.lbfoster.com/role/StockBasedCompensation", "shortName": "Stock-Based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000002 - Statement - Condensed Consolidated Balance Sheets", "menuCat": "Statements", "order": "2", "role": "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "shortName": "Condensed Consolidated Balance Sheets", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000020 - Disclosure - Fair Value Measurements", "menuCat": "Notes", "order": "20", "role": "http://www.lbfoster.com/role/FairValueMeasurements", "shortName": "Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000021 - Disclosure - Retirement Plans", "menuCat": "Notes", "order": "21", "role": "http://www.lbfoster.com/role/RetirementPlans", "shortName": "Retirement Plans", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000022 - Disclosure - Commitments and Contingent Liabilities", "menuCat": "Notes", "order": "22", "role": "http://www.lbfoster.com/role/CommitmentsandContingentLiabilities", "shortName": "Commitments and Contingent Liabilities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000023 - Disclosure - Financial Statements (Policies)", "menuCat": "Policies", "order": "23", "role": "http://www.lbfoster.com/role/FinancialStatementsPolicies", "shortName": "Financial Statements (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000024 - Disclosure - Business Segments (Tables)", "menuCat": "Tables", "order": "24", "role": "http://www.lbfoster.com/role/BusinessSegmentsTables", "shortName": "Business Segments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000025 - Disclosure - Revenue (Tables)", "menuCat": "Tables", "order": "25", "role": "http://www.lbfoster.com/role/RevenueTables", "shortName": "Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000026 - Disclosure - Goodwill and Other Intangible Assets (Tables)", "menuCat": "Tables", "order": "26", "role": "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables", "shortName": "Goodwill and Other Intangible Assets (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000027 - Disclosure - Accounts Receivable (Tables)", "menuCat": "Tables", "order": "27", "role": "http://www.lbfoster.com/role/AccountsReceivableTables", "shortName": "Accounts Receivable (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000028 - Disclosure - Inventory (Tables)", "menuCat": "Tables", "order": "28", "role": "http://www.lbfoster.com/role/InventoryTables", "shortName": "Inventory (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000029 - Disclosure - Long-term Debt and Related Matters (Tables)", "menuCat": "Tables", "order": "29", "role": "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersTables", "shortName": "Long-term Debt and Related Matters (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000003 - Statement - Condensed Consolidated Balance Sheets (Parenthetical)", "menuCat": "Statements", "order": "3", "role": "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical", "shortName": "Condensed Consolidated Balance Sheets (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "us-gaap:CommonStockParOrStatedValuePerShare", "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000030 - Disclosure - Earnings Per Common Share (Tables)", "menuCat": "Tables", "order": "30", "role": "http://www.lbfoster.com/role/EarningsPerCommonShareTables", "shortName": "Earnings Per Common Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000031 - Disclosure - Stock-Based Compensation (Tables)", "menuCat": "Tables", "order": "31", "role": "http://www.lbfoster.com/role/StockBasedCompensationTables", "shortName": "Stock-Based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000032 - Disclosure - Fair Value Measurements (Tables)", "menuCat": "Tables", "order": "32", "role": "http://www.lbfoster.com/role/FairValueMeasurementsTables", "shortName": "Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000033 - Disclosure - Retirement Plans (Tables)", "menuCat": "Tables", "order": "33", "role": "http://www.lbfoster.com/role/RetirementPlansTables", "shortName": "Retirement Plans (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000034 - Disclosure - Commitments and Contingent Liabilities (Tables)", "menuCat": "Tables", "order": "34", "role": "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesTables", "shortName": "Commitments and Contingent Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000035 - Disclosure - Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details)", "menuCat": "Details", "order": "35", "role": "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "shortName": "Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i24270bdbeb4143a5baee2d0f848f4ae1_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000036 - Disclosure - Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details)", "menuCat": "Details", "order": "36", "role": "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "shortName": "Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i24270bdbeb4143a5baee2d0f848f4ae1_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:InterestIncomeExpenseNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Assets", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000037 - Disclosure - Business Segments - Reconciliation of Assets from Segment to Consolidated (Details)", "menuCat": "Details", "order": "37", "role": "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "shortName": "Business Segments - Reconciliation of Assets from Segment to Consolidated (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "iad9aa66948aa427d8733b61886370a14_I20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:Assets", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProceedsFromDivestitureOfBusinesses", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000038 - Disclosure - Business Segments - Narrative (Details)", "menuCat": "Details", "order": "38", "role": "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "shortName": "Business Segments - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i095a3bc3b1934d6791c6fd6491c12548_D20230330-20230330", "decimals": "-3", "lang": "en-US", "name": "us-gaap:ProceedsFromDivestitureOfBusinesses", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000039 - Disclosure - Revenue - Sales by Major Product Line (Details)", "menuCat": "Details", "order": "39", "role": "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "shortName": "Revenue - Sales by Major Product Line (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ib94c3af616a84d688d59809b47cda372_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000004 - Statement - Condensed Consolidated Statements of Operations", "menuCat": "Statements", "order": "4", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "shortName": "Condensed Consolidated Statements of Operations", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:CostOfRevenue", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000040 - Disclosure - Revenue - Timing of Transfer (Details)", "menuCat": "Details", "order": "40", "role": "http://www.lbfoster.com/role/RevenueTimingofTransferDetails", "shortName": "Revenue - Timing of Transfer (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ia76ad66a0e9b4464be835910057fe869_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:OverTimeSalesAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000041 - Disclosure - Revenue - Over Time Sales (Details)", "menuCat": "Details", "order": "41", "role": "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "shortName": "Revenue - Over Time Sales (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:OverTimeSalesAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000042 - Disclosure - Revenue - Narrative (Details)", "menuCat": "Details", "order": "42", "role": "http://www.lbfoster.com/role/RevenueNarrativeDetails", "shortName": "Revenue - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000043 - Disclosure - Revenue - Contract with Customer (Details)", "menuCat": "Details", "order": "43", "role": "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "shortName": "Revenue - Contract with Customer (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "fstr:ContractWithCustomerAssetAdditions", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000044 - Disclosure - Revenue - Remaining Performance Obligation (Details)", "menuCat": "Details", "order": "44", "role": "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails", "shortName": "Revenue - Remaining Performance Obligation (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000045 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Goodwill (Details)", "menuCat": "Details", "order": "45", "role": "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "shortName": "Goodwill and Other Intangible Assets - Schedule of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000046 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details)", "menuCat": "Details", "order": "46", "role": "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails", "shortName": "Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProvisionForDoubtfulAccounts", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000047 - Disclosure - Accounts Receivable - Narrative (Details)", "menuCat": "Details", "order": "47", "role": "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails", "shortName": "Accounts Receivable - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if2b81add6d61480eb72836ee31510df6_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:ProvisionForDoubtfulAccounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000048 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details)", "menuCat": "Details", "order": "48", "role": "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails", "shortName": "Accounts Receivable - Allowance for Credit Losses (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryFinishedGoodsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000049 - Disclosure - Inventory (Details)", "menuCat": "Details", "order": "49", "role": "http://www.lbfoster.com/role/InventoryDetails", "shortName": "Inventory (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryFinishedGoodsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000005 - Statement - Condensed Consolidated Statements of Comprehensive Loss", "menuCat": "Statements", "order": "5", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss", "shortName": "Condensed Consolidated Statements of Comprehensive Loss", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R50": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LineOfCredit", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000050 - Disclosure - Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details)", "menuCat": "Details", "order": "50", "role": "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails", "shortName": "Long-term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:FinanceLeaseLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id0a992b75b7e481f8bd6f04e94c9df5f_I20220812", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:DebtInstrumentCovenantLeverageRatioMaximum", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000051 - Disclosure - Long-term Debt and Related Matters - Narrative (Details)", "menuCat": "Details", "order": "51", "role": "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails", "shortName": "Long-term Debt and Related Matters - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id0a992b75b7e481f8bd6f04e94c9df5f_I20220812", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:DebtInstrumentCovenantLeverageRatioMaximum", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000052 - Disclosure - Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "menuCat": "Details", "order": "52", "role": "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails", "shortName": "Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:WeightedAverageNumberOfSharesIssuedBasic", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxExpenseBenefit", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000053 - Disclosure - Income Taxes (Details)", "menuCat": "Details", "order": "53", "role": "http://www.lbfoster.com/role/IncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "3", "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000054 - Disclosure - Stock-Based Compensation - Narrative (Details)", "menuCat": "Details", "order": "54", "role": "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "shortName": "Stock-Based Compensation - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000055 - Disclosure - Stock-Based Compensation - Restricted Stock and Performance Share Units (Details)", "menuCat": "Details", "order": "55", "role": "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "shortName": "Stock-Based Compensation - Restricted Stock and Performance Share Units (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ie1c2cdd5771541dfa97546b5614c9de8_I20221231", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000056 - Disclosure - Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details)", "menuCat": "Details", "order": "56", "role": "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails", "shortName": "Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "id6663316f78349588622c6997f0c313e_I20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InterestExpense", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000057 - Disclosure - Fair Value Measurements - Narrative (Details)", "menuCat": "Details", "order": "57", "role": "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails", "shortName": "Fair Value Measurements - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ia5ebb139ce8e4e77b16ffb1cf78f6195_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "fstr:InterestIncome", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if37f45c29c0947b7be845886c8bee4ec_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:NumberOfDefinedContributionPlans", "reportCount": 1, "unique": true, "unitRef": "plan", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000058 - Disclosure - Retirement Plans - Narrative (Details)", "menuCat": "Details", "order": "58", "role": "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "shortName": "Retirement Plans - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if37f45c29c0947b7be845886c8bee4ec_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:NumberOfDefinedContributionPlans", "reportCount": 1, "unique": true, "unitRef": "plan", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if69625c46e3a4fb5a21a4b2bf501bca0_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedBenefitPlanInterestCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000059 - Disclosure - Retirement Plans - Schedule Of Net Benefit Costs (Details)", "menuCat": "Details", "order": "59", "role": "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "shortName": "Retirement Plans - Schedule Of Net Benefit Costs (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if69625c46e3a4fb5a21a4b2bf501bca0_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedBenefitPlanInterestCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000006 - Statement - Condensed Consolidated Statements of Comprehensive Loss (Parenthetical)", "menuCat": "Statements", "order": "6", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLossParenthetical", "shortName": "Condensed Consolidated Statements of Comprehensive Loss (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000060 - Disclosure - Retirement Plans - Schedule of Costs of Retirement Plans (Details)", "menuCat": "Details", "order": "60", "role": "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "shortName": "Retirement Plans - Schedule of Costs of Retirement Plans (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LitigationSettlementAmountAwardedToOtherParty", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000061 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details)", "menuCat": "Details", "order": "61", "role": "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails", "shortName": "Commitments and Contingent Liabilities - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "if9631e06a9af44149a25f259886981f3_I20170605", "decimals": "-1", "lang": "en-US", "name": "fstr:NumberOfCompaniesReceivingGeneralNoticeLetter", "reportCount": 1, "unique": true, "unitRef": "company", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentRemainderOfYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "0000062 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details)", "menuCat": "Details", "order": "62", "role": "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails", "shortName": "Commitments and Contingent Liabilities - Future Payments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentRemainderOfYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R7": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000007 - Statement - Condensed Consolidated Statements of Cash Flows", "menuCat": "Statements", "order": "7", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows", "shortName": "Condensed Consolidated Statements of Cash Flows", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DeferredIncomeTaxExpenseBenefit", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R8": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ia194bc89639f47f087d63938eb52302b_I20211231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000008 - Statement - Condensed Consolidated Statements of Stockholders' Equity", "menuCat": "Statements", "order": "8", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity", "shortName": "Condensed Consolidated Statements of Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "ia194bc89639f47f087d63938eb52302b_I20211231", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "0000009 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Parenthetical)", "menuCat": "Statements", "order": "9", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230331.htm", "contextRef": "i3b397df85ee3438993bcd1796423d1a3_D20230101-20230331", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockIssuedDuringPeriodSharesNewIssues", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } } }, "segmentCount": 56, "tag": { "country_CA": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CANADA", "terseLabel": "Canada" } } }, "localname": "CA", "nsuri": "http://xbrl.sec.gov/country/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code", "terseLabel": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.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.lbfoster.com/role/Cover" ], "xbrltype": "gMonthDayItemType" }, "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.lbfoster.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.lbfoster.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.lbfoster.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r595" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report", "terseLabel": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r596" ], "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.lbfoster.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.lbfoster.com/role/Cover" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One", "terseLabel": "Entity Address, Street Name" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressAddressLine2": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 2 such as Street or Suite number", "label": "Entity Address, Address Line Two", "terseLabel": "Entity Address, Suite" } } }, "localname": "EntityAddressAddressLine2", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.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" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.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.lbfoster.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" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r593" ], "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.lbfoster.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 (in shares)" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.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.lbfoster.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.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r593" ], "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.lbfoster.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": "Commission File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r593" ], "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.lbfoster.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.lbfoster.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r597" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r593" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r593" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r593" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r593" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "employerIdItemType" }, "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.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r592" ], "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.lbfoster.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r594" ], "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.lbfoster.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.lbfoster.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "fstr_AccruedLegalSettlementCurrent": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued Legal Settlement Current", "label": "Accrued Legal Settlement Current", "terseLabel": "Current portion of accrued settlement (Note 13)" } } }, "localname": "AccruedLegalSettlementCurrent", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "fstr_AccruedLegalSettlementNonCurrent": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accrued Legal Settlement Non Current", "label": "Accrued Legal Settlement Non Current", "terseLabel": "Long-term portion of accrued settlement (Note 13)" } } }, "localname": "AccruedLegalSettlementNonCurrent", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "fstr_ChemtecEnergyServicesLLCMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Chemtec Energy Services LLC", "label": "Chemtec Energy Services LLC [Member]", "terseLabel": "Chemtec Energy Services LLC" } } }, "localname": "ChemtecEnergyServicesLLCMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_CoatingsAndMeasurementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Coatings and Measurement", "label": "Coatings and Measurement [Member]", "terseLabel": "Coatings and Measurement" } } }, "localname": "CoatingsAndMeasurementMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_ContractWithCustomerAssetAdditions": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Contract With Customer Asset Additions", "label": "Contract With Customer Asset Additions", "terseLabel": "Net additions to contract assets" } } }, "localname": "ContractWithCustomerAssetAdditions", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "fstr_ContractWithCustomerAssetAfterAllowanceForCreditLossCurrentRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract With Customer Asset After Allowance For Credit Loss Current", "label": "Contract With Customer Asset After Allowance For Credit Loss Current [Roll Forward]", "terseLabel": "Contract With Customer Asset After Allowance For Credit Loss Current [Roll Forward]" } } }, "localname": "ContractWithCustomerAssetAfterAllowanceForCreditLossCurrentRollForward", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "stringItemType" }, "fstr_ContractWithCustomerLiabilityIncreaseFromCashReceipts": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Contract with Customer, Liability, Increase from Cash Receipts", "label": "Contract with Customer, Liability, Increase from Cash Receipts", "terseLabel": "Increase in billings in excess of cost, excluding revenue recognized" } } }, "localname": "ContractWithCustomerLiabilityIncreaseFromCashReceipts", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "http://www.lbfoster.com/role/RevenueNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_ContractWithCustomerLiabilityOtherAdjustments": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Contract With Customer, Liability, Other Adjustments", "label": "Contract With Customer, Liability, Other Adjustments", "negatedTerseLabel": "Other adjustments, including business divestiture" } } }, "localname": "ContractWithCustomerLiabilityOtherAdjustments", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "fstr_ContractWithCustomerLiabilityRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Contract With Customer Liability", "label": "Contract With Customer Liability [Roll Forward]", "terseLabel": "Contract With Customer Liability [Roll Forward]" } } }, "localname": "ContractWithCustomerLiabilityRollForward", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "stringItemType" }, "fstr_CorporateExpenseAndOtherUnallocatedCharges": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails": { "order": 4.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Corporate Expense And Other Unallocated Charges", "label": "Corporate Expense And Other Unallocated Charges", "negatedLabel": "Unallocated corporate expenses and other unallocated charges" } } }, "localname": "CorporateExpenseAndOtherUnallocatedCharges", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "monetaryItemType" }, "fstr_DebtInstrumentCovenantInterestCoverageRatioMinimum": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenant, Interest Coverage Ratio, Minimum", "label": "Debt Instrument, Covenant, Interest Coverage Ratio, Minimum", "terseLabel": "Minimum fixed charge coverage ratio" } } }, "localname": "DebtInstrumentCovenantInterestCoverageRatioMinimum", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "pureItemType" }, "fstr_DebtInstrumentCovenantLeverageRatioMaximum": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Covenant, Leverage Ratio, Maximum", "label": "Debt Instrument, Covenant, Leverage Ratio, Maximum", "terseLabel": "Minimum leverage ratio" } } }, "localname": "DebtInstrumentCovenantLeverageRatioMaximum", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "pureItemType" }, "fstr_DebtInstrumentNumberOfFinancialCovenants": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Debt Instrument, Number Of Financial Covenants", "label": "Debt Instrument, Number Of Financial Covenants", "terseLabel": "Number of financial covenants" } } }, "localname": "DebtInstrumentNumberOfFinancialCovenants", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_DeferredStockUnitsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Deferred Stock Units", "label": "Deferred Stock Units [Member]", "terseLabel": "Deferred Stock Units" } } }, "localname": "DeferredStockUnitsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "domainItemType" }, "fstr_DefinedBenefitPlanNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "DefinedBenefitPlanNumber", "verboseLabel": "Number of defined benefit plans" } } }, "localname": "DefinedBenefitPlanNumber", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_DerivativeAssetStatementOfFinancialPositionExtensibleEnumerationNotDisclosedFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag", "label": "Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag", "terseLabel": "Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag" } } }, "localname": "DerivativeAssetStatementOfFinancialPositionExtensibleEnumerationNotDisclosedFlag", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "fstr_EnvironmentalLossContingencyStatementOfFinancialPositionExtensibleEnumerationNotDisclosedFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag", "label": "Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag", "terseLabel": "Environmental Loss Contingency Statement Of Financial Position Extensible Enumeration Not Disclosed Flag" } } }, "localname": "EnvironmentalLossContingencyStatementOfFinancialPositionExtensibleEnumerationNotDisclosedFlag", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "fstr_EquityLossIncomeAndRemeasurementGain": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Equity Loss Income and Remeasurement Gain", "label": "Equity Loss Income and Remeasurement Gain", "terseLabel": "Equity in income of nonconsolidated investments" } } }, "localname": "EquityLossIncomeAndRemeasurementGain", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "fstr_FabricatedSteelProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fabricated Steel Products", "label": "Fabricated Steel Products [Member]", "terseLabel": "Fabricated Steel Products" } } }, "localname": "FabricatedSteelProductsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_FourthAmendedAndRestatedCreditAgreementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fourth Amended And Restated Credit Agreement", "label": "Fourth Amended And Restated Credit Agreement [Member]", "terseLabel": "Fourth Amended And Restated Credit Agreement" } } }, "localname": "FourthAmendedAndRestatedCreditAgreementMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_InterestIncome": { "auth_ref": [], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Interest Income", "label": "Interest Income", "terseLabel": "Interest income" } } }, "localname": "InterestIncome", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LineOfCreditAccordionFeatureLowerBorrowingCapacityOption": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Line of Credit, Accordion Feature, Lower Borrowing Capacity Option", "label": "Line of Credit, Accordion Feature, Lower Borrowing Capacity Option", "terseLabel": "Line of credit, accordion feature, lower borrowing capacity" } } }, "localname": "LineOfCreditAccordionFeatureLowerBorrowingCapacityOption", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LineOfCreditFacilityMaximumIncreaseInCommitments": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Line Of Credit Facility, Maximum Increase In Commitments", "label": "Line Of Credit Facility, Maximum Increase In Commitments", "terseLabel": "Line of credit facility, maximum increase in commitments" } } }, "localname": "LineOfCreditFacilityMaximumIncreaseInCommitments", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LitigationSettlementAmountAwardedToOtherPartyCurrent": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Litigation Settlement, Amount Awarded to Other Party, Current", "label": "Litigation Settlement, Amount Awarded to Other Party, Current", "terseLabel": "Litigation settlement amount, current" } } }, "localname": "LitigationSettlementAmountAwardedToOtherPartyCurrent", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LitigationSettlementAmountAwardedToOtherPartyNonCurrent": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Litigation Settlement, Amount Awarded to Other Party, Non-Current", "label": "Litigation Settlement, Amount Awarded to Other Party, Non-Current", "terseLabel": "Litigation settlement amount, non-current" } } }, "localname": "LitigationSettlementAmountAwardedToOtherPartyNonCurrent", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentRemainderOfYear": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails": { "order": 1.0, "parentTag": "us-gaap_LitigationSettlementAmountAwardedToOtherParty", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Litigation Settlement Amount Awarded To Other Party Scheduled Payment Remainder Of Year", "label": "Litigation Settlement Amount Awarded To Other Party Scheduled Payment Remainder Of Year", "terseLabel": "Remainder of 2023" } } }, "localname": "LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentRemainderOfYear", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentYearOne": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails": { "order": 2.0, "parentTag": "us-gaap_LitigationSettlementAmountAwardedToOtherParty", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One", "label": "Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One", "terseLabel": "2024" } } }, "localname": "LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentYearOne", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails" ], "xbrltype": "monetaryItemType" }, "fstr_LitigationSettlementInstallmentPaymentTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Litigation Settlement Installment Payment Term", "label": "Litigation Settlement Installment Payment Term", "terseLabel": "Payment period" } } }, "localname": "LitigationSettlementInstallmentPaymentTerm", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "durationItemType" }, "fstr_LongtermPurchaseCommitmentAnnualCommitmentAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Long-term Purchase Commitment, Annual Commitment Amount", "label": "Long-term Purchase Commitment, Annual Commitment Amount", "terseLabel": "Annual commitment amount" } } }, "localname": "LongtermPurchaseCommitmentAnnualCommitmentAmount", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_NumberOfCompaniesReceivingGeneralNoticeLetter": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number Of Companies Receiving General Notice Letter", "label": "Number Of Companies Receiving General Notice Letter", "terseLabel": "Number of companies that received a general notice letter (company)" } } }, "localname": "NumberOfCompaniesReceivingGeneralNoticeLetter", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_NumberOfDefinedContributionPlans": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of Defined Contribution Plans", "label": "Number of Defined Contribution Plans", "verboseLabel": "Defined contribution plan number" } } }, "localname": "NumberOfDefinedContributionPlans", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_NumberOfPartiesRequiredToPerformRemedialWork": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of Parties Required to Perform Remedial Work", "label": "Number of Parties Required to Perform Remedial Work", "terseLabel": "Number of parties required to perform remedial design work" } } }, "localname": "NumberOfPartiesRequiredToPerformRemedialWork", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_NumberOfPotentiallyResponsiblePartiesIncludedInAgreement": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of Potentially Responsible Parties Included in Agreement", "label": "Number of Potentially Responsible Parties Included in Agreement", "terseLabel": "Number of potentially responsible parties included in agreement" } } }, "localname": "NumberOfPotentiallyResponsiblePartiesIncludedInAgreement", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "integerItemType" }, "fstr_NumberOfRetirementPlans": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "NumberOfRetirementPlans", "verboseLabel": "Number of retirement plans" } } }, "localname": "NumberOfRetirementPlans", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "decimalItemType" }, "fstr_OtherPrecastConcreteProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Other Precast Concrete Products", "label": "Other Precast Concrete Products [Member]", "terseLabel": "Other Precast Concrete Products" } } }, "localname": "OtherPrecastConcreteProductsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_OverTimeInputMethodMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Over Time Input Method", "label": "Over Time Input Method [Member]", "terseLabel": "Over time input method" } } }, "localname": "OverTimeInputMethodMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails" ], "xbrltype": "domainItemType" }, "fstr_OverTimeOutputMethodMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Over Time Output Method", "label": "Over Time Output Method [Member]", "terseLabel": "Over time output method" } } }, "localname": "OverTimeOutputMethodMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails" ], "xbrltype": "domainItemType" }, "fstr_OverTimeSalesAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Over Time Sales, Amount", "label": "Over Time Sales, Amount", "terseLabel": "Over time sales, amount" } } }, "localname": "OverTimeSalesAmount", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails" ], "xbrltype": "monetaryItemType" }, "fstr_OverTimeSalesPercent": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Over Time Sales, Percent", "label": "Over Time Sales, Percent", "terseLabel": "Over time sales, percentage" } } }, "localname": "OverTimeSalesPercent", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails" ], "xbrltype": "percentItemType" }, "fstr_PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association", "label": "PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association [Member]", "terseLabel": "PNC Bank N.A. Citizens Bank N.A. Wells Fargo Bank National Association Bank of America N.A. And BMO Harris Bank National Association" } } }, "localname": "PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_PrecastConcreteBuildingsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Precast Concrete Buildings", "label": "Precast Concrete Buildings [Member]", "terseLabel": "Precast Concrete Buildings" } } }, "localname": "PrecastConcreteBuildingsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_PrecastConcreteProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Precast Concrete Products", "label": "Precast Concrete Products [Member]", "terseLabel": "Precast Concrete Products" } } }, "localname": "PrecastConcreteProductsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "fstr_PresentValueOfProposedRemedialWork": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present Value of Proposed Remedial Work", "label": "Present Value of Proposed Remedial Work", "terseLabel": "Present value of remedial work" } } }, "localname": "PresentValueOfProposedRemedialWork", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_PriorCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Prior Credit Facility", "label": "Prior Credit Facility [Member]", "terseLabel": "Prior Credit Facility" } } }, "localname": "PriorCreditFacilityMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_RailProductsAndFrictionManagementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Rail Products And Friction Management", "label": "Rail Products And Friction Management [Member]", "terseLabel": "Rail Products and Global Friction Management" } } }, "localname": "RailProductsAndFrictionManagementMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_RailTechnologiesAndServicesSegmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Rail Technologies and Services Segment", "label": "Rail Technologies and Services Segment [Member]", "terseLabel": "Rail, Technologies, and Services" } } }, "localname": "RailTechnologiesAndServicesSegmentMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "fstr_RailTechnologiesProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Rail Technologies Products", "label": "Rail Technologies Products [Member]", "terseLabel": "Technology Services and Solutions" } } }, "localname": "RailTechnologiesProductsMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_RemedialWorkAnticipatedCleanUpPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Remedial Work Anticipated Clean Up Period", "label": "Remedial Work Anticipated Clean Up Period", "terseLabel": "Anticipated clean period" } } }, "localname": "RemedialWorkAnticipatedCleanUpPeriod", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "durationItemType" }, "fstr_ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Schedule Of Future Payments Of Legal Settlements", "label": "Schedule Of Future Payments Of Legal Settlements [Table Text Block]", "terseLabel": "Schedule Of Future Payments Of Legal Settlements" } } }, "localname": "ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesTables" ], "xbrltype": "textBlockItemType" }, "fstr_ScheduleOfRevenuesByMajorProductLineTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure summarizing sales by major product line.", "label": "Schedule of Revenues by Major Product Line [Table Text Block]", "terseLabel": "Schedule of Revenues by Major Product Line" } } }, "localname": "ScheduleOfRevenuesByMajorProductLineTableTextBlock", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "fstr_ShareBasedCompensationArrangementByShareBasedPaymentAwardDeferredReceiptPeriod": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based Compensation Arrangement by Share-based Payment Award, Deferred Receipt Period", "label": "Share-based Compensation Arrangement by Share-based Payment Award, Deferred Receipt Period", "terseLabel": "Deferred receipt period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardDeferredReceiptPeriod", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "fstr_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentForIncentiveAwardsExpectedToVest": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest", "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest", "verboseLabel": "Adjustment for incentive awards expected to vest (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentForIncentiveAwardsExpectedToVest", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "fstr_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentForIncentiveAwardsExpectedToVestWeightedAverageGrantDateFairValue": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Weighted Average Grant Date Fair Value", "label": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Adjustment For Incentive Awards Expected To Vest Weighted Average Grant Date Fair Value", "terseLabel": "Adjustment for incentive awards expected to vest (usd per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsAdjustmentForIncentiveAwardsExpectedToVestWeightedAverageGrantDateFairValue", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "fstr_SteelProductsAndMeasurementMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Steel Products And Measurement", "label": "Steel Products And Measurement [Member]", "terseLabel": "Steel Products and Measurement" } } }, "localname": "SteelProductsAndMeasurementMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "fstr_UPRRMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The UPRR", "label": "UPRR [Member]", "terseLabel": "UPRR" } } }, "localname": "UPRRMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_UndiscoveredRemedialWork": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Undiscovered Remedial Work", "label": "Undiscovered Remedial Work", "terseLabel": "Undiscovered remedial work" } } }, "localname": "UndiscoveredRemedialWork", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "fstr_UprrMember": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "UprrMember", "terseLabel": "UPRR" } } }, "localname": "UprrMember", "nsuri": "http://www.lbfoster.com/20230331", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r196", "r227", "r239", "r240", "r241", "r242", "r243", "r245", "r249", "r294", "r295", "r296", "r297", "r299", "r300", "r302", "r304", "r305", "r638", "r639" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r196", "r227", "r239", "r240", "r241", "r242", "r243", "r245", "r249", "r294", "r295", "r296", "r297", "r299", "r300", "r302", "r304", "r305", "r638", "r639" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails" ], "xbrltype": "domainItemType" }, "srt_DirectorMember": { "auth_ref": [ "r614" ], "lang": { "en-us": { "role": { "label": "Director [Member]", "terseLabel": "Director" } } }, "localname": "DirectorMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r254", "r570", "r643", "r688" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_MinimumMember": { "auth_ref": [ "r289", "r290", "r292", "r293", "r428", "r521", "r539", "r547", "r548", "r566", "r585", "r591", "r640", "r681", "r682", "r683", "r684", "r685", "r686" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r254", "r570", "r643", "r688" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r251", "r523", "r568", "r590", "r635", "r636", "r643", "r687" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Products and Services [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r251", "r523", "r568", "r590", "r635", "r636", "r643", "r687" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Products and Services [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r289", "r290", "r292", "r293", "r376", "r428", "r457", "r458", "r459", "r520", "r521", "r539", "r547", "r548", "r566", "r585", "r591", "r631", "r640", "r682", "r683", "r684", "r685", "r686" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Range [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails", "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r289", "r290", "r292", "r293", "r376", "r428", "r457", "r458", "r459", "r520", "r521", "r539", "r547", "r548", "r566", "r585", "r591", "r631", "r640", "r682", "r683", "r684", "r685", "r686" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Range [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails", "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r614", "r678" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]", "terseLabel": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]", "terseLabel": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_WeightedAverageMember": { "auth_ref": [ "r547", "r548", "r681", "r683", "r686" ], "lang": { "en-us": { "role": { "label": "Weighted Average [Member]", "terseLabel": "Weighted Average" } } }, "localname": "WeightedAverageMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_AccountingPoliciesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "localname": "AccountingPoliciesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_AccountsNotesAndLoansReceivableNetCurrent": { "auth_ref": [ "r256", "r532", "r558" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of accounts and financing receivables, classified as current. Includes, but is not limited to, notes and loan receivable.", "label": "Accounts and Financing Receivable, after Allowance for Credit Loss, Current", "terseLabel": "Accounts receivable - net (Note 5)" } } }, "localname": "AccountsNotesAndLoansReceivableNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r15", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts Payable, Current", "terseLabel": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsReceivableAdditionalDisclosuresAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Accounts Receivable Additional Disclosures [Abstract]" } } }, "localname": "AccountsReceivableAdditionalDisclosuresAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r617" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]", "terseLabel": "Schedule of Accounts Receivable, Allowance for Credit Loss" } } }, "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccrualForEnvironmentalLossContingencies": { "auth_ref": [ "r291", "r560", "r598", "r599", "r632", "r633" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total costs accrued as of the balance sheet date for environmental loss contingencies.", "label": "Accrual for Environmental Loss Contingencies", "terseLabel": "Accrual for environmental loss" } } }, "localname": "AccrualForEnvironmentalLossContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r17" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.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": "Other accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r27", "r29", "r30", "r161", "r533", "r544", "r545" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r26", "r30", "r111", "r516", "r540", "r541", "r600", "r601", "r602", "r609", "r610", "r611" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]", "terseLabel": "Accumulated Other Comprehensive Loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r7", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock.", "label": "Additional Paid in Capital", "terseLabel": "Paid-in capital" } } }, "localname": "AdditionalPaidInCapital", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r465", "r466", "r467", "r609", "r610", "r611", "r674" ], "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": "Paid-in Capital" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentForAmortization": { "auth_ref": [ "r50", "r73" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate amount of recurring noncash expense charged against earnings in the period to allocate the cost of assets over their estimated remaining economic lives.", "label": "Amortization", "terseLabel": "Amortization" } } }, "localname": "AdjustmentForAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r96", "r97", "r432" ], "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" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "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 loss to cash provided by (used in) operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "auth_ref": [ "r162", "r257", "r260", "r261", "r264" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable.", "label": "Accounts Receivable, Allowance for Credit Loss", "periodEndLabel": "Allowance for doubtful accounts, ending balance", "periodStartLabel": "Allowance for doubtful accounts, beginning balance" } } }, "localname": "AllowanceForDoubtfulAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "terseLabel": "Allowance for Doubtful Accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableRollforward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "auth_ref": [ "r263" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance.", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "negatedTerseLabel": "Write-off against allowance" } } }, "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r50", "r69", "r73" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_OperatingIncomeLoss", "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 expense" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r217" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "terseLabel": "Anti-dilutive shares (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_Assets": { "auth_ref": [ "r130", "r143", "r160", "r193", "r235", "r241", "r247", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r489", "r494", "r503", "r589", "r638", "r639", "r679" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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": "Assets", "totalLabel": "TOTAL ASSETS" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r154", "r165", "r193", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r489", "r494", "r503", "r589", "r638", "r639", "r679" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Current", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r121" ], "calculation": { "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion of probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "Assets, Fair Value Disclosure", "totalLabel": "Total assets" } } }, "localname": "AssetsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS).", "label": "Basis of Accounting, Policy [Policy Text Block]", "terseLabel": "Basis of Presentation" } } }, "localname": "BasisOfAccountingPolicyPolicyTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FinancialStatementsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r52", "r156", "r550" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsFairValueDisclosure": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails": { "order": 2.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value portion 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.", "label": "Cash and Cash Equivalents, Fair Value Disclosure", "netLabel": "Term deposits" } } }, "localname": "CashAndCashEquivalentsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r47", "r52", "r54" ], "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 period", "periodStartLabel": "Cash and cash equivalents at beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r47", "r124" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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 decrease in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "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": [ "r76", "r287", "r288", "r546", "r637" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]", "terseLabel": "Commitments and Contingent Liabilities" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r609", "r610", "r674" ], "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.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r6" ], "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 (usd per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r6" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r6" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common Stock, Shares, Issued", "terseLabel": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r6", "r78" ], "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", "verboseLabel": "Common stock, shares outstanding (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r6", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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, par value $0.01, authorized 20,000,000 shares; shares issued at March\u00a031, 2023 and December\u00a031, 2022, 11,115,779; shares outstanding at March\u00a031, 2023 and December\u00a031, 2022, 10,809,711 and 10,776,827, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r32", "r175", "r177", "r184", "r529", "r536" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "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 loss attributable to L.B. Foster Company" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": { "auth_ref": [ "r107", "r108", "r114", "r175", "r177", "r183", "r528", "r535" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income (loss) and other comprehensive income (loss), attributable to noncontrolling interests. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest", "totalLabel": "Amounts attributable to noncontrolling interest" } } }, "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterestAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest [Abstract]", "terseLabel": "Less comprehensive (loss) income attributable to noncontrolling interest:" } } }, "localname": "ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterestAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "stringItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r641" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability.", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "terseLabel": "Schedule of Contract with Customer, Contract Asset, Contract Liability" } } }, "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNet": { "auth_ref": [ "r334", "r336", "r349" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.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 in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Contract with Customer, Asset, after Allowance for Credit Loss", "periodEndLabel": "Balance as of March 31, 2023", "periodStartLabel": "Balance as of December 31, 2022", "terseLabel": "Contract assets - net (Note 3)", "verboseLabel": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "http://www.lbfoster.com/role/RevenueNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetReclassifiedToReceivable": { "auth_ref": [ "r567" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of decrease in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time from transfer to receivable due to right to consideration becoming unconditional.", "label": "Contract with Customer, Asset, Reclassified to Receivable", "negatedTerseLabel": "Transfers from contract asset balance to accounts receivable", "terseLabel": "Contract assets transferred to receivables" } } }, "localname": "ContractWithCustomerAssetReclassifiedToReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "http://www.lbfoster.com/role/RevenueNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r334", "r335", "r349" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Contract with Customer, Liability", "periodEndLabel": "Balance as of March 31, 2023", "periodStartLabel": "Balance as of December 31, 2022", "terseLabel": "Balance as of December 31, 2022" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "http://www.lbfoster.com/role/RevenueNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r334", "r335", "r349" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current.", "label": "Contract with Customer, Liability, Current", "terseLabel": "Deferred revenue" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r350" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "Contract with Customer, Liability, Revenue Recognized", "negatedTerseLabel": "Revenue recognized from contract liabilities", "terseLabel": "Revenue recognized from contract liability" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails", "http://www.lbfoster.com/role/RevenueNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r65", "r240", "r241", "r242", "r243", "r249", "r613" ], "lang": { "en-us": { "role": { "documentation": "Corporate headquarters or functional department that may not earn revenues or may earn revenues that are only incidental to the activities of the entity and is not considered an operating segment.", "label": "Corporate, Non-Segment [Member]", "terseLabel": "Unallocated corporate assets" } } }, "localname": "CorporateNonSegmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r37", "r193", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r503", "r638" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate cost of goods produced and sold and services rendered during the reporting period.", "label": "Cost of Revenue", "terseLabel": "Total cost of sales" } } }, "localname": "CostOfRevenue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "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.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "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.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r102" ], "lang": { "en-us": { "role": { "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships.", "label": "Customer Relationships [Member]", "terseLabel": "Customer relationships" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtAndCapitalLeaseObligations": { "auth_ref": [ "r135", "r147" ], "calculation": { "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails_1": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of short-term and long-term debt and lease obligation.", "label": "Debt and Lease Obligation", "totalLabel": "Total" } } }, "localname": "DebtAndCapitalLeaseObligations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "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": [ "r77", "r192", "r312", "r313", "r314", "r315", "r316", "r317", "r318", "r323", "r330", "r331", "r332" ], "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 and Related Matters" } } }, "localname": "DebtDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMatters" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r2", "r3", "r4", "r131", "r132", "r142", "r196", "r307", "r308", "r309", "r310", "r311", "r313", "r319", "r320", "r321", "r322", "r324", "r325", "r326", "r327", "r328", "r329", "r512", "r561", "r562", "r563", "r564", "r565", "r605" ], "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.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r19", "r196", "r307", "r308", "r309", "r310", "r311", "r313", "r319", "r320", "r321", "r322", "r324", "r325", "r326", "r327", "r328", "r329", "r512", "r561", "r562", "r563", "r564", "r565", "r605" ], "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.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodAxis": { "auth_ref": [ "r140" ], "lang": { "en-us": { "role": { "documentation": "Information about timing of debt redemption features under terms of the debt agreement.", "label": "Debt Instrument, Redemption, Period [Axis]", "terseLabel": "Debt Instrument, Redemption, Period [Axis]" } } }, "localname": "DebtInstrumentRedemptionPeriodAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodDomain": { "auth_ref": [ "r140" ], "lang": { "en-us": { "role": { "documentation": "Period as defined under terms of the debt agreement for debt redemption features.", "label": "Debt Instrument, Redemption, Period [Domain]", "terseLabel": "Debt Instrument, Redemption, Period [Domain]" } } }, "localname": "DebtInstrumentRedemptionPeriodDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodOneMember": { "auth_ref": [ "r140" ], "lang": { "en-us": { "role": { "documentation": "Period one representing most current period of debt redemption features under terms of the debt agreement.", "label": "Debt Instrument, Redemption, Period One [Member]", "terseLabel": "Debt Instrument, Redemption, Period One" } } }, "localname": "DebtInstrumentRedemptionPeriodOneMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": { "auth_ref": [ "r140" ], "lang": { "en-us": { "role": { "documentation": "Period two representing second most current period of debt redemption features under terms of the debt agreement.", "label": "Debt Instrument, Redemption, Period Two [Member]", "terseLabel": "Debt Instrument, Redemption, Period Two" } } }, "localname": "DebtInstrumentRedemptionPeriodTwoMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentTerm": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Debt Instrument, Term", "terseLabel": "Debt instrument term" } } }, "localname": "DebtInstrumentTerm", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r469", "r470" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.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 tax assets (Note 9)" } } }, "localname": "DeferredIncomeTaxAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r50", "r98", "r476", "r481", "r482", "r607" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations.", "label": "Deferred Income Tax Expense (Benefit)", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r469", "r470" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.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 tax liabilities (Note 9)" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": { "auth_ref": [ "r354", "r392", "r417", "r577", "r578" ], "calculation": { "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails": { "order": 2.0, "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) recognized in net periodic benefit (cost) credit of defined benefit plan.", "label": "Defined Benefit Plan, Amortization of Gain (Loss)", "negatedLabel": "Recognized net actuarial loss" } } }, "localname": "DefinedBenefitPlanAmortizationOfGainsLosses", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit": { "auth_ref": [ "r354", "r393", "r418", "r577", "r578" ], "calculation": { "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails": { "order": 1.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 costs and transition amount" } } }, "localname": "DefinedBenefitPlanAmortizationOfPriorServiceCostCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanContributionsByEmployer": { "auth_ref": [ "r369", "r379", "r421", "r575", "r576", "r577", "r578" ], "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": "Defined benefit plan, contributions by employer" } } }, "localname": "DefinedBenefitPlanContributionsByEmployer", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "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]", "verboseLabel": "Defined Benefit Plan Disclosure" } } }, "localname": "DefinedBenefitPlanDisclosureLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "stringItemType" }, "us-gaap_DefinedBenefitPlanExpectedFutureEmployerContributionsCurrentFiscalYear": { "auth_ref": [ "r578", "r644" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of contributions received and expected to be received by defined benefit plan from employer in current fiscal year.", "label": "Defined Benefit Plan, Expected Future Employer Contributions, Current Fiscal Year", "terseLabel": "Defined benefit plan, expected future employer contributions, current fiscal year" } } }, "localname": "DefinedBenefitPlanExpectedFutureEmployerContributionsCurrentFiscalYear", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": { "auth_ref": [ "r354", "r391", "r416", "r577", "r578" ], "calculation": { "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails": { "order": 3.0, "parentTag": "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of expected return (loss) recognized in net periodic benefit (cost) credit, calculated based on expected long-term rate of return and market-related value of plan assets of defined benefit plan.", "label": "Defined Benefit Plan, Expected Return (Loss) on Plan Assets", "negatedLabel": "Expected return on plan assets" } } }, "localname": "DefinedBenefitPlanExpectedReturnOnPlanAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanInterestCost": { "auth_ref": [ "r354", "r358", "r390", "r415", "r577", "r578" ], "calculation": { "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails": { "order": 4.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.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": { "auth_ref": [ "r388", "r413", "r577", "r578" ], "calculation": { "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of net periodic benefit cost (credit) for defined benefit plan.", "label": "Defined Benefit Plan, Net Periodic Benefit Cost (Credit)", "totalLabel": "Net periodic pension (income) cost" } } }, "localname": "DefinedBenefitPlanNetPeriodicBenefitCost", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanCostRecognized": { "auth_ref": [ "r425" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cost for defined contribution plan.", "label": "Defined Contribution Plan, Cost", "terseLabel": "Expenses associated with contributions made" } } }, "localname": "DefinedContributionPlanCostRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanDisclosureLineItems": { "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 Contribution Plan Disclosure [Line Items]", "terseLabel": "Defined Contribution Plan Disclosure" } } }, "localname": "DefinedContributionPlanDisclosureLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DefinedContributionPlanTable": { "auth_ref": [ "r425" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about defined contribution pension plans or defined contribution other postretirement plans, separately for pension plans and other postretirement benefit plans.", "label": "Defined Contribution Plan [Table]", "terseLabel": "Defined Contribution Plan [Table]" } } }, "localname": "DefinedContributionPlanTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r50", "r75" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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" } } }, "localname": "Depreciation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeAssets": { "auth_ref": [ "r166", "r167", "r502", "r555" ], "calculation": { "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails": { "order": 1.0, "parentTag": "us-gaap_AssetsFairValueDisclosure", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value, after the effects of master netting arrangements, of a financial asset or other contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset. Includes assets not subject to a master netting arrangement and not elected to be offset.", "label": "Derivative Asset", "terseLabel": "Interest rate swaps" } } }, "localname": "DerivativeAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.", "label": "Derivative Contract [Domain]", "terseLabel": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r117", "r118", "r119", "r120", "r555" ], "lang": { "en-us": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]", "terseLabel": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Disaggregation of Revenue [Line Items]", "terseLabel": "Disaggregation of Revenue" } } }, "localname": "DisaggregationOfRevenueLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTable": { "auth_ref": [ "r348", "r568", "r569", "r570", "r571", "r572", "r573", "r574" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table]", "terseLabel": "Disaggregation of Revenue [Table]" } } }, "localname": "DisaggregationOfRevenueTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r643" ], "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": "Schedule of Disaggregation of Revenue" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r434", "r461", "r462", "r464", "r468", "r586" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-Based Payment Arrangement [Text Block]", "terseLabel": "Stock-Based Compensation" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DomesticPlanMember": { "auth_ref": [ "r645", "r646", "r647" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "domainItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Earnings Per Share [Abstract]" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r185", "r202", "r203", "r204", "r205", "r206", "r210", "r212", "r214", "r215", "r216", "r220", "r497", "r498", "r530", "r537", "r556" ], "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", "verboseLabel": "Basic loss per common share (usd per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r185", "r202", "r203", "r204", "r205", "r206", "r212", "r214", "r215", "r216", "r220", "r497", "r498", "r530", "r537", "r556" ], "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 loss per common share (usd per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r217", "r218", "r219", "r221" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]", "terseLabel": "Earnings Per Common Share" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningsPerCommonShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r676" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies; 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 and cash equivalents" } } }, "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r472" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Effective Income Tax Rate Reconciliation, Percent", "terseLabel": "Effective income tax rate (percent)" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r17" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Employee-related Liabilities, Current", "terseLabel": "Accrued payroll and employee benefits" } } }, "localname": "EmployeeRelatedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrentAndNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Employee-related Liabilities [Abstract]" } } }, "localname": "EmployeeRelatedLiabilitiesCurrentAndNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r463" ], "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": "Expected cost on shares expected to vest" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r463" ], "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": "Recognition period for compensation expense not yet recognized" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r78", "r150", "r178", "r179", "r180", "r197", "r198", "r199", "r201", "r207", "r209", "r222", "r259", "r333", "r465", "r466", "r467", "r477", "r478", "r496", "r504", "r505", "r506", "r507", "r508", "r510", "r516", "r540", "r541", "r542" ], "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.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems": { "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": "Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items]", "terseLabel": "Fair Value, Balance Sheet Grouping, Financial Statement Captions" } } }, "localname": "FairValueBalanceSheetGroupingFinancialStatementCaptionsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails", "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTable": { "auth_ref": [ "r121", "r122", "r123" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about the fair value of financial instruments, including financial assets and financial liabilities, and the measurements of those instruments, assets, and liabilities.", "label": "Fair Value, by Balance Sheet Grouping [Table]", "terseLabel": "Fair Value, by Balance Sheet Grouping [Table]" } } }, "localname": "FairValueByBalanceSheetGroupingTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails", "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r321", "r379", "r380", "r381", "r382", "r383", "r384", "r500", "r517", "r518", "r519", "r562", "r563", "r575", "r576", "r577" ], "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 [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "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": [ "r501" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for the fair value of financial instruments (as defined), including financial assets and financial liabilities (collectively, as defined), and the measurements of those instruments as well as disclosures related to the fair value of non-financial assets and liabilities. Such disclosures about the financial instruments, assets, and liabilities would include: (1) the fair value of the required items together with their carrying amounts (as appropriate); (2) for items for which it is not practicable to estimate fair value, disclosure would include: (a) information pertinent to estimating fair value (including, carrying amount, effective interest rate, and maturity, and (b) the reasons why it is not practicable to estimate fair value; (3) significant concentrations of credit risk including: (a) information about the activity, region, or economic characteristics identifying a concentration, (b) the maximum amount of loss the entity is exposed to based on the gross fair value of the related item, (c) policy for requiring collateral or other security and information as to accessing such collateral or security, and (d) the nature and brief description of such collateral or security; (4) quantitative information about market risks and how such risks are managed; (5) for items measured on both a recurring and nonrecurring basis information regarding the inputs used to develop the fair value measurement; and (6) for items presented in the financial statement for which fair value measurement is elected: (a) information necessary to understand the reasons for the election, (b) discussion of the effect of fair value changes on earnings, (c) a description of [similar groups] items for which the election is made and the relation thereof to the balance sheet, the aggregate carrying value of items included in the balance sheet that are not eligible for the election; (7) all other required (as defined) and desired information.", "label": "Fair Value Disclosures [Text Block]", "terseLabel": "Fair Value Measurements" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r321", "r379", "r384", "r500", "r517", "r575", "r576", "r577" ], "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": "Level 1" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r321", "r379", "r384", "r500", "r518", "r562", "r563", "r575", "r576", "r577" ], "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": "Level 2" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r321", "r379", "r380", "r381", "r382", "r383", "r384", "r500", "r519", "r562", "r563", "r575", "r576", "r577" ], "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": "Level 3" } } }, "localname": "FairValueInputsLevel3Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r321", "r379", "r380", "r381", "r382", "r383", "r384", "r517", "r518", "r519", "r562", "r563", "r575", "r576", "r577" ], "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.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r514", "r515" ], "calculation": { "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails_1": { "order": 2.0, "parentTag": "us-gaap_DebtAndCapitalLeaseObligations", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from finance lease.", "label": "Finance Lease, Liability", "verboseLabel": "Finance leases and financing agreements" } } }, "localname": "FinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems": { "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": "Financing Receivable, Allowance for Credit Loss [Line Items]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Line Items]" } } }, "localname": "FinancingReceivableAllowanceForCreditLossesLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "stringItemType" }, "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": "Weighted Average Amortization Period In Years" } } }, "localname": "FiniteLivedIntangibleAssetUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r158", "r280" ], "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", "negatedLabel": "Accumulated Amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r278", "r279", "r280", "r281", "r524", "r525" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r72", "r525" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Finite-Lived Intangible Assets, Gross", "verboseLabel": "Gross Carrying Value" } } }, "localname": "FiniteLivedIntangibleAssetsGross", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Finite-Lived Intangible Assets [Line Items]", "terseLabel": "Finite-Lived Intangible Assets" } } }, "localname": "FiniteLivedIntangibleAssetsLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r70", "r71" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r72", "r524" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_Assets", "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 Amount", "verboseLabel": "Other intangibles - net (Note 4)" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignPlanMember": { "auth_ref": [ "r645", "r646", "r647" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnSaleOfBusiness": { "auth_ref": [ "r493", "r604" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 18.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of gain (loss) from sale and disposal of integrated set of activities and assets capable of being conducted and managed for purpose of providing return in form of dividend, lower cost, or other economic benefit to investor, owner, member and participant.", "label": "Gain (Loss) on Disposition of Business", "negatedTerseLabel": "Loss on asset divestitures" } } }, "localname": "GainLossOnSaleOfBusiness", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r50" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 6.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", "negatedLabel": "(Gain) loss on sales and disposals of property, plant, and equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r157", "r266", "r526", "r559", "r589", "r618", "r625" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill", "periodEndLabel": "Goodwill, ending balance", "periodStartLabel": "Goodwill, beginning balance", "terseLabel": "Goodwill (Note 4)" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "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_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r74" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for goodwill and intangible assets.", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "terseLabel": "Goodwill and Other Intangible Assets" } } }, "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r272" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "terseLabel": "Foreign currency translation impact" } } }, "localname": "GoodwillForeignCurrencyTranslationGainLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GoodwillRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Goodwill [Roll Forward]", "terseLabel": "Goodwill" } } }, "localname": "GoodwillRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r36", "r193", "r235", "r240", "r246", "r249", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r503", "r557", "r638" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 3.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.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity": { "auth_ref": [ "r104", "r106" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of income (loss) from continuing operations attributable to the noncontrolling interest.", "label": "Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest", "terseLabel": "Net loss attributable to noncontrolling interest" } } }, "localname": "IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r34", "r129", "r136", "r149", "r235", "r240", "r246", "r249", "r531", "r557" ], "calculation": { "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails": { "order": null, "parentTag": null, "root": true, "weight": null }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "terseLabel": "Loss before income taxes", "totalLabel": "Loss before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r106", "r193", "r200", "r235", "r240", "r246", "r249", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r498", "r503", "r557", "r638" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 2.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax", "weight": 1.0 }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of income (loss) from continuing operations including portion attributable to the noncontrolling interest.", "label": "Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest", "netLabel": "Net loss", "terseLabel": "Net loss", "totalLabel": "Net loss", "verboseLabel": "Net loss" } } }, "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "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": [ "r282", "r284" ], "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.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r284" ], "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.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "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": [ "r194", "r473", "r474", "r475", "r479", "r483", "r485", "r486", "r487" ], "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.lbfoster.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r195", "r208", "r209", "r233", "r471", "r480", "r484", "r538" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "Income Tax Expense (Benefit)", "terseLabel": "Income tax benefit" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r53" ], "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", "verboseLabel": "Income taxes received" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsAndOtherReceivables": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 8.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the amount due from customers for the credit sale of goods and services; includes accounts receivable and other types of receivables.", "label": "Increase (Decrease) in Accounts and Other Receivables", "negatedLabel": "Accounts receivable" } } }, "localname": "IncreaseDecreaseInAccountsAndOtherReceivables", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 13.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "Increase (Decrease) in Accounts Payable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r603" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time.", "label": "Increase (Decrease) in Contract with Customer, Asset", "negatedTerseLabel": "Contract assets" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r522", "r603" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 14.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable.", "label": "Increase (Decrease) in Contract with Customer, Liability", "terseLabel": "Deferred revenue" } } }, "localname": "IncreaseDecreaseInContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 15.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits.", "label": "Increase (Decrease) in Employee Related Liabilities", "terseLabel": "Accrued payroll and employee benefits" } } }, "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 10.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "Increase (Decrease) in Inventories", "negatedLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Increase (Decrease) in Operating Capital [Abstract]", "terseLabel": "Change in operating assets and liabilities:" } } }, "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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 other expenses incurred but not yet paid.", "label": "Increase (Decrease) in Other Accrued Liabilities", "terseLabel": "Other current liabilities" } } }, "localname": "IncreaseDecreaseInOtherAccruedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "auth_ref": [ "r603" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in current assets classified as other.", "label": "Increase (Decrease) in Other Current Assets", "negatedLabel": "Other current assets" } } }, "localname": "IncreaseDecreaseInOtherCurrentAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": { "auth_ref": [ "r603" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 12.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in noncurrent assets classified as other.", "label": "Increase (Decrease) in Other Noncurrent Assets", "negatedLabel": "Other noncurrent assets" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentLiabilities": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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 long-term liabilities" } } }, "localname": "IncreaseDecreaseInOtherNoncurrentLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "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" } } }, "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r127", "r139", "r181", "r229", "r511" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest Expense", "terseLabel": "Interest expense", "verboseLabel": "Interest expense - net" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestIncomeExpenseNet": { "auth_ref": [ "r138" ], "calculation": { "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net amount of operating interest income (expense).", "label": "Interest Income (Expense), Net", "terseLabel": "Interest expense - net" } } }, "localname": "InterestIncomeExpenseNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestPaidNet": { "auth_ref": [ "r187", "r190", "r191" ], "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 paid" } } }, "localname": "InterestPaidNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "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": [ "r265" ], "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": "Inventory" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/Inventory" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r67", "r552" ], "calculation": { "http://www.lbfoster.com/role/InventoryDetails": { "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 merchandise or goods held by the company that are readily available for sale.", "label": "Inventory, Finished Goods, Net of Reserves", "terseLabel": "Finished goods" } } }, "localname": "InventoryFinishedGoodsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r163", "r551", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.lbfoster.com/role/InventoryDetails": { "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 (Note 6)", "totalLabel": "Inventories - net" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r67", "r554" ], "calculation": { "http://www.lbfoster.com/role/InventoryDetails": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.", "label": "Inventory, Raw Materials, Net of Reserves", "terseLabel": "Raw materials" } } }, "localname": "InventoryRawMaterialsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r67", "r553" ], "calculation": { "http://www.lbfoster.com/role/InventoryDetails": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.", "label": "Inventory, Work in Process, Net of Reserves", "terseLabel": "Work-in-process" } } }, "localname": "InventoryWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r11", "r134", "r146", "r589", "r606", "r616", "r675" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r18", "r155", "r193", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r490", "r494", "r495", "r503", "r589", "r638", "r679", "r680" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r4", "r132", "r142" ], "calculation": { "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails_1": { "order": 1.0, "parentTag": "us-gaap_DebtAndCapitalLeaseObligations", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement.", "label": "Long-Term Line of Credit", "terseLabel": "Revolving credit facility", "verboseLabel": "Line of credit facility, amount outstanding" } } }, "localname": "LineOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails", "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityAxis": { "auth_ref": [ "r16", "r605" ], "lang": { "en-us": { "role": { "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit.", "label": "Lender Name [Axis]", "terseLabel": "Lender Name [Axis]" } } }, "localname": "LineOfCreditFacilityAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityIncreaseDecreaseForPeriodNet": { "auth_ref": [ "r605" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) of the credit facility.", "label": "Line of Credit Facility, Increase (Decrease), Net", "terseLabel": "Line of credit facility increase over previous commitment" } } }, "localname": "LineOfCreditFacilityIncreaseDecreaseForPeriodNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityLenderDomain": { "auth_ref": [ "r16", "r605" ], "lang": { "en-us": { "role": { "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility.", "label": "Line of Credit Facility, Lender [Domain]", "terseLabel": "Line of Credit Facility, Lender [Domain]" } } }, "localname": "LineOfCreditFacilityLenderDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Line of Credit Facility [Line Items]", "verboseLabel": "Line of Credit Facility" } } }, "localname": "LineOfCreditFacilityLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r16" ], "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": "Line of credit facility, maximum borrowing capacity" } } }, "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r16", "r605" ], "lang": { "en-us": { "role": { "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line.", "label": "Line of Credit Facility [Table]", "verboseLabel": "Line of Credit Facility [Table]" } } }, "localname": "LineOfCreditFacilityTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LitigationSettlementAmountAwardedToOtherParty": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount awarded to other party in judgment or settlement of litigation.", "label": "Litigation Settlement, Amount Awarded to Other Party", "terseLabel": "Litigation settlement amount", "totalLabel": "Total" } } }, "localname": "LitigationSettlementAmountAwardedToOtherParty", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails", "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [ "r615" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for claims held for amounts due a entity, excluding financing receivables. Examples include, but are not limited to, trade accounts receivables, notes receivables, loans receivables. Includes disclosure for allowance for credit losses.", "label": "Loans, Notes, Trade and Other Receivables Disclosure [Text Block]", "terseLabel": "Accounts Receivable" } } }, "localname": "LoansNotesTradeAndOtherReceivablesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivable" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "auth_ref": [ "r4" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 }, "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails": { "order": 2.0, "parentTag": "us-gaap_DebtAndCapitalLeaseObligations", "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 portion", "verboseLabel": "Long-term debt (Note 7)" } } }, "localname": "LongTermDebtAndCapitalLeaseObligations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "auth_ref": [ "r17" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 }, "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails": { "order": 1.0, "parentTag": "us-gaap_DebtAndCapitalLeaseObligations", "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", "negatedLabel": "Less current maturities", "verboseLabel": "Current maturities of long-term debt (Note 7)" } } }, "localname": "LongTermDebtAndCapitalLeaseObligationsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermPurchaseCommitmentAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The minimum amount the entity agreed to spend under the long-term purchase commitment.", "label": "Long-Term Purchase Commitment, Amount", "terseLabel": "Purchase commitment" } } }, "localname": "LongTermPurchaseCommitmentAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_MinorityInterest": { "auth_ref": [ "r23", "r133", "r145", "r193", "r258", "r294", "r297", "r298", "r299", "r305", "r306", "r503" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which is directly or indirectly attributable to that ownership interest in subsidiary equity which is not attributable to the parent (that is, noncontrolling interest, previously referred to as minority interest).", "label": "Stockholders' Equity Attributable to Noncontrolling Interest", "terseLabel": "Noncontrolling interest" } } }, "localname": "MinorityInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r189" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities, including discontinued operations. Financing activity cash flows include obtaining resources from owners and providing them with a return on, and a return of, their investment; borrowing money and repaying amounts borrowed, or settling the obligation; and obtaining and paying for other resources obtained from creditors on long-term credit.", "label": "Net Cash Provided by (Used in) Financing Activities", "totalLabel": "Net cash (used in) provided by financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM FINANCING ACTIVITIES:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r189" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from investing activities, including discontinued operations. Investing activity cash flows include making and collecting loans and acquiring and disposing of debt or equity instruments and property, plant, and equipment and other productive assets.", "label": "Net Cash Provided by (Used in) Investing Activities", "totalLabel": "Net cash provided by (used in) investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]", "terseLabel": "CASH FLOWS FROM INVESTING ACTIVITIES:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r47", "r48", "r51" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from operating activities, including discontinued operations. Operating activity cash flows include transactions, adjustments, and changes in value not defined as investing or financing activities.", "label": "Net Cash Provided by (Used in) Operating Activities", "totalLabel": "Net cash provided by (used in) operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]", "terseLabel": "CASH FLOWS FROM OPERATING ACTIVITIES:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r35", "r51", "r137", "r148", "r153", "r173", "r176", "r180", "r193", "r200", "r202", "r203", "r204", "r205", "r208", "r209", "r213", "r235", "r240", "r246", "r249", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r498", "r503", "r557", "r638" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent.", "label": "Net Income (Loss) Attributable to Parent", "totalLabel": "Net loss attributable to L.B. Foster Company" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetIncomeLossAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Net Income (Loss) Attributable to Parent [Abstract]", "terseLabel": "Numerator for basic and diluted loss per common share:" } } }, "localname": "NetIncomeLossAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "auth_ref": [ "r109", "r113", "r173", "r176", "r208", "r209", "r602" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of Net Income (Loss) attributable to noncontrolling interest.", "label": "Net Income (Loss) Attributable to Noncontrolling Interest", "terseLabel": "Net loss attributable to noncontrolling interest" } } }, "localname": "NetIncomeLossAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r101" ], "lang": { "en-us": { "role": { "documentation": "Agreement in which one party agrees not to pursue a similar trade in competition with another party.", "label": "Noncompete Agreements [Member]", "terseLabel": "Non-compete agreements" } } }, "localname": "NoncompeteAgreementsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncontrollingInterestMember": { "auth_ref": [ "r104", "r333", "r609", "r610", "r611" ], "lang": { "en-us": { "role": { "documentation": "This element represents that portion of equity (net assets) in a subsidiary not attributable, directly or indirectly, to the parent. A noncontrolling interest is sometimes called a minority interest.", "label": "Noncontrolling Interest [Member]", "terseLabel": "Noncontrolling Interest" } } }, "localname": "NoncontrollingInterestMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_OffMarketFavorableLeaseMember": { "auth_ref": [ "r629" ], "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 lease" } } }, "localname": "OffMarketFavorableLeaseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r235", "r240", "r246", "r249", "r557" ], "calculation": { "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails": { "order": 2.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The net result for the period of deducting operating expenses from operating revenues.", "label": "Operating Income (Loss)", "terseLabel": "Segment Operating Profit (Loss)", "totalLabel": "Operating profit (loss)", "verboseLabel": "Operating profit (loss) for reportable segments" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r514" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "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": "Long-term operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r513" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "Operating Lease, Right-of-Use Asset", "terseLabel": "Operating lease right-of-use assets - net" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r239", "r240", "r241", "r242", "r243", "r249" ], "lang": { "en-us": { "role": { "documentation": "Identifies components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Operating Segments [Member]", "terseLabel": "Operating Segments" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r0", "r115" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure.", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "terseLabel": "Financial Statements" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FinancialStatements" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r164", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of current assets classified as other.", "label": "Other Assets, Current", "terseLabel": "Other current assets" } } }, "localname": "OtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r159" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 7.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 assets" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Assets, Noncurrent [Abstract]", "terseLabel": "Other assets:" } } }, "localname": "OtherAssetsNoncurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r25", "r27", "r106", "r110" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan, attributable to parent.", "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, after Tax and Reclassification Adjustment, Attributable to Parent", "negatedLabel": "Pension liability adjustment" } } }, "localname": "OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r106", "r107", "r110" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to noncontrolling interests.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Noncontrolling Interest", "terseLabel": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r106", "r107", "r110" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature, attributable to parent entity.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent", "terseLabel": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": { "auth_ref": [ "r168", "r169" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 4.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and before 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), before Reclassification, after Tax", "terseLabel": "Unrealized (loss) gain on cash flow hedges, net of tax benefit of $0 and $188, respectively", "verboseLabel": "Unrealized derivative gain (loss) on cash flow hedges" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax": { "auth_ref": [ "r170" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, before reclassification, of tax expense (benefit) for 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), before Reclassification, Tax", "negatedLabel": "Unrealized gain (loss) on cash flow hedge, tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": { "auth_ref": [ "r169", "r171" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 5.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for 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), Reclassification, after Tax", "negatedLabel": "Cash flow hedges reclassified to earnings", "negatedTerseLabel": "Cash flow hedges reclassified to earnings, net of tax expense of $0 and $66, respectively" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": { "auth_ref": [ "r170" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of tax expense (benefit) for reclassification of gain (loss) from accumulated other comprehensive income (AOCI) for 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), Reclassification, Tax", "negatedLabel": "Cash flow hedges reclassified to earnings, tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r24" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r33", "r78", "r174", "r177", "r182", "r504", "r509", "r510", "r527", "r534", "r600", "r601" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss).", "label": "Other Comprehensive Income (Loss), Net of Tax", "totalLabel": "Total comprehensive loss" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax [Abstract]", "terseLabel": "Other comprehensive income, net of tax:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPeriodIncreaseDecreaseAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]", "terseLabel": "Other comprehensive income (loss), net of tax:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax": { "auth_ref": [ "r27", "r31", "r89", "r172" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss": { "order": 3.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of reclassification adjustment from accumulated other comprehensive (income) loss for net periodic benefit cost (credit) of defined benefit plan.", "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, after Tax", "terseLabel": "Reclassification of pension liability adjustments to earnings, net of tax expense of $2 and $16, respectively*" } } }, "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax": { "auth_ref": [ "r28", "r106" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of tax (expense) benefit for reclassification adjustment from accumulated other comprehensive (income) loss of defined benefit plan.", "label": "Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, Tax", "terseLabel": "Reclassification of pension liability adjustments to earnings, tax" } } }, "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r20" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 6.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer.", "label": "Other Liabilities, Noncurrent", "verboseLabel": "Other long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r39" ], "calculation": { "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails": { "order": 3.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0 }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.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)", "negatedLabel": "Other expense (income) - net", "terseLabel": "Other (expense) income - net" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_PatentsMember": { "auth_ref": [ "r103" ], "lang": { "en-us": { "role": { "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law.", "label": "Patents [Member]", "terseLabel": "Patents" } } }, "localname": "PatentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r45" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow to reacquire common stock during the period.", "label": "Payments for Repurchase of Common Stock", "negatedLabel": "Treasury stock acquisitions" } } }, "localname": "PaymentsForRepurchaseOfCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r42" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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", "negatedLabel": "Capital expenditures on property, plant, and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "auth_ref": [ "r376", "r378", "r384", "r402", "r404", "r405", "r406", "r407", "r408", "r423", "r424", "r425", "r430", "r577" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for retirement benefits.", "label": "Retirement Benefits [Text Block]", "terseLabel": "Retirement Plans" } } }, "localname": "PensionAndOtherPostretirementBenefitsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlans" ], "xbrltype": "textBlockItemType" }, "us-gaap_PensionPlansDefinedBenefitMember": { "auth_ref": [ "r86", "r353", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r400", "r401", "r403", "r406", "r409", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r425", "r426", "r429", "r577", "r578", "r582", "r583", "r584" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "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-Based Stock and Share Units" } } }, "localname": "PerformanceSharesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromDivestitureOfBusinesses": { "auth_ref": [ "r40" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow associated with the amount received from the sale of a portion of the company's business, for example a segment, division, branch or other business, during the period.", "label": "Proceeds from Divestiture of Businesses", "terseLabel": "Proceeds from business dispositions" } } }, "localname": "ProceedsFromDivestitureOfBusinesses", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfOtherLongTermDebt": { "auth_ref": [ "r43" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from issuance of long-term debt classified as other.", "label": "Proceeds from Issuance of Other Long-Term Debt", "terseLabel": "Proceeds from debt" } } }, "localname": "ProceedsFromIssuanceOfOtherLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromMinorityShareholders": { "auth_ref": [ "r44" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from a noncontrolling interest. Includes, but is not limited to, purchase of additional shares or other increase in noncontrolling interest ownership.", "label": "Proceeds from Noncontrolling Interests", "terseLabel": "Investment of noncontrolling interest" } } }, "localname": "ProceedsFromMinorityShareholders", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r41" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.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 the sale of property, plant, and equipment" } } }, "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductLiabilityContingencyLineItems": { "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": "Product Liability Contingency [Line Items]", "terseLabel": "Product Liability Contingency" } } }, "localname": "ProductLiabilityContingencyLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ProductLiabilityContingencyTable": { "auth_ref": [ "r292", "r633", "r634", "r635" ], "lang": { "en-us": { "role": { "documentation": "Information and financial data about the reasonably possible loss or the recognized and additional reasonably possible loss from product liability related to an individual product.", "label": "Product Liability Contingency [Table]", "terseLabel": "Product Liability Contingency [Table]" } } }, "localname": "ProductLiabilityContingencyTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ProductMember": { "auth_ref": [ "r568" ], "lang": { "en-us": { "role": { "documentation": "Article or substance produced by nature, labor or machinery.", "label": "Product [Member]", "terseLabel": "Sales of goods" } } }, "localname": "ProductMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "domainItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r153", "r173", "r176", "r188", "r193", "r200", "r208", "r209", "r235", "r240", "r246", "r249", "r258", "r294", "r295", "r297", "r298", "r299", "r301", "r303", "r305", "r306", "r488", "r491", "r492", "r498", "r503", "r531", "r557", "r587", "r588", "r602", "r638" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The consolidated profit or loss for the period, net of income taxes, including the portion attributable to the noncontrolling interest.", "label": "Net Income (Loss), Including Portion Attributable to Noncontrolling Interest", "verboseLabel": "Net loss" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r630", "r677" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.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", "terseLabel": "Property, plant, and equipment - net" } } }, "localname": "PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r186", "r262" ], "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": "Current period provision", "verboseLabel": "Reserve for uncollectible accounts, expense" } } }, "localname": "ProvisionForDoubtfulAccounts", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails", "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": { "auth_ref": [ "r62", "r64" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total assets from reportable segments to the entity's consolidated assets.", "label": "Reconciliation of Assets from Segment to Consolidated [Table Text Block]", "terseLabel": "Schedule of Reconciliation of Assets from Segment to Consolidated" } } }, "localname": "ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable": { "auth_ref": [ "r61", "r64" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about 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]", "terseLabel": "Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table]" } } }, "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r61", "r64" ], "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 Reconciliation of Operating Profit (Loss) from Segments to Consolidated" } } }, "localname": "ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r60", "r64" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of all significant reconciling items in the reconciliation of total revenues from reportable segments to the entity's consolidated revenues.", "label": "Reconciliation of Revenue from Segments to Consolidated [Table Text Block]", "terseLabel": "Schedule of Reconciliation of Revenue from Segments to Consolidated" } } }, "localname": "ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RepaymentsOfOtherLongTermDebt": { "auth_ref": [ "r46" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for the payment of debt classified as other, maturing after one year or the operating cycle, if longer.", "label": "Repayments of Other Long-Term Debt", "negatedLabel": "Repayments of debt" } } }, "localname": "RepaymentsOfOtherLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r57" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r8", "r83", "r144", "r543", "r545", "r589" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r150", "r197", "r198", "r199", "r201", "r207", "r209", "r259", "r465", "r466", "r467", "r477", "r478", "r496", "r540", "r542" ], "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.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanSponsorLocationAxis": { "auth_ref": [ "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r403", "r406", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r645", "r646", "r647" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanSponsorLocationDomain": { "auth_ref": [ "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r403", "r406", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r645", "r646", "r647" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanTypeAxis": { "auth_ref": [ "r86", "r87", "r353", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r400", "r401", "r403", "r406", "r409", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r425", "r426", "r427", "r429", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanTypeDomain": { "auth_ref": [ "r86", "r87", "r353", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r400", "r401", "r403", "r406", "r409", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r422", "r425", "r426", "r427", "r429", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r584" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Revenue from Contract with Customer [Abstract]" } } }, "localname": "RevenueFromContractWithCustomerAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "auth_ref": [ "r226", "r227", "r239", "r244", "r245", "r251", "r252", "r254", "r347", "r348", "r523" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 1.0, "parentTag": "us-gaap_GrossProfit", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, including 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, Including Assessed Tax", "netLabel": "Net Sales", "terseLabel": "Total net sales" } } }, "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r337", "r338", "r339", "r340", "r341", "r342", "r345", "r346", "r351", "r352" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure of revenue from contract with customer to transfer good or service and to transfer nonfinancial asset. Includes, but is not limited to, disaggregation of revenue, credit loss recognized from contract with customer, judgment and change in judgment related to contract with customer, and asset recognized from cost incurred to obtain or fulfill contract with customer. Excludes insurance and lease contracts.", "label": "Revenue from Contract with Customer [Text Block]", "terseLabel": "Revenue" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/Revenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r343" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Amount", "terseLabel": "Revenue remaining performance obligation" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "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": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r344" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "terseLabel": "Revenue, remaining performance obligation, expected timing of satisfaction, period" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r344" ], "lang": { "en-us": { "role": { "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation.", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r642" ], "lang": { "en-us": { "role": { "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.", "label": "Revenue, Remaining Performance Obligation, Percentage", "terseLabel": "Revenue remaining performance obligation (percentage)" } } }, "localname": "RevenueRemainingPerformanceObligationPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "percentItemType" }, "us-gaap_RevolvingCreditFacilityMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount.", "label": "Revolving Credit Facility [Member]", "terseLabel": "Revolving credit facility" } } }, "localname": "RevolvingCreditFacilityMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock": { "auth_ref": [ "r90" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the costs related to the various types of retirement plans including defined benefit pension plan cost, defined contribution plan cost, other postretirement benefit plan cost, and net periodic benefit cost.", "label": "Schedule of Costs of Retirement Plans [Table Text Block]", "terseLabel": "Schedule of Costs of Retirement Plans" } } }, "localname": "ScheduleOfCostsOfRetirementPlansTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "auth_ref": [ "r19", "r79", "r80", "r81", "r82", "r125", "r126", "r128", "r141", "r562", "r564", "r608" ], "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 Long-term Debt Instruments" } } }, "localname": "ScheduleOfDebtInstrumentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/LongtermDebtandRelatedMattersTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": { "auth_ref": [ "r90", "r91", "r92", "r93", "r94" ], "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.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleOfNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r612" ], "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.lbfoster.com/role/EarningsPerCommonShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "auth_ref": [ "r499", "r500" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of assets and liabilities, including [financial] instruments measured at fair value that are classified in stockholders' equity, if any, 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": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]", "terseLabel": "Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis" } } }, "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": { "auth_ref": [ "r549", "r617" ], "lang": { "en-us": { "role": { "documentation": "Disclosure of information about allowance for credit loss on financing receivable.", "label": "Financing Receivable, Allowance for Credit Loss [Table]", "terseLabel": "Financing Receivable, Allowance for Credit Loss [Table]" } } }, "localname": "ScheduleOfFinancingReceivableAllowanceForCreditLossesTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r70", "r71", "r524" ], "lang": { "en-us": { "role": { "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life.", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "terseLabel": "Schedule of Finite-Lived Intangible Assets [Table]" } } }, "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r70", "r71" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r559" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r559", "r618", "r619", "r620", "r621", "r622", "r623", "r624", "r625", "r626", "r627", "r628" ], "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.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r1", "r12", "r13", "r14" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the carrying amount as of the balance sheet date of merchandise, goods, commodities, or supplies held for future sale or to be used in manufacturing, servicing or production process.", "label": "Schedule of Inventory, Current [Table Text Block]", "terseLabel": "Schedule of Inventory" } } }, "localname": "ScheduleOfInventoryCurrentTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/InventoryTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": { "auth_ref": [ "r88" ], "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 Benefit Costs" } } }, "localname": "ScheduleOfNetBenefitCostsTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "auth_ref": [ "r95" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the changes in outstanding nonvested shares.", "label": "Schedule of Nonvested Share Activity [Table Text Block]", "terseLabel": "Schedule of Nonvested Share Activity" } } }, "localname": "ScheduleOfNonvestedShareActivityTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r58", "r59", "r63", "r68" ], "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.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "auth_ref": [ "r431", "r433", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r223", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r249", "r254", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r285", "r286", "r559", "r687" ], "lang": { "en-us": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments [Domain]", "terseLabel": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "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": [ "r223", "r224", "r225", "r235", "r238", "r243", "r247", "r248", "r249", "r250", "r251", "r253", "r254", "r255" ], "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": "Business Segments" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegments" ], "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", "verboseLabel": "Segment Reporting Information" } } }, "localname": "SegmentReportingInformationLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems": { "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, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]", "terseLabel": "Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]" } } }, "localname": "SegmentReportingReconcilingItemForOperatingProfitLossFromSegmentToConsolidatedLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r38" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations": { "order": 2.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate total costs related to selling a firm's product and services, as well as all other general and administrative expenses. Direct selling expenses (for example, credit, warranty, and advertising) are expenses that can be directly linked to the sale of specific products. Indirect selling expenses are expenses that cannot be directly linked to the sale of specific products, for example telephone expenses, Internet, and postal charges. General and administrative expenses include salaries of non-sales personnel, rent, utilities, communication, etc.", "label": "Selling, General and Administrative Expense", "terseLabel": "Selling and administrative expenses" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "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.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ServiceMember": { "auth_ref": [ "r568" ], "lang": { "en-us": { "role": { "documentation": "Assistance, including, but not limited to, technology, license and maintenance, license and service, maintenance, oil and gas, and financial service.", "label": "Service [Member]", "terseLabel": "Sales of services" } } }, "localname": "ServiceMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r49" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "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" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-Based Payment Arrangement, Noncash Expense [Abstract]" } } }, "localname": "ShareBasedCompensationAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r586" ], "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", "verboseLabel": "Vesting period" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r449" ], "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.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r449" ], "lang": { "en-us": { "role": { "documentation": "The weighted average fair value at grant date for nonvested equity-based awards issued during the period on other than stock (or unit) option plans (for example, phantom stock or unit plan, stock or unit appreciation rights plan, performance target plan).", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "verboseLabel": "Granted (usd per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r446", "r447" ], "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, Ending balance (in shares)", "periodStartLabel": "Outstanding, Beginning balance (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Number of Shares [Roll Forward]", "terseLabel": "Restricted Stock, Deferred Stock Units and Performance Share Units" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r446", "r447" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value", "periodEndLabel": "Outstanding, Ending balance (usd per share)", "periodStartLabel": "Outstanding, Beginning balance (usd per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Nonvested, Weighted Average Grant Date Fair Value [Abstract]", "terseLabel": "Weighted Average Grant Date Fair Value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValueRollForward", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r450" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period", "negatedLabel": "Vested (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r450" ], "lang": { "en-us": { "role": { "documentation": "The weighted average fair value as of grant date pertaining to an equity-based award plan other than a stock (or unit) option plan for which the grantee gained the right during the reporting period, by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash in accordance with the terms of the arrangement.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Weighted Average Grant Date Fair Value", "terseLabel": "Vested (usd per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "domainItemType" }, "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": "Vesting period one" } } }, "localname": "ShareBasedCompensationAwardTrancheOneMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "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": "Vesting period two" } } }, "localname": "ShareBasedCompensationAwardTrancheTwoMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r152", "r223", "r226", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r249", "r254", "r267", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r283", "r285", "r286", "r559", "r687" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]", "terseLabel": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails", "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofRevenuefromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r21", "r78", "r150", "r178", "r179", "r180", "r197", "r198", "r199", "r201", "r207", "r209", "r222", "r259", "r333", "r465", "r466", "r467", "r477", "r478", "r496", "r504", "r505", "r506", "r507", "r508", "r510", "r516", "r540", "r541", "r542" ], "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.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "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" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "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]", "terseLabel": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r197", "r198", "r199", "r222", "r523" ], "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.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r5", "r6", "r78", "r83" ], "lang": { "en-us": { "role": { "documentation": "Number of new stock issued during the period.", "label": "Stock Issued During Period, Shares, New Issues", "terseLabel": "Common shares issues net of shares withheld (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesNewIssues", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r5", "r6", "r78", "r83" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of new stock issued during the period. Includes shares issued in an initial public offering or a secondary public offering.", "label": "Stock Issued During Period, Value, New Issues", "terseLabel": "Issuance of common shares, net of share withheld for taxes" } } }, "localname": "StockIssuedDuringPeriodValueNewIssues", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r6", "r9", "r10", "r66", "r589", "r606", "r616", "r675" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "Stockholders' Equity Attributable to Parent", "totalLabel": "Total L.B. Foster Company stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "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.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r104", "r105", "r112", "r150", "r151", "r179", "r197", "r198", "r199", "r201", "r207", "r259", "r333", "r465", "r466", "r467", "r477", "r478", "r496", "r504", "r505", "r510", "r516", "r541", "r542", "r606", "r616", "r675" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 7.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of stockholders' equity (deficit), net of receivables from officers, directors, owners, and affiliates of the entity, attributable to both the parent and noncontrolling interests. Amount excludes temporary equity. Alternate caption for the concept is permanent equity.", "label": "Stockholders' Equity, Including Portion Attributable to Noncontrolling Interest", "periodEndLabel": "Ending balance", "periodStartLabel": "Beginning balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_SupplementalCashFlowInformationAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Supplemental Cash Flow Information [Abstract]", "terseLabel": "Supplemental disclosure of cash flow information:" } } }, "localname": "SupplementalCashFlowInformationAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_SwapMember": { "auth_ref": [ "r116" ], "lang": { "en-us": { "role": { "documentation": "A forward-based contract in which two parties agree to swap streams of payments over a specified period. The payment streams are based on an agreed-upon (or notional) principal amount. The term notional is used because swap contracts generally involve no exchange of principal at either inception or maturity. Rather, the notional amount serves as a basis for calculation of the payment streams to be exchanged.", "label": "Swap [Member]", "terseLabel": "Swap" } } }, "localname": "SwapMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "auth_ref": [ "r99" ], "lang": { "en-us": { "role": { "documentation": "Technology-based intangible assets, including, but not limited to, patented technology, unpatented technology, and developed technology rights.", "label": "Technology-Based Intangible Assets [Member]", "terseLabel": "Technology" } } }, "localname": "TechnologyBasedIntangibleAssetsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "auth_ref": [ "r573", "r643" ], "lang": { "en-us": { "role": { "documentation": "Information by timing of transfer of good or service to customer.", "label": "Timing of Transfer of Good or Service [Axis]", "terseLabel": "Timing of Transfer of Good or Service [Axis]" } } }, "localname": "TimingOfTransferOfGoodOrServiceAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "auth_ref": [ "r573", "r643" ], "lang": { "en-us": { "role": { "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time.", "label": "Timing of Transfer of Good or Service [Domain]", "terseLabel": "Timing of Transfer of Good or Service [Domain]" } } }, "localname": "TimingOfTransferOfGoodOrServiceDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TrademarksAndTradeNamesMember": { "auth_ref": [ "r100" ], "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": "Trademarks and trade names" } } }, "localname": "TrademarksAndTradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredAtPointInTimeMember": { "auth_ref": [ "r573" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred at point in time.", "label": "Transferred at Point in Time [Member]", "terseLabel": "Point in time" } } }, "localname": "TransferredAtPointInTimeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredOverTimeMember": { "auth_ref": [ "r573" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred over time.", "label": "Transferred over Time [Member]", "terseLabel": "Over time" } } }, "localname": "TransferredOverTimeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonMember": { "auth_ref": [ "r84" ], "lang": { "en-us": { "role": { "documentation": "Previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common [Member]", "terseLabel": "Treasury Stock" } } }, "localname": "TreasuryStockCommonMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonShares": { "auth_ref": [ "r84" ], "lang": { "en-us": { "role": { "documentation": "Number of previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common, Shares", "terseLabel": "Treasury stock shares - at cost, common stock (in shares)" } } }, "localname": "TreasuryStockCommonShares", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockCommonValue": { "auth_ref": [ "r22", "r84", "r85" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount allocated to previously issued common shares repurchased by the issuing entity and held in treasury.", "label": "Treasury Stock, Common, Value", "negatedLabel": "Treasury stock - at cost, 306,068 and 338,952 common stock shares at March\u00a031, 2023 and December\u00a031, 2022, respectively" } } }, "localname": "TreasuryStockCommonValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r670", "r671", "r672", "r673" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r648", "r649", "r650", "r651", "r652", "r653", "r654", "r655", "r656", "r657", "r658", "r659", "r660", "r661", "r662", "r663", "r664", "r665", "r666", "r667", "r668", "r669", "r670", "r671", "r672", "r673" ], "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.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment [Abstract]", "terseLabel": "Effect of dilutive securities:" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustmentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r211", "r216" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "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", "totalLabel": "Denominator for diluted loss per common share - adjusted weighted average shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": { "auth_ref": [ "r55", "r56" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "This element represents the weighted average total number of shares issued throughout the period including the first (beginning balance outstanding) and last (ending balance outstanding) day of the period before considering any reductions (for instance, shares held in treasury) to arrive at the weighted average number of shares outstanding. Weighted average relates to the portion of time within a reporting period that common shares have been issued and outstanding to the total time in that period. Such concept is used in determining the weighted average number of shares outstanding for purposes of calculating earnings per share (basic).", "label": "Weighted Average Number of Shares Issued, Basic", "terseLabel": "Weighted average shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesIssuedBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r210", "r216" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "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", "totalLabel": "Denominator for basic loss per common share (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasicAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Weighted Average Number of Shares Outstanding, Basic [Abstract]", "terseLabel": "Denominator:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasicAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" } }, "unitCount": 9 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org/topic&trid=2122149", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "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" }, "r10": { "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" }, "r100": { "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" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r102": { "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" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568447-111683", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4568740-111683", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r106": { "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" }, "r107": { "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" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4613674-111683", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "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(32))", "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": "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" }, "r111": { "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" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4590271-111686", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r115": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "83", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126929950&loc=d3e34841-113949", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959", "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(6)(a))", "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": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r121": { "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" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13467-108611", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13476-108611", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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" }, "r128": { "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" }, "r129": { "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" }, "r13": { "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" }, "r130": { "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" }, "r131": { "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" }, "r132": { "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" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(22))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r134": { "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" }, "r135": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.13,16)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r136": { "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" }, "r137": { "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" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.10)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r139": { "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" }, "r14": { "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" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Subparagraph": "e", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=123599511&loc=d3e64711-112823", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(24))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r15": { "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" }, "r150": { "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" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "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" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r16": { "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" }, "r160": { "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" }, "r161": { "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" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r163": { "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" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(8))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r165": { "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" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "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" }, "r169": { "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" }, "r17": { "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" }, "r170": { "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" }, "r171": { "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://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "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" }, "r179": { "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" }, "r18": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(23))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3000-108585", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r189": { "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" }, "r19": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "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" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r2": { "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" }, "r20": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r21": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "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" }, "r217": { "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" }, "r218": { "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" }, "r219": { "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" }, "r22": { "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" }, "r220": { "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" }, "r221": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "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" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r23": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(i-k)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r256": { "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" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r258": { "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" }, "r259": { "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" }, "r26": { "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" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "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" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org/topic&trid=2126998", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "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" }, "r267": { "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" }, "r268": { "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" }, "r269": { "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" }, "r27": { "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" }, "r270": { "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" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "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" }, "r279": { "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" }, "r28": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "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" }, "r289": { "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" }, "r29": { "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" }, "r290": { "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" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q1)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r292": { "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" }, "r293": { "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" }, "r294": { "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" }, "r295": { "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" }, "r296": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "r3": { "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" }, "r30": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r31": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r32": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r33": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "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" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r35": { "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" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r36": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "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" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r38": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r39": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "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" }, "r399": { "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" }, "r4": { "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" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "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" }, "r401": { "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" }, "r402": { "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" }, "r403": { "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" }, "r404": { "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" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r41": { "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" }, "r410": { "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" }, "r411": { "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" }, "r412": { "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" }, "r413": { "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" }, "r414": { "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" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r42": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "r43": { "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" }, "r430": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "715", "URI": "https://asc.fasb.org/topic&trid=2235017", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "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" }, "r432": { "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" }, "r433": { "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" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r45": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r46": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org/topic&trid=2228938", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r469": { "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" }, "r47": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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" }, "r48": { "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" }, "r480": { "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" }, "r481": { "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" }, "r482": { "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" }, "r483": { "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" }, "r484": { "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" }, "r485": { "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" }, "r486": { "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" }, "r487": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r488": { "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://www.xbrl.org/2003/role/disclosureRef" }, "r489": { "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" }, "r49": { "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" }, "r490": { "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" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4582445-111684", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r494": { "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" }, "r495": { "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" }, "r496": { "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" }, "r497": { "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" }, "r498": { "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" }, "r499": { "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://www.xbrl.org/2003/role/disclosureRef" }, "r5": { "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" }, "r50": { "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" }, "r500": { "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" }, "r501": { "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" }, "r502": { "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" }, "r503": { "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" }, "r504": { "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" }, "r505": { "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" }, "r506": { "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" }, "r507": { "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" }, "r508": { "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" }, "r509": { "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" }, "r51": { "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" }, "r510": { "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" }, "r511": { "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" }, "r512": { "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" }, "r513": { "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" }, "r514": { "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" }, "r515": { "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" }, "r516": { "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" }, "r517": { "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" }, "r518": { "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" }, "r519": { "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" }, "r52": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org/extlink&oid=126938201&loc=d3e55415-109406", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(25))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r529": { "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" }, "r53": { "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" }, "r530": { "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" }, "r531": { "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" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(5))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r533": { "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" }, "r534": { "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" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(21))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r536": { "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" }, "r537": { "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" }, "r538": { "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" }, "r539": { "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" }, "r54": { "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" }, "r540": { "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" }, "r541": { "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" }, "r542": { "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" }, "r543": { "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" }, "r544": { "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" }, "r545": { "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" }, "r546": { "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" }, "r547": { "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" }, "r548": { "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" }, "r549": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1405", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r55": { "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://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "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" }, "r551": { "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" }, "r552": { "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" }, "r553": { "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" }, "r554": { "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" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r556": { "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" }, "r557": { "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" }, "r558": { "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/exampleRef" }, "r559": { "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" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e2646-109256", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6571209&loc=d3e13703-110860", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r561": { "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" }, "r562": { "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" }, "r563": { "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" }, "r564": { "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" }, "r565": { "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" }, "r566": { "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" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r568": { "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" }, "r569": { "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" }, "r57": { "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" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r575": { "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" }, "r576": { "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" }, "r577": { "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" }, "r578": { "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" }, "r579": { "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" }, "r58": { "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" }, "r580": { "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" }, "r581": { "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" }, "r582": { "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" }, "r583": { "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" }, "r584": { "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" }, "r585": { "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" }, "r586": { "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" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591551-111686", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=120409616&loc=SL4591552-111686", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r589": { "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" }, "r59": { "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" }, "r590": { "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" }, "r591": { "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" }, "r592": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r593": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r594": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r595": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r596": { "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" }, "r597": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(1)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(3)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r6": { "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" }, "r60": { "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://fasb.org/us-gaap/role/ref/legacyRef" }, "r600": { "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" }, "r601": { "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" }, "r602": { "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" }, "r603": { "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" }, "r604": { "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" }, "r605": { "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" }, "r606": { "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" }, "r607": { "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" }, "r608": { "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" }, "r609": { "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" }, "r61": { "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" }, "r610": { "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" }, "r611": { "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" }, "r612": { "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" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r615": { "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" }, "r616": { "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" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r618": { "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" }, "r619": { "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" }, "r62": { "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://fasb.org/us-gaap/role/ref/legacyRef" }, "r620": { "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" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "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" }, "r63": { "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" }, "r630": { "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" }, "r631": { "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" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13207-110859", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r634": { "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/2009/role/commonPracticeRef" }, "r635": { "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" }, "r636": { "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" }, "r637": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r638": { "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" }, "r639": { "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" }, "r64": { "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" }, "r640": { "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" }, "r641": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r643": { "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" }, "r644": { "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" }, "r645": { "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" }, "r646": { "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" }, "r647": { "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" }, "r648": { "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" }, "r649": { "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" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8475-108599", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r650": { "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" }, "r651": { "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" }, "r652": { "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" }, "r653": { "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" }, "r654": { "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" }, "r655": { "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" }, "r656": { "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" }, "r657": { "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" }, "r658": { "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" }, "r659": { "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" }, "r66": { "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" }, "r660": { "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" }, "r661": { "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" }, "r662": { "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" }, "r663": { "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" }, "r664": { "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" }, "r665": { "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" }, "r666": { "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" }, "r667": { "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" }, "r668": { "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" }, "r669": { "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" }, "r67": { "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" }, "r670": { "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" }, "r671": { "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" }, "r672": { "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" }, "r673": { "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" }, "r674": { "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" }, "r675": { "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" }, "r676": { "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" }, "r677": { "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" }, "r678": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r679": { "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" }, "r68": { "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" }, "r680": { "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" }, "r681": { "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" }, "r682": { "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" }, "r683": { "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" }, "r684": { "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" }, "r685": { "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" }, "r686": { "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" }, "r687": { "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" }, "r688": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117783719-158441", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r69": { "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" }, "r7": { "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" }, "r70": { "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" }, "r71": { "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" }, "r72": { "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" }, "r73": { "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" }, "r74": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "https://asc.fasb.org/topic&trid=2144416", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r75": { "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" }, "r76": { "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" }, "r77": { "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" }, "r78": { "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" }, "r79": { "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" }, "r8": { "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" }, "r80": { "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" }, "r81": { "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" }, "r82": { "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" }, "r83": { "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" }, "r84": { "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" }, "r85": { "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" }, "r86": { "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" }, "r87": { "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" }, "r88": { "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" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r9": { "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" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "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" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r96": { "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" }, "r97": { "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" }, "r98": { "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" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5227-128473", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" } }, "version": "2.2" } ZIP 84 0000352825-23-000057-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000352825-23-000057-xbrl.zip M4$L#!!0 ( .%CJE;:3/4Y.!0 /RA 0 97@M,3 Q<3$R,#(S+FAT M;>T]:W/B.+;?[Z_0IG=FDRHPSX0\>KJ*)G0O>SN/2LCTSJOW'$DV!@R!-"&FEU3--*#WT7GKZ.C]7RYO6MT_;MMD(#V7W#Y\_-)ID8-B MJ?2UUBJ5+KN7Y._=JR^D;I4KI!M0/^22"Y^ZI5+[^H <#*05(Y^##>_P%_L^H\^'_WO^E6"27PHX\YDMB!XQ*YI H MY/XC^>JP\$]2+)I:+3$5&N5ZUJ[1VYMB]7J52;_3.:B?VORHP MR1)4UVU".7;9;P<>]XL#AN.?-ZI#>3'BCAR<5\KE7PZFZDGV31:IRQ_]]Q22IEJ_*^A/4SUK1@K@"QX,.Z MC3:VP--X?:K#IK;0:7S\TOY#V/]NMAV[G]S;I7+?:U^H3 M3K5]?=_L=FZNR>W=S>>[YM4J^+51H+]T8<@YUYYL-CMXOFQCBUQ**MT!(\,H M&()\(:)/Y("'Q(D%"GR6@K!0TI[+PP'A/AD%(+1 NDALQX*^"(!\;48>!75# M0GV'""@*"*S?@^_#(4 66C/LR*;01Y_[T #F/=6 M=B&PP$-^@Q6R=!)%;AY5I)KP*TW)FD$H-D(UR1KZ1WZ6,#/F+"+,[1!"IV/E MBQ9 D;BZ!]%]"3+Z^G)/%!LAB@??96&H9>*(@XQU&-*'HH;>.)%KB12!+QZ7 MDK&"*LN0:YIX>B"M?082U66^ S(2!:6U6%'?@>WJY6&[VL@T;FD@NE1V'@[OY$H. MJI'& DHD[ ^3J!$A?Z./+,VG4HBB<4-U"'K+4&C^",J;\B0 ?W63VNE54*6) M!>+I.:Q3"EP(,P&LDP- ,1(;PA\+^*W/09,;<2B:GE!:V>KJM=PF:TG4KD. MEZG41! F&A(AJ(8:4(*ZAWJ7J@%WMR%6^#C69@/5! MLB"1:,F1!B3L*&=/3,D'Z-IF@:2P=6G*NF(TC (6+@A[%B%^ME &\"9(?TG&8Y2SA. MP6AY'$'*^QR)=X9W)VBAO)F*?&.;3@!_H,J,C7PN"ZILCFTI8_19[-EIQ&!Y M0(QFYJ8I?V*!<"4,"DB:L1 &.2 B(R:TE%#5M*0H3+B$#5.!D91=@)(R+1#! M]L#=9\JP0/D"J.'W-3)1ETL8L>-+YKK,EL: )218X4IU\(O*O$I&6D^!DS+ M%E0'$&4\@NPJ[%-;"F!&AJXF?6$F=ENA>% M4MM0/?88^81Y0U>,U532Y*+P'639#4RG!R,E/#'E$U$ ST!MLM,*9?^-D;M2 ML6IU7'-',SM00E 5F]I$>T !0T/2#X2G%/I$E0.,H+YVI26_ 3\"Y0?T.$\@ MTG(?*F$CLZ-QO4QESR@Q3A3$WKLL28B_SS-"1/IY<8SL,8PR]66@/IA ,5 : M&IUU RI&/:VS/C,MI97B4%HI''$]1LJ6BC7A9%28+P^-HFP*_10'S0F(3E1CKL+_)[XPA I#V>&0;D 2H2CR7(2\43DI:('44;%>YAR,[C#Q<.#X/@;A@$Q(N)N2[D%"1Y;RQ_SEO#NA6\TOKX4NSV[G^3&Z;?]P\=,G-)]+\ MVKR[G'=$;_V,-)%*37U4.;$S)LXH8-P3YYER#_WZ[OCT8M%&+P\4V0&U(A.(Z=L>-8^]--I_6'"?$[_XZ4H\(%5<%5MQQ7+8A=K%:4%T&-23(;<": M#XAAE[/PTGA_L)@"JU;C.,6CE8H4__A*@4QG*X&]U;XID-:G&V G9Q>D]?EF M-8Z2V_7<_WY;('^_([^^JP%[;#K UO72H,#\^)GY+ #^VP*T"9FKB[4'V)]E"'6(:*AJB?PCLK(U^<*Z>/%)8<(M">>6.8!0F%61R&'$_, AY_F54AT_B1IO6$2'W,J"XHT7<70R5 M8M"WJV,DXO@A=4=)BLGAD 9\*F"\Q^2(,5^'+*G-6G+)8@IM:B3L)2=CQU!8J6[\"*M^8C5.3W?T"&M7O-R5RDJD:4(L\ZL3 MK[:,1:;R+IZC9"MTT-%6(3KAPWEVTKP>5+)5P+_6J@7H=Q==$-L&5;6\I@-B MCA3/JD[Y>/MFZ-9QJGI2J*^&4S\(HI\7V2KK(MM/CU.50J6ZYU,_EY\T'P#[ M@E:O'%"?K(UEN^1!VS98U_*>OP=$[AP0^3 /C=_@ M!2$@;VUQQU>;]FHBVFA68R?#5?;&;%X!5;'J*V'4WI3=F[*K8M3IGD?M#=G- M ^RS2E(>:%MV333;6[(;LF37C0,YKL^<9F\N#.38>CX;X$6*!SKYN;/:ZJ+O)%8+I+_ M3:++ A8"OPM-&!VU_Q-QDP@JCLKBGL<<#CJ".R;W(E4'[[P,5F?RU79[ L:R#(7C1(P8,DF9=$DDUD(&X0O?S!U M*5OG)4S-&@ 8YN&=BP6$^WO.Z';J$1SX5RAL"QM M.#!GRC'Q)"9+QUXUWW=X:&,&+)W/TA,.[X\+F/A/9<%B!<0EP#R7VFPR(#:< M2@XL%:Y*[C&3*'PRKM(9=' WC*-C[P$KQ[.]3;+O87<9F@Z/QTQX6B8] MD[XGSM8#M*):_OJNWKB =7@I,XX"M\)7+YAG,OD- U1H$*XX=JCR2J5$%HN 7,I@NJ6*B3-#JD!\H/<@MSCR%)-CB7>1YWQ+!2&N\54T&C M0ZS&PBS=+"\/Y""R*?B&8 G@!84!Y8@.:8::00VX+0!43#6O4E,K:['' *+] M5,O).P]4/ON53 I@YL_EN$I22,K9K(^,*5:O4J\"3GYBO2!2 MF=/UY-X4YBOD)5XQ;KJN@Z2W?O)>/[7*C9/MI)E\+J7D%F+IMWK=[5_+_GXX MGGZK2_F'&/BD;9'_C_SONS7SF T6%C# 3:UF,Q>']_CYLJ5<@LA9+??LBQQG M_WLNSOFG(W?4Q?GR9U\W8,RE_4,Y4!S7-?UNVW>?;NZNFM>M-KEJ-^\?[MKZ MT;7FY3\>[KOHRUF4[/:MEY6^\$4#_63?1YWYN&/4^@+ITF^H\%XR,,C AE*" M ;71IH?^A>_ZAVV[+P\^',[<53O2N56UE8,/$,Y92U/)XP-TWDQ?D2XD[J-/ M^JW2/_"MTD-ZI!Q5'M.9V/4C))$RE71SL,QT.L+#WA$9@DD5UY?T&V'?4)PR M4\%.*FCHSA0[1P2(/5VN>S+%S+1VTELQU0/NRV'?5*/I#9H>Z#&N@G:R&E'= MDTYY<,W=[]EKQ?K]V.G[\=JE']\K9_T^PAL,#S,DV,ZAP-G&;WN99QW0)LBO MAVDVAIF:1VGC%S1@???491O-5+@:XB=/TGY5CHJ6GMHOR8QB#^DZ]* \$U// M>FAB6(U&M), K-8 (:->X7#'I$==-/%")@D)**G4BD/! MT;\0=\/D0 !!P+(Z/CI<13 NZ&R?%.;?#,/XN+VI7;"851+?G-#N2WVY8LFL M,.]WW/#6/$2'O5VB]SF V=VAFS="MP[ZEO6S?OKQ49])?)E,>3KNS.E75E[J MB7];K3&QWF?)++=$@-Z2/AC38J06,'/ \Q@!7+!1F#X)Z*D7+Y)SNC77MEV[ M'E9IE;4>M:YAWZA8IY63C8?45ZK6<75QTQ_HMG:R6A+MM2-R^_!GVSN4*F"K MRFTS(1K@+)@R98CB."]VXVIK>/"!VGQ?/7[A1+8Y(0;IX#A%Q(=0/_BC&2'* MAT=]= #_C69=6Q'?E-FBU,+X"3\^=;J/:B_8YI=T^[/PR8E@@S M(WXQD$5(_>9RND!'Y RC &0K>@138G6N#Q7EQN3T^ZUCEGZQ?4^\>^+=$^^+ M341_3##\B?=A'OH92U_XQ0 #0A7!<+7, [<1]DLX_AN@K%L MTCRBJ^)?@\B6BFH+8/JCE@8E 0^DRW8CY3SP0*J/SGJR#1F1S[ M5,J _](Q\53?.V- ^=0L2'ZY-,VI[2&Q(F*'-%L!NKY89^!GA%P&SM.!<6/ M,$Q3Q_^GDU";*?&0?&>!V&L1>V)_96+?6BZ ?+.#&WVG)'5JV-=R5X"FH'*P M?P-JA@5S'T.5;1[8D1=*?3R+)CP#N>_,AMNKNRO3X?;/!&^;4O6.-WZYY*#J M2!&LX0S(47:'-Z>!GR:?PYM#,COP\OG#__7+_L?B,NLOB\LL]80SAG\&TG,_ M_!=02P,$% @ X6.J5DULP>T6&P @I\ ! !E>"TQ,#)Q,3(P,C,N M:'1M[5UK<]O&N?Y^?L76.4VE&>CNFVS7,[HPB=M$]LAL??JILP26Y-8@EMT% M1#.__KR776 !@K*4Q!:EQ#--;1+_>G\[=GP7^\&8EK.WMG0_/Q0_#GWX4CW?W#\30RL+I4IM"YGM[@XM'XM&T+.\'(/AWJ\EQOCU&Y69H]>O\)/X+]*9J__Y]6?=G;$N4FK MF2I*D5HE2Y6)RNEB(CYDRGT4.SO^J3,S7UH]F9;BC4RV?/TJTU="9W]]I ^>/=U_GNX_/1J-CAX?CPZ/C[/G MX_W'\BA5SYYD3^2_#V"1>_ X_\:5RUS]]=%,%SM3A?._>/)L]^F\?+G063E] M<;"__^='K2=+]:G%"]HO?#MV,#N_->IR8U]\J9SS,8)]>%"NOC)0T^ M3?5(E^)@?_?PU1X^'W:ULK=HQ2F6;L^'@7+P?OCW[ MNSCY_G(P^&EP,6QO8 .7OC7XO\'9/X9O_CG87KO6F;03H**1*4LSXX&__O(? M]R__O4J1E\53\78LAE.%3'8H!O^M=+D4LLC$FP(7J*\4,.)LK@HGZ?EWN2QN MOV-=9##8BR-@([]AX%+[^A>>W'\J5^KQ"4,M(/T@DS%E]G3?T'\^_NG[L\(*0@M9D$],:Y2HES MN+6-H" 49$!%(U4NE"K$C[OB=%=\9QP(7A)KLE@F0HIWJBC<,K^2A98B-79N M+$N[K8T\9+_R33CAA(YXDSCS*RUFC5K=6,9\/Y5634V>*;L)=+/[4%2_"G)$ M3$%+ 0B0HUR[*2@M7;K;@*H-%NJXO$T@FD241L@,Q'2J!)Z61@0-9T[PH(SN M@N0^?!Q1/6B!I9A;]:X0)WDN4CFGF_D9: C'<:(PI3#PH%UHIT2FQG!"L+]"$)!L M@.947O&Y.#E38J9 G<%.)S K/JIF_!-%Y/9 &/!=95T%MQ'N@B[8:;PZ?[BX MV20<\TR7I5+$JN,*SGIN%H $\$9D54Z-13Z%D3)MX;;H1^J32BMB4GPJ P*Y M4G;)@[<.WY]M@4>/C\(O1FHJ\W$?;>("_(QTS;>8Z)=>W)U:RY^WZ^\5U:'8 MGTM;:N42$D(%R12@G)$2N9K('*3#R%1XTR"@1@@R\?[0D!F;'(Q ]^TW3YZ_ MO&^GL09:>%?"P>XFJ:V7SD:ER^.#SLW7&W+B M?46*@7A^'LDRH" O_/$;T$ 9N5X=K) LXE7A3RJOB$2>K$5@8Y2U!!&3)N@B MF).TX%W"^$A3BXVPL6WCT'&X-CK-<'2H2H#BB8(2% 7B2N9PQO^[CZYR4/S\ MFPW&=/$.-@';M:B_<4Y&2AS@T7?&XG-SXY1;U8RLY3?RM(FZW0:<,](EB!9 MOWF5*1(S_HA;1%Z3AM H.S*ZE(A#YRW8U9)#<$7^-PL-$!?&G!.6,L)5Z73- M-(E?$)L,Y1LL$<;:0!)JD_P*4J@8%F>&Z^!,W MSS4OLT#!6GA:H]6B]VDU_> \T_3]!?L.'@+..7XI+?-CQW]^"@3ZA6_$?H.8, M[GNV' J.=HZ_EJ^D_[1O132M,T 2^1P9/3N\,_B\);?O3A3V4\N%*520A"RL MQ0P$"8DHKXDO M!518/Y<(-1ZSXT%(-FC3'%:"(XXPZJX 5GG,$J0Y Y_85': M]T&&PZUTF^-LB==UL'@PM8%L2IV2809G-5:D67 ^4Y4T_+BR)+A-+1["P:"E MM^JJB4_*(VGIT#_$D#T0C./!ZRG]6= CY#M"E83N)W(KE6K+;3=*1-&.V5HQ MBP)&F^HYJ)8Y#('>*[ Y2:F& S:M-3Y8\3'Z2N+C1LIFGP[BI %2_C(6&CY" M*A='1^+@VV\>/WMY]&$O\>'\G S7B=ZUG,Y6AE,S1$ZU2 M15ZCGB.E13":C 8K%V9GJ<#6[!F.O4K7#;>EX;QQ&)G^M](6'T414BY)!O=< M:V84NYY!K%4SU>=O *H%PBACLM<%>B] +(U<":)9D\1-\8*L1,>Z7$A+I-'& M[XW(XV!)[9Z'OP$RJX*+E<3=R@[H#OB2&@UU:OQ,Y^3--=:Q-JH*KWO\BKU% M%!TF?@\2WB/(1HV4<,CPNZRBN7&L:#1IUK5"V#/9TZ-=$K> M#\C#\\*J7.+&UZ:;>;&]W_Q$C@"D5.7J3]:FVL3_G=HP\EQ.U,[(*OEQ1X[A M.%_('*PI]^B6>7&?F?77*Z([TCN(<^888 :R!5B-[0S1XXT-,DE!DE$JS6" MNQE0 G);3RKW75^G&P?W@]O5:RL0ZFIB2#]UXD-? M*#'4><=$]%C71])(TL@E0I]R*BP\&D@8]% KE90V3DR_MSUUKI/>3 M <=>57:78&;3SF3*T.INCX3L,C9+2;V6>D:1JI@6T?$*)J9FD\@J,TYB$F>- MFK0$'G_-MAIJ0HS'CXSYR!0+Y I6'^,I_-5(%8"BRA:(]CR"8G-F8($(#@ Q M>#:I/7MSR2*7]K$P59Y%AC@M;X3)7YY!LF#6>?9!;R,O GA=UO &40POO6\N M!_+Z?,4>O<%>:BP! S$>BL^9[062"?6FR/J>R:R+=NE.\$Q!::/O.P!%V.G6 MP?YV8]X# (6'4)\'%-[C24]S:0G]ZI7 MN=;;[^; @"2K(FA;?/0\C&"[9,. MT*60U,?3&/!\"C14=!1T+S!%-'8T+D.NC),ABA6_@E4S3. (X.[A&K_9)BE3 M-GX_%Y;Q(9G(; K1",Q1<5TFP2\/GKUT:\T^3)Y I5GE-8^1#6H1B26U5V?= ML N+62#D_'>T/O2N-.Z_QI0"T5R4MX_4MP[IV0T\^G=)3GISR.GQ[M-C\J6 MN -I!:8C7')6,?K2Q=K[E$6!:F$D'68^Y>@PV*J*'&4?Z;-F$+*MV%&&2B6U MQKD=&!:N#VW%YD&G8;/2HJAC_RE00ULE91P[LQU+ESYD0Y;S>:[4VN2TVA9P MVQ2(>+@TMD%$=K#+\;,X\3RM2]"2Y6#O+ MAFIEAJX[)5+VJ5Q#NL&$3YK\LT1D%286X2QH&("0TN2:PL_8R\"BS['C)DI) M! T+UGGU.7ZYY:0)D'(P1"CPRKNB3?>$4-GS9A4[PVLL19?Y-S,2[_SL+<\9 M0DI=;+.CZA0'*"/770 "G7U<9VTC%(N=>FL\@8T7L(31C 40E"^[^N4=9GJE M&L8MZ[G!-I-SF:+SJ79=U:X -O6!^0#L8)B"G$0<:]RZH:[LGE9;81.-P**M7CA9(K!(RY'3OM442&4YF*GV([K%9YA5#G//C%4< MN7BR+^#0E<]-,/;ATN'5)I&AAYYU%$FR2ONE9(&$@/9%J$#M#!WD0 M(R4F&RV D38T\:N"G(3=V$)-38XM(D=A=08C7I)] 1/XC@CE#<;!\!A0KW9X MKP[,=>-R">&0^.IFL D\GUJ;C);M<$U!AB'>I'>E''N=$6[JBEH6A$O%!]L3 MGFY'S]%TM5,B-19C4*OI$[CLH)L:PY.T$RXT;:>07O!'[SR@B$OP,(K)WKL( MZ= BR#0.>WJZ'_N#N.Y@KFU+[K9FN38P\35B6%^FNN$$67$=71[+;BRX\1:= $K&U41]=$(E@!46'3/K,-4$ZGS^%R)V#!^UL MS9!LU9,-IZ[KS!#JPJF6$#.(;1WCTX5&EX[PVH%%HPMITEBJ!ZI@[NNS0-EG MH:>-3QLT(RPH; 1^%.]#WR38;W92Y^3QW#HO U&3.MV(U.&[X/C^W,CT8V$6E#CK(S91W"B5!89U^K-M M@\56Y]TB#[0R;SVC!_\+!MF+*/'5JHDFOP1Y=K%^BFXK1.M\:0%#;5I4(Z9. M4O( '1P?'5%!E9RQ2V=SZWK:B]^ BA./3^5\#AN@.!]=0:P,4Q] M MNH"?Y0#D1\DRCYM*6[K#%ZY^I"ZO"-)G=1U+AV2K%CTE>+-)5(K5A [@S; M;JN$O9H5QKEK\-4U)30$'2*&:*>6Q\GDF@.A<%=%;2=R!+PQ/L'VO-(FKR%^ M]T#:1Y' *(HLX+&"]4J.<>"A/; :EL?W0+><&O-1#(K2+H&<4TR!N$N&1M!3 M^G0(EUK5XZM+6DBY*V(1&GFRYGHM&!&L^URKBG(06B"[9;O##^O6&D#/F$:" MN9]V2=4#523-0\(*Y[.$O)2X.+\G*Z/K^ZZ16 ,L)T%E8.0N+EU[8&SQY!ZP MQ9LB-7"10_GI;FLJ.U4@JQ ':5?S8I%TO$1-6)Z2SQI=QWEXII2?FM@0#=#) M)_8J+^3[F4D!JZ5L&,\%GK9U5.4>::..R[O.18H,+>0$_)HLU3&MJ.VQ8I9E MAQS6=%)<9]GOG(1=5A3PB4?%(9L:F\B:7MU&2/MI$H%0'1-0ZTLU"[. @"BH M^ I_V#;*?9EH/4P[HZP#$SZW=KK3IOZ&=]_!!@P+0FT1S$/NQ[8/$, & )U\ MB2<1_WB,80""LKEGSKZ"I^='6Z/MNM(?O6 %[.@2O9 5SI$I1K#/G]X3!(M+ MW@SO(A!'32Y4R/[3EO-P3C:USNQ58*AQ:XE M48OX##\@O8&!\4XNT[))+L=>5[JH0C!I3=5G0G/QX/7T'H#%WK5H6BKF#_8* MUNCWP:UZ&4U.]'(!\6GPYE1ID"0,8R^&Y7HX)]G2F\M[N4'U71C5V"X9^O,FOX4S-M4U"R MVF(C7F+?]+ J= ]4:/[4&4]I+C6V*)I(K-)K)SE:34W=N2Z*$FE#X1R5T%Q3 M.+>0;IW@>6 ,_OP>,/BIYN9F _*G=[_V;,Q5]DK[[IC]UO$#$RW']T"TG,355B ]^M0N!+O3E< -QUEY6 3FKDZS%P$UIN#.76@K>B[G\U5X;V3#Y\]^N*([;9A]OD*OI1 MTZZX;7%X7Z]%^I(5+#7)-GG/HWU.""R:,1GG87+_)]A[OJ12$^QJ%;K(8 E% MV415:;X)-^UNG;U/9+28(=/JY'R%.;H-Z<1B"[.NJ9JB1T36=DF*166]^YF8 M*V4?6F._@_T-A@T'3QDV#(I2V\C1]#NV.)HF<&MS%Y+KI&/28WYC;W*KKK1: M*&[4Q#*3\VRZ?@$"I,ZH0^\&1>FZ0D@M?0%I MUO)C^I< ^!C:3)9ER!?\+=JV;ZJ@V.1FWT%0G$V-9C/O1[GX'4N)88N0T<:O M.8GX,V3ZY'+!>IUSHAJ 8XJ%DCF_L*+UKJ2M@%:LFF %M6>&@"1\=E7))LUV M!RH@$\$_F6,<\Y9OH]\CLLBK$)5Q]S\9JCQ&%DTG"CB\+WT5XG=^FV>FLK@T MT\H>O&Z?#XUY[ZY_[PUJL3SS7FR2?'GTFFIB[CK[BCUT6/"5A."!PR)F&!S[ M/;$[GO,MO8,>*PP+G7KM%PR1?GC>5$#A7,72SU5/%6;R$R51'"">YC.S>",@ MJ_*E+]+58['E04F!30[[6M=L"XP>8G8_XH.ESP0-_75]YAC\8R9UC@LN*^L[ M_LS+)LZ28%5T"58UME^<2^U;;@+YH>6@:OG%K_10U*5(SS6)H+)3Q^%_1-4; M8$^-.]U7DS4OFWM\\$3\0/W"E^+'\.E)618\#W P6J!VV72NUO7,+2<0?(878"@!.RP6@2*PQQAGI.7OT?82G1+>=G\6Q++M=? +2#]AOC-P4WS3[;H&GO:NZEE M7K]1)Z%&HQF%O5+0!!I/:X;77TPP*8HK*N$ ,>O&S*G/$HR$=B03%VR$$G*L M@4W09]NA9WU/>UF[)<]9]&AY;4 MW:&9S[HR@;R'>D(>2A0YWL?.#Y=FPIG[-D)'=]G!/7>= MU!U_] R3PEM1#]\3'#L^<6/$NN"-ZT2ORP3GCD?RHXJ0D[>M 4R@K'&B4!A_ M1]B#2\RNL)E2K@A84O,KO\:%-_M)P'D_H6_6Y^ML]H]/&E]"IKC;EJ&>X/F2 M?0/L2NRZV^HSKWM[.V\%H LCS';_7B7[&0FVR148M02K2QVX&^J#[;:Y>6^J M.5UZAWR R(&E5])MXG*48 I3 ^JF<+TW@H_N,WIWY2@.G77?0]@MLU\;*)34 MJ(ZE$SY K\((8B]("Q+N* %NF\5[KZCI:[VXY!:]6X?QU87P1FAF4+\$J3'/ MX(Z6IHHL8#0[,DYS3[=8.#:YD/\);]$AI$(VL-_9*+T$>7C^Y*)LL$M MJC"2D<'VR249Y'+SXNGVRYQ5Q%Y76@JU@SXD).:S\YW+MS^)4%7&N*S^CF9MMF+10/UI,J]=PZK M$:M\0GJ@C%QU119'"GPNE,\0(%<#]7B/DGGZ+*D8G]0%K,YG&72K9]V^YP8;IWFG1^JUVT5=^_#>T\*M?P+5/S M!PQ1-K"]_+4UU@E'@VITVUBE24]6B_3PM#&V:OI5_B789(,V_OVN[%Z/E1)^ M#14(8#V*WM =V76?*Q>/OT4:#Z]TJ?N?U-GU &WFY%AG($]&GB66JE\KTJ0MP47\.Q$CS.'W=_;1",HV#B9#B\X"!89SV=8PVUUM'-\&+P_KWX\,/@ M?&P60+%%GW6[,_45PB;)1/\\S&+;G@PO,U'@98<)S6,Z,I; MZEZ781R:;'X*3KC1SE!1>L%M;77\@VV:1#GMVPZ].@FG+7V9U_;W^?3 M ]Z^'PXNQ=G;G]Z=7/SK5K+B\]]]9>U-M)]A\@!!R1<$'/$I[*EP\'3_Y=?_ M;UT#>Y>QCM-E?XO/3;O 1Z\OY$S16M>=Y]_,M!"#7?'WJOAYU9]R-XL>ZC)7 M/@WGR]WU\8W6$EXU2B+Q;"HUOE(@KNQ4]"8$D)]-[<*MF7OC1-G)V=G@W7!P M+DXNX'_?7P[@K\.WM^UK>ZWX_D.@M07:W;XQ,%+T?T#8OB-ZNA["[HU,MH3_ MFY:S_/7_ U!+ P04 " #A8ZI64:<+*W\H 2\P $ &5X+3$P,W$Q M,C R,RYH=&WM/6MSVS:VW^^OP$UG6WN&EBW;>3G9SCBVN\U.FV1B]V;VTPY$ M0A(:BE#YL*+]]?<\ !"D*%E.DTK6IC.-;8D$P8/S?K[\W\NW%S?_>G]^>_7+ZPOQZ.#P\,/)Q>'AY^H+VYRF16ZU":3Z>'AU9M' MXM&X+*=GAX>SV:PW.^F9?'1X\_X0ESH]3(TI5"\IDT<_OL1/X%\EDQ__Y^7_ M'AR(2Q-7$Y65(LZ5+%4BJD)G(_$A4<5'<7!@K[HPTWFN1^-2'!\=GX@/)O^H M;R5_7^HR53^Z=5X>\M\O#^DA+P/24GTJ#V2J1]D9;1B^'1IX/?MU;%*3GWUW1/^]P&\. MAG*BT_G9#S=ZH@KQ1LW$>S.1V0]1 4 ^*%2NAWQAH?^CSOK'\'#Z<\8;.H5U M4ITIMT'>TO??]9\N;>B9.UWN1GE%:4>SK<4=];?><>IK;HY!OI5^7U/O''7EX-5?RV<_J4G M7O7$3Z: +0"7FDQE-M_Z31,/?7?U_J>W[W\]?W-Q):Y_/G]_)7Y[\_I&O'O_ M]A_OSW_=^G?8PY[WMUI/B)L5 (;U(3. P;!@/M.%$HD:ZLR>ALY$,99I*A2<$* 5X#,^>*)DAL:++ I@ M#;@.$>$$GAL><6\IJYG*)($%#E(U+,^.^YMC(_]>]S^4KV_D1!$+7:8XKKG. M#1IN?WJA+Z,(;#&+?^VP6<8?,S-+53)2Q(!D'*MI29C&C =LZ#C7 T!$.0#^ M(XIJ\#LP4$1+1%[+>%:)",>4@'#2"E$S$C-=CDU5BE0#=R5>P%0'W'.H=%GE MRJYUJS(41 &G*U2)EY5C)(AKV E^RB?;[T>B?TQW]D]:3X^ 3D?P/JDJ+%DK MI,K@114P5[BHJ%+@V+"V%%,Y)R9*;*I!?$*\%L,JIQ5""()H47I*,@M%V'2^ MG#'#)A?D)\C-8W'U1Z7+.5U02[J&<'N72H 772#D* C61^O@'/ YL"2<<8Z\'J&<*T T,3&9 MAM>U*I?31?10[)WOPUX'.8D)B_ .WX7)$>-;APL?[KW:;ZY3N(>20)GB,XG( MD. !;4H$#" _[%H1?MI]P.'A7UU$!S2V%^^WG@T@?(X@=#"DKY9H100* O% MJI+!D7,A#)91$AI %00 NW4J=RD*I%LO2+. .27Z9$FJ !.:K,84- ^7 >C"^>4)=HLQ4H MQ;A/\4<%AT4WR%R3M]-M%XZ:&%K4Q@E'[_P:N*4]?6O?9#+WNR+\D'FI8ST% M;&CI'8A)J)NGJE3I7-R:%)!'YLRO$M#8B0B .<)[UM0%+T4GCE+B*^MV]_2S M]3:UG6Z/Q#+!0J(9<>VOT8R7;&Z[8(7\(P(.Y0BO5K.+*>#R4 .A XH2\TV8 M]!L*@?T;Y#Z\S6M"3B!1P'@%Z&U8]$]SC93#S/"=U0 M7U@O2N;/TW+776E$'>A7_H^'^GLJR8I[A\^LRZJ3J^LMX90!CA3V]*:54@//M/7XB/:FY-0H4?6N?) MCH$-T!9P5N7LUX>=$I3(.05LA)"V 8<:LQO7!-#_H4##-U=CDZ+?E)'2")6- MB3*:5\J!3A'GR1V*1\:F>6V(VW-J[*%YV(DJ=,X>5(OB(L68,1(!.FDM'<4! M'>WJ83H/[3/OG474EU4Y-CFL5S3@ACX*^1$X5&VF' PD^DK)BU'L"(-X\_9# M)&X00B#HKCX_92 $W=X6B\3N=]N\A/2!Q\1,RZ+IH\YL$#!-S0Q=VEWR:X?R M;/I?V_F\"G6::0)/>T\?.U@M4;& A6P2>S#F"CPL8318F9I41ZM8Q8DX(%(L M1G0H;E1'M%ES"M)LHG4>XOS*%$J]3[K(;QE%H_%F6!AA'_BP;;@.A%R\D%3B M(EFDU(I(?0KMWCAJ)CN,UAJ@%6 U7.,&AWGRCS"HX;;(TB M1U94624XT44,6H$]=H")22D1 0#M-T0!$M@A?9HHY\S'>[S[G2)P"W$Y&Z]S MW.>="WW9(#W>ZU0<@"5%QM2N",7CA\2!KH9#U&O@V- 5OUE>A%E[RN\GP:@1 MX7Y C_#K/V5686RT'Y%AMR-(<_*@D 8@J-FXV#S&M!E>H5(2/&-3H!T%"*&3 M2J9@7(V-O61%)'[KG3(U)_W:0?\U]$[6'VJ)1MDG8!4Y:Q+I=4SY,1U!UB#$ M*I(J)]VT%?Z%W[5)(L[0 'L!CEIE"4L@M^+56R\%&WC@Y)7R@6 28WYK,TT" M#-94Z"$-)%0[IAUDY]$2I"]$H=Y",BU!EH)V=8&!\^:6_&8*FS>3J1C4%'QU M 59V1BCWA%F=OJ0F-F22")KMQME;U\0&9YNKJQC3^YO#3:<])XA'+K$1LTN MD'*S:C( C@'J1^#!8=>;S8;;>D'1G46S>9EA&6"0S4-)F $#!JER11]U4Z:[ M<]'PY)/,U13L"LH')A,0CA__X"IELG5BA0IF-26#=V;X7#MXW8W>\ZVK ?$8)WI/C$Y&Z)S[T%HY<-6R\\<] @ER7] UB5) M[<)G=DT[:ZM:M@-@U;+,LB^:%TM^!(R(P*ZFJ(/"]V%V;).],.K5F;),'%.I M._![7Z S;*12,R-]_=_KT!>E_[L,E@BI^R>>U66K"L+>D@P\Q1+6WHKQ3*HOGW_W2&MG;> MV'],;*5$[W!:P,'__=')HU8QWMF1Z--5*Y,P_3,."0Y=R9G;D&CYL V^QP_5 MX+M8+*S;/KV9_5RE*66ZH#FTE%:;7E&(4!=D%H><>@5?M>X0P5%JZ[88KZNR6_?TV^&)#O>_?OKZPI@$J=_>$]*KD MXCH7][X5(YL\[BLX(8HAO5)#E.JO;: D$C?R$^J*EVC@Q)K=8 BRES5?;5I&+9(ZY>O;ZY//=J^4IG6X?(_"HGLKWPQ\)-E/>W3"9[E,:T- $M M!J4!Z;#."\2[]EO^/SB7G]0@Y\#%*4QZ2AZ'FHYMW,$0^ M'RUD4U/&;F!>K0 27)F;:C0&LHH5,=<3_N;Q@SH!IM[-0Y_3OUP^9"3&9H9% MX!$+H?4+R[R/ "V).I$-Q==]1)]-D',^'U?SA0]7<-&B#PD]#9_0@52D\]!] MQ'9'/-;P-J'A =BC"DS'\UBW1+\@:J]?&@ZS&,[)+L.*?ZZ;O[O@?T MDL+XND#O4LR9#9>Z*,'DKO"B;]&!78P.G*/EQX[)+.DR"UQ4LBOJ&*-1/42? MB)CEVCO\K(L3.!'G,A%7FTY!&R6+?@7+H&@I<8>)A'V!:M7M#0IJ_IE))=@! MPWLA:W>H=P%%KF!6%(:R>NNP94+R5T'M)>FXK7\@]%2!YXS M' M5EJX*F_S7>HF@;@=6;+@=Y#_&]G,QQSYP>C)1"?K;0 H'N:MW$27JTY)3 MAWQ SQ>IU\\//9CHV(<+,F-S&%+)Y"\S\:O, 9/[C[_* 3[MH9-KC2-<<"66 M9GIV ,RJPXF'UCL++3 G-BF>T$%!N82-4]UZA3IH1K!Y5;HG=H0%QMO$ HD# M=L5&6,HNC9"T>EM0-ZH+X!+4"XR8F;2L%(.N6QT[JYABM_-X([!+NJ16D M'7MN-E@(SK13;'VT*5%@JR2?93=QN[(2\$P!3X1W3E=8=EV/-UG*#L>,^G[3 M+B3>SEG;4W19,92)4=QC;R$L0F\ET;-;H7:4NLXZV T*CGQANVCQ<5)8@K$> MP+);V,AJ)YGS&>#7=:(J"#&/$#$CA)>Q+>^MR?4(,Z+L##1=?#/+Y6C4X0NVP7^ GIU6>@KKPS0,?/ MQNS!2\_HV_- M5KH*GCXD5\$E9AN#PK/A>-%*71WK6;!O4@X*-G)B(I3$;=SF\.8V"64A$!32 MX(Y@V+.'A&&6R0 O"'@VG,MU*GD2ZKA N+ULO#14._J]86\BPK6?D3= M'S7LP?C>CKB)1$EX#^IEAM*=+%^%9$)G]=/5S@#*%=R4AMBM M]WV&BO=PM+FO1OY#>P$K.,P%HK!)+#IQ4*Y1DUC"LLB1<0@,UUD3F!_1=+LJ MI4'=4MP$!8^XA0M9<9:;:R$8XP?1%VAHN)0-?/WNAJR$V\L1J[$=^W_+ _JQH\?T@:UGM53$'P<8&C M5G=T#]ZLQM51O5^7>8.XSLJ:ORSK?ER'P.^J*,)8 O2 ,5/;NMLS[0Z>S9U X<%.LEHI'\3FW7(J7YXMO5[MO.U30Y$M?%I8 M66F_LRHA?;NJ2@PAW'&[+PIO%-/G#=; M8:_N>[VD@&:=JOZP@M_7[XLWV)K7Z2TKGNR?DVH27DZ^2TZ_II3XL-L Q0WA MM$<&E)RA1'A(W]8]Z,:]*M'<2UL/XQTQ7_M'V\-=CWO'=W#7&_D)W6.%^J/" MAAT%:9X?X$0QAP86^I93L8LY%:_)B$*&D3$-+@R&:)L+=U;2$(-,E!V^,&@. M4<$_,+A38KY$KHN/R)""02B=D@.+M6PLO$Z!K6KA6U9L(@,70^8AS9$&J'(#_ETT2C.S01#/T%)F'0M]CAW M@SP;[E9_/3\ ):N5(6S,E#@:=LBL>8M#L,Y[O?'P*V&%-;7=_"AR[8,H:F#$ MLR_:@^1;JDJSH"[L'%3/;G!NZHQ[04U8A4!?%\ U$D,%^(0*#!NG\%5J8IFZ M:TN002XO*M1(P0C.#8[YX3S[6O]L^H+"H2_8E&*4P5NVG =X&U8[6*RYPW7G MW2\NT]#>4H?#&J&O]E22EOY9\\B )91 G!4^NASD&IX'Y"O"AMQVHBL?8U809 M=B2HP13#RAP[+"/M$/Y6"4&GM >FDAZ,<;E2,L@?N(Y<*@. CLMN3^?$JD: 3)A78,8 M5 5V1RN"SN?<-M8D) 6:(QIB@DNY!#P M#Z,0>&Z&\#N\"QD(I+RQJ[KA0Z"@$["ZL9[:W#*XD9S>SCNJ/FE60F/ ,S S M;'OV.$65KK 6.]:ZN;:SN0WK>G':)E]5Y& ]V=2@R MJ-+$ODSH6\&\\3 ,';J%R95KAE^Z>W7_Z-E78 KKS87:T]O#%$Y[3YYW<@6? M1I90$_=TSC,W_5\J&TG.42*MT6%40$^8KJIA_Y)G(\!5N!<\=W\UUJ)4<=G= M.S*;N^$%(3[>F1(P0X2Q"4&T1T(_S5$8U(/! ,-%W?=$+@:AGQUTPKT MJ!B 1.PL"4?V[%-4!@#.#P6>U+D\OP6PO\K0OB;Y4Q;Q)KZ/5;#JCKF=X8,N2[%;@ADM\V.O;@%%3?F)0_!9S M+=BQ@.AB6397\])(18S_!#F<@"\@HR3Q>M'O@ZF!&;0HIX[=$'%??-1HB[Q> MHE['6_3$KP:4L:Y4T#44!GHDV?G#H6KHAGL=;LZ_5JO8=XL! \'L8^PC/I-! M2NC:*[FR+O8K\6I!.-"FW%D'X/U7;ZO0$@NW9%&*_K$=2&XP?_1K#&C:+ ^Y MW286\IDZLRPX5(MJ)(D+8@*VI-Z>.+GRF1N0MEO/10G8 )OK(0/ -HA _P?( M:X4< (WNB@=E"P.6G.E0UQ70<8"Z8-/1R4).;/0RQ53=T8+7MO Y78[H7:X# M)[$KC +%7*:_Z*QM.V:8G=2^&?;FEH_(O;-L--2ZSP019N.DZ"$[T^#O@I_.@^[CE"C$YT5D2!)!P;\^]DL.6 MV>-\@F24Q@(^7.* B6&3PL_&TZ5H+$(+ M#&V*87USGGGMK.LLZD;B-92!RN)^Y-2#\TN/!6941RK8%-'814 ME^9\LJ$Z) ]4T'RC6\((AF8[# .KHM7)'C"+"/;9]M4]'3FJM_4\7(]"(YR" M 9N>X)+*SO*MW^"+\_A-1DFV:)S2W5&2B]#-_+IV)A.%W)!O^II]TYMO*+I2 MX@2>7!=\=/V'[G:S-;SHB2QEX,GVJS1:AGJ7.5R/O0;,E)3_*7,<&K92(*$ MZGZD1D,1N<;H%_;!X?61=7Z%.A)FQ1G>"5>\LK<9)%W&@@^VA^MFU1!N8Z2;NN 7ER;B"R?M4:>W509=FS':?*M93P\516",U M='67S=7-+*MY6-B;JC4_N-FV*FC.0383GDH^\5Y8#,E$XG>CL< +-E[E*)&* MPM@6J5%CXKF/)=>!CGPD,]L]->)"1=)<%,?T,:4R<.ZV#S8PQN#X03 !?E.P M9[[>L>*K-V-6=3C("03,:QN9EE@DK:0TC<6\6P"OJ#+]1^5K/]>P'WT6 2PP M@J/(237!:)(O+D%'!TC/N3LQ=E2+MO,;1&R5EE[2-9&@%H,D9IT8[&)*-1/B MM(A 1<5XTN?AJDLP<&6$W803-J"R+8Q;D,23F*@)-IQ(@(4,C/F(IR>GQ,:( M2[188:K*TH4%&63,?=Q(Q-A,-8M[#&M9&.<*_9'.V+/&X$S.F7_Z\[U/W"YR M?3B[,ARY-MK6Z#+!24(YO ]_T(O:&9+6];-P'09!KB[9$T M)_9!=+XJ*C5QW1+?-74/BF=GL *VLK 2Y%M$^RM%M#?$NW(K)-95$U$+HK , M.]13.2.CX(\*S(-NVOTAK%;P;BY46=)YW92EQ1E:GB>7G=P_V1OLMYV8O:_= MTO.>8S*6JWVM'+2 1.]?Y]?= >.N1A=ZT?:PE@?EK9'RAJ"%,\4=AR?7?2"> M\UM?XHY(]"T,H9RSKC\EBY[=%-3%AJAT)CE7409V)!VG/\#.\VO(;U<#!(>Y MT.0SQ"$[+9KM<315M*T70L2RCZ=JTX8G_I7UGEG7UL*PZ?;3E@DS5W^H,K'7 M/[)A^P0X>Y -F82Y]KZH \>:T1YYRY'HJD %NFDSH[K!H/-I^RHB[^[ _@)! M"_S"-X-!6PJ].[#XL,OR[RH6"4HL"_U)[#W9#P/5S;XZ89=&[N95.(I>4 H8 MC#:P,90ZK;@)%C%D=K:OY,JU;ZY@+:*>"XE \)W80U?&NGVTF\4:[HDH;0JE M/E*Z+B@A/JQ195SYR^J($"7#7':Q#_GDAQQX; M1%G.?EKALU%W,LNVLKQ::;N?@&SVL&]7#*W*0@<>0NHZES;9TA0,VEDP.JJC M2AGR7Q$HO-!88@P$S,1&O."&1'/;,UE8[SFUXW>M0U=1_1>&!KD*!;RK3)W: MHDN1&,5?X2 I'(/8> B]-B)CS:#ZL/ M/2^U)2R8$"9GD1CAISS,+E>C*G7U'I2 K3[9)LZI+>>PY=X<8,(N<$[48F+I M0BG*+[U7.'@#"P/%U2<55V1NUEXH\8YN(\O#AB7JEFG4XG((O\.[[T>===PD MO1(WJ;2(Z"5YZ4>C#U5:>^#+HY M0J6!.=S?MNZ@US(@7.V,$\8$)!;#8>P23ZXT/>98I/M1-C%_5U>.=R@G7#S3 M;FDPIAA:@;&6PI=3)ES$ZF"#[QNYXB7234/UC#/)B'S"(MBF:EM3A\.@B,?W MQG)*Y4 !#!M9/$$I>4.(.LA\=;SJ@95.V1,,#1<:#=Z:R8;)TD[NMI(P#%(K M)DZ,(-O^G\R=,)-E@*6JCEDE)JXF7$D!SVK4%;= N J"!(L6%H9P(\+HZI%@ M(R %G0]JH39^.ZSH*0V4]BR26K_M3##B]"$%(\X+##(API!F^ 88E__D6PAB M5T,039ED0*K-%@7%U_+2P&')Q>D0WIF[SS MOFRB(U?=(W^CBC+>,O&N_%93DT3.CF![+K0"6_'1%9T%70]!W^? /['P?'RT ML&+/38K@2Q<<%]9,]^W%=)Z0X\7UK(BIM4#;G;HC%+&%+KR;%9UP&IFXA4D3 M3)9 #2B)/#I&8CR?HBC#/-@D\LW+<@[:XX1[0P'\H=B3V]S.[,9N?./MS/9= MZ@CW1XG"G)V![69DU6K0V IN;U_$SN45^OR8&&T<=7&2.-"F>VMF 4OP /;3 M"!;6+K26&\-U+ZF9RI(5,\R1Q=UB6G=D-7CRY%@GHT_J"7L!>E]E]ZJ?T5)[ M1]2NQP])[7H-AQ'3,(A7-HL0V]1L>@Z+ZZJ^3""Z62QU+TLL+',#X(<+\SO# M5A>![_'<91["Q^BQUT--8Z#\C R?L^H[ZP1?8B-\U]DII>(+KE+KG,L\=%EI MF$[_QK8,LNX+%R_A 0 =-.+WR>8.JBVE2RBHK?RFE4X[)\T@S]%*9( .[; " MGRRPG.B^Q>MWHXE\?XN&1J]1"4 N#9)RU$UPXWWB*6Y6#RMCUTLQ3;$TGO]P M,Z#(T^ *:>F6.^986.NDT4;1QM&".:\F[#2Q;.(Q+,H36[S!0!W:I[E-Q>6& MZFRO.$:3Z+1R[@^5I=@B+)S0;IV&\%DS8+R MG) =@K0?>ERS,W'0NGVQ92PV?:OGI<2R4$LGR+5BVRLL*[@W29=WQ?>J56,G M3_;B?<'YQE]TW.@F^<0638R[FT_\@SRC* %_04?I/QL9=TA9_Z>R:K-3)G;$ M3-Y&Q]%"@2K0,?O*77EAN[]E!V4[>\TJ7,!Q9PIKBXGEJ2PKYNFMS+2L+9F1 M]>;8TDK7IU-GP!Q39N%8L))J.](#GK K6+"%SI+0>$96#.>.*<6W!L,L^(.X,\D5>"R M%/[=U8>0ZA#>F9F9S214G)SE$VOLJ:5R;OM3WR(_YUB./UG6Y)$C:;5"ILCVMF M7D!G6,+K6@UL!^/:%8I*MHFBK,!;J' -#48:"W0'55D\8=XGN+"6?%[M<2W] MIR#QF^D7'>R]F>SH@W;&9]T8ZCT-^)*-.+!'+19$H5(5VP&5U<1-&04#5A." M88I/!HQ"*QHTD..L%JESJBAD&77\3/S6N^Y=] 1N]^D+T3\].HW$Z3%LJ2.3X^/0+O>3+>RL"]O0'ZLQNQ)A,4JH)X,J+UJY?G9^F^LN!"@-^X// M788*%=YCSB"\#-Q-P)A2I_)6U2@@YQ(HKG7=]O)/]59W%??D !I?!!'HEE7JWV^RC6XQY5QZ6V;G5\E;7!/^- M=?3L"/YNT531N_'W&DL+;>>B+?(%^]9/AGM/34R-PG=VTT*GHTH=1NKL%O $ MAV&@7B53%GB-%D^X*EU$-71TE6^VT6[M1*Y;/_HZV$L=.0N:(2!%D#>#$P0T M$!]GO+)-MR,H?_R@1CW^5&4;G^C(E2?->@@[+\_GR[K,59L'[&<>U .GFI.O M_:PGVR0%LU94V=4D MTV/N9)"=%U^BQ-2PV&RYAUIJ[PG!:G$Y?RH\H:&;=W MD.WB !>78RU MA2^%/RCSA)6I"@1MRW07-R6]%&%54DN!]G%C G&!9>_^;E! MP3@).)?&I)UF!HF,Z;'42<;IXK896CVHW)_"TJ2S**P']T<(X!O12P<-??@2 M^_+U!$9WOMPXRK3[/>\*4WE03 MD?!]EV<<2($7A'[FTU5\H<\-R&-M?!N^] M;#)=3U"2)9]0;,MEI,,T=T[.W L;HS&[(.Z!/E92BI%%4<(U6(VY)M>(G439 M/E?;C*RC7AP9D.W.3FDBS*_H8#%%+6?-&Z1EN.?" YN%-KSQK04.GS8ZUMOG M$&"&J[WYEMWU&=E=&VB]TEU)RZ[8Q7]?OQ$?7M^\N;J^%A]^OGI_]?:G3?+( MR-;;8[]NKHD88S(FE8EQ44&@2#,W2B2+:!Q2Y=LV U&IU,R @KMXKE\/.ZH: MTJUQ\E!&+E#J."G)[VC+[7U#1MN7VCI_D.KU2+LPL/7@VO0JL@I*,U*VVLPK M#?@4GZPE)[;%U$.@K\.!2>;P8UQ.TA__'U!+ P04 " #A8ZI6I]=\000( M #F)0 $ &5X+3,Q,7$Q,C R,RYH=&WM6FUOVS@2_GZ_@NO@N@G@%\DO M:6*G =HDB^M=M^UV[#^\O6*/5Z7SM770ZE]>7[&_7/W]@ M_784LVO#"RN=U 57G<[5QP9K9,Z5PTYG-INU9[VV-I/.]9<.#=7O**TMM(43 MC?,S>H)7X.+\+V<_M%KL4J=5#H5CJ0'N0+#*RF+"O@JP-ZS5JJ4N=#DW)%O/S,R&G3(HW#7G:?7W<'0Q. MCB%.^\-/(9='*@.8?]HY+-YI) MX;)A'$5_;6S(.;AU+:[DI!AZ;;%UK-&VNCG52IOA0>1_1M32&O-KAEP8WC*%G 0KNX2RI=W68R MD8[UXG9\UB'YA4W;EG$S0>.<+H?Q"0Z^9D&*W@3S1"9<@'%R+%-.(&-5(<"P M7R&ENU<'\7$TZD5=IL?,9;!IX?W1>%);?N4FX078UJ=;!7/V-G6D>3>*NCM5 M7PO+:?G'PZA_K][OF^SO.BO83VWV#VY!-5GJHS)'KW/WZF!P,MK3@%')A0#X[$N!9NV"+H/9&1<7MAPY\_^Z9;XJ@](#>\9QF? C,PE3!#0G29 MM.R7BAM$L)JS+U!J@PC"N&B3LSAJ_4)P^M!^U\8G%H60+?.2%W.,T.D+B%#W MV47H':X&01'(Y^RFT#,%8@+-$"@3PB,TJE!H3&LX Y<%PW@@C3E3 5J B<[G M/(P;9SG>&A S(I56822DISZ3+T$!;(A'3 M[#1NB:II@69.L9M@R7S=#2\$@;WO!X' QK+ &!-<5C%M(OQ0')O-6KLLQL@@ M(ACT1BV;:UBS"V6VM'TA<.L_.[A= M;\3FU<%)-WX]LC6@ZJ* "$*/L60#,V[ 0P1#+A,%%$H&B,M$29M1 M#Q++D1^)(^E>2)LJ;2OL1\QIM I8*8U.0>!CRPX1&@(0:R'^5[=IQHL)^+KJ M2Z50(N[Q5CPXA*!%/!!>XWCDGX6'DNK!(B"59F'$7VL #H BC?:>;KR<+MP= M>6OOPAHE*+WO73T-'H3JTQ6(A_R(78+% AM]X]/(P^%K4H9+>67W[T*I)@$, M0CU32%ZZ,C@ 4L)46D\T* 6%'X?*TQ5%K=.< <5]5.OLM8I,LZ9 :I1(5ZB+ MU4H*OR>U56*ED-Q(,D"&'.N)MZ"1*DMYSZ\&ZY.DIR7<]*)"N!OUG4JLWV1: M*4YLBF9Y)5;Y$WN$;+Q>1.!_"9 @$A[V![$WP3UKU"1W4;/W8MP"S_[+>&\, M(>ZF4A TN-4%)];B%F%%A1/AA1NQB!VB2?)$*NGFE,'NFY:0[,/L(QA N"&Z M5GAYT_IL$Q/>S!+N+V_FO#HP([("C;4+(FN MW&X-]N$^OI0&*LC&#Y?0+%F4>A[P$#SACT$PN#3!=Q]@@7P0?+<= ]HVU0G7 MM]P;Z$>P &4&G::5(4^OT? ]H^:XF<;G='2$8]D4!_HM[,+9X8XN8X0,KL\[ MTK7B6.Z"W_'19K"HEGH=!:TR;I'S4=S7%?=P.JWO[=D6_^ MSRYZ%*R>=QT]>#EUM#\1$HM%TER1 G'4.E!7_$!0>T1BW2J(EMIQ+(J<-G:9 MR_P#'#+/I7, O\/ B<9L2>U"HGY^D$.$,Q*>)4+%OU2:+=8@_%9)5-^OMZKP M9[WVZ,44RF]QVTS%AS_51A5H3Y%*P$#4>6A9L,Z WU!B"XP(X6EC2R$PIUL8-=,)Y8DS1#=K.8VFR58S30*=Z8FK[O M/6QX.9D+*]FWF*#&!I=$$YT,?B%CF/S!61W/9N!W64RUF@*1?,$G]?F?J=<^ MY*72<\#66:;#:N<;:,'H?I,,V-[R^3=VW>E>G@OOO>&@N9>JD/(Q9[J<4<3RM:&_)0GVYY M2[W67Z(29=V%9$#CG\]9'O.7R$J;.?5A7SPON[9>LJ)=035!.RZ$)U^]>T8$"XPG M6H8?>1Z6X?^=_<<[^YJ^" K>_FRPE*:RT5>I%YF$,;NZA;2BTQSV*>R[MJ/0 M\=7&5M5T?I90XXXJ=OV+H5*'[Z6&X01Z"CN_(:I+F6C5A2=6J\IM=]FIQ,8U M? 'EO\4Z_R]02P,$% @ X6.J5M*7I7D7" 7R< ! !E>"TS,3)Q M,3(P,C,N:'1M[5IM;]LX$OY^OX+KX+H)X!?)=IK$20.T2197H&_;9J^X3P=* M'%E$*%%+4G9\OWYG2/DEL;-Q<-TF#;9 W4H<#N?EX3-#22<_G7\\N_S/IPN6 MNT*Q3[^]>??VC+4ZO=[7P5FO=WYYSOYU^?X=&W:CF%T:7EKII"ZYZO4N/K18 M*W>N&O5ZT^FT.QUTM1GW+C_W2-6PI[2VT!5.M$Y/Z [^ A>G_SCYJ=-AYSJM M"R@=2PUP!X+55I9C]E6 O6*=3B-UIJN9D>/M>1^_X"G<3SH#U\>#:.,'QY&B8@.^""!1/0' M+_\;HY$]% ]SK)LI>-4J9-G)@=8?#5Y6[G@JA\_+EM,<(="T9F M0=#*_P&NB(O[RVFPY@#U*%G"W+JX3R9=7.-FC,XY M78WB0U2^XD&*T03S2"Z<@7$RDRDGD+&Z%%TCIZL5._#(Z'D1]IC/F9L/*HO7[A)> FV\_%:P8R]3AU9WH^B_IVFKZ3EJ/KK833<:/?;-OLJE9*\ M8.^[[#+G"E6V6>I3,\/0<_=B9__P>$LOCBLN!.[MCH*LV4<^0Q*36[I1A_#W M2)[&W;D/WW_UFV&)H^X^A>$MR_D$F(&)A"FRHLNE9;_6W"",U8Q]ADH;A%') M?M&F8''4^94P]:[[IHMW+ HA9185+V>8H:-GD*'^D\O0&VXQ+YB!8L:N2CU5 M(,;0#HDR(3U"HPFEQMJ&*W!9,LP'"DW3 MV^26R31*U0 '&H$2Q^.>OM2;G-6:;TU,Y! M:F LK<,.TS%.-X/=:&5[!6MV;LR:M<\$;L,G![?+&[EYL7/8CP^.;0.HIBD@ M@M 9]FU@=NV>3]Q;Q@UXB&#*9:* 4LD <9DH:7.:06(%\B-Q)%T+:5.E;8WS MB#F-5@$KE=$I"+QMV2Y"0P!B+>3_XCK->3D&WUQ]KA5*Q />B?=W(5@1[PMO M<7SL[X6;DIK",B"55F'$7RL #H BB[9>+ELL%Z[VO+>W88T25-ZW[I[V[X7J MXW6)NWR/G8/%+AMCX\O(_>EK4X5+>6VWGT*E)@%,0K-2*%ZZ-J@ *6$BK2<: ME(+2ZZ'V=$E1JS1G0'&?U:9Z+3/3;BB0!B72%=IBM9+"'TQMG5@I)#>2')"A MQGKB+4E3;:GN^=U@?9'TM(0G7S0(CZ1^4H7]FTQKQ8E-T2UOQ+)^XHQ0C5>; M"/Q? B2(A(?S06Q-<$\:-'*\;AZK:5(@@ZRMN MFFHCO &^!1M#B854(9!P!"I"*(E@>QG @DB6%3+3\X!+NL'8[H(_\=%AL*P7=NT% MJW)N%S6+=K:'& A/>3X>#1W-\%QW!:HY_MV2;__?(7H0K)YV'[W_?/IH_T1( MS#=)>TD*Q%&K0%WR T'M 85UK2%:6,>Q*7+:V$4M\S=095%(YP#^A($3C=62 MQH5$^[R2780S$IXE0L5_J36;[T'XO99HOM]O=>D?^-J]9],HO\9C,S4?_M$V MFD!GBE0")J*I0XN&=0K\B@I+*/Z^M/BVQ3\;FA^A'Y3>IK<,I[$-/,(%3K2P MH)$[H= T.S@%\XD]23M4-XNES=8%9@.#XIUIZ'OCPX;G4[FPDWV-!2HSN"7: M&&3P&QG3Y!^<-?EL!WZ7Y42K"1#)EWS_WBDA.'EN[MN%-[?.8-_Q7SE9KCKAWI.K(\- MNX/HZ,[1J!O?.?9G6N/];O]@^,W5#@^ZP\'A-U?;/^SN'VP7A)Z/KYD+S!'@ M2R%-Q-3:BI>O6H/67*;9ZJ.(Q5YJOL;CBC:.W#>G7UW3K-4WJ419MR$9T/C] M.MZ%/5[(VY;[H9'W\);IJ600BAXI.WX@1=A._X=].\7 M]$OZ3"A$_0N4$KNP?^-QBWTRV&8+_R'1WX'_2P)/)X.S7$+&?EFTIA_#67<] MYCW?X:UUJJ<7)8_52KTN%#M5%XZC^!.S_>:MK':#F%)U:KVJU/N=.( M&[_ATS/_$=SI'U!+ P04 " #A8ZI6U/;WUQP% #M' $ &5X+3,R M,'$Q,C R,RYH=&WM65M3VT84?N^O.#'37&;0S1=LRXYG'-M,: $3K)3VJ;.6 M5F@G*ZVZ6F/<7]^S*POB$#?0"8'.F&$\2.?LN7SGH@^K_V(\'05_G$T@42F' MLX_OCH]&4+,.6B&KM:V%H>" M"^GON>:GIR563%+&5_ZK@*6T@%.ZA'.1DNS5?H$(6P65+"X5"_8W18_HW%PN MRVC::(>SC%;1>74=TN0Z87.FH%&WW;ZC]:N<[F9&Y"4FIT3N=]'V9PF$"":5 M3Y3!:'(>'!T>C8;!!%OQ?/9Q>!I , 6O Q_MF3VR8389!4?34_ :+7_ '#4: E==>M;R*U%:-' M1Z3Y542.,@A%EM%03QTLF4I )10^+(C$,O$5G--<2 4BAF/[G0V'HL#[.#AI M3K(5O-;*+_!(<@"6Q)=A50J%J\@7\AB0; *2FBO&I,R/%UI MM&FB(7).,EI8TVM.5S ,#3BZTB@FZ*35Z6VM>4ZB"/>0Q6F,,^]6H\$PEDSY MEM=YLD;P["KH'^^]MP&+Y]HM#4. 8*^[+UYP;,40&XSK+KCI#$G_6C!)]8(N M=!76-G.^Q_6+WZLZP>RW#L M4V)*@EM&$::'C>E99<5-;0G3>R:7M-!EW-=RPCG@.8R&<"QRD6-=BW)L8Y:1 M+-3WT6)DR(+9"JBUX&47"%PRQFE157Z]FNP[E2WQPL>Y'#Q0ILB90I=Z?T3$KY^1IJN*L6W MG,!V2UZ@,!P559[78MN('!7=E37MAMO=*G5M;ZOLWZQZ+;O>;GYWLTW/;G6W MB_^KV4;3;M;;]S+K&'QEI5#UN>EI?1!+6V OO:TU:E^L!=\%SVA5/IY6=9W( MM\[4\VM]ZG.*IN?XRY8LN_'';S?3\V-\UVKS"?\(M(D&S:\"LI M*-_ ZYY3\.2C>\]RI"R*.'VB,3PE:3F&.[Q_"-Z!_L:A!/P,Z0W3+--PG5'" M:(P<%OFL8E<4IG',\%^8NX5P#.&XPVF^6R+=>Y'3/!YI7DX!]02P,$% @ X6.J5LJQ@M+,B0$ -!83 !$ !F MR]:5=;2;(N_/W\"KV<\]Y;M18;YSRXJK@+6YC& MUY)LD$V++UXY@D #+0D,_/H;N25A!F%C6T*#MZO;EK2GW!D13SX1F1GQ]_^Y M;+=*%Z'7;W8[_ZSA#;16^C^;?_]_6?;O5WOO2N6N.V^'SJ#TNA?,(/C2E^;@ MN'3@0_^T%'O==NF@VSMM7I@LRZ]YW3V[ZC6/C@@ED8%Y*UT6/8D9"SID5D6=6<*"0!01HM2Z?ZFT MXA9%+[P7C(6HF.*<8HJUL(9YGAY[/("W@S?L]%]>VE[+-_]9.QX,SEZ^>)&^ M;G1[1R\(0N+%\.#:^-16LW-Z<^:7+U\VOM#\7*RU?I$?'9_JNN>=0>_J[FW[ MP6T<=2]>C ["(P@97W#>SXZ,.;NY()J^S>\].G#G9!^:D^\,!^ZZ-8,NOW/!6 3?ZEG,,]#MK_>Y[#+X8]_OQC>VG;]U>;?OGE1Z@^N6N&?-=_LG[7,U&?B[G M3<$(9U]ETS'M].C0?+D%V.03/KUIF:.U4M/#+3W]=&7+W8MW9.^B02OG_F3[ MXG!'G]1.CGBM_*E9V3D\K;;W3JLG']#A08-5RT>X6J]<5JZW>;7]]KBZ\P&_ MH]56X[K+:O4CW#AYU3XL'YX>EANHNO.I72M_8-7ZQ^L*7%.K'S8;=;C7)X7> MD<.KQH$3U>LW[=K.-CVLOSTY/'ES6BT[6JNW3FH''TCCX".OED^O*]='I%)N M7/B=-TV[\U%4VM7F8?DCKI4;5U6R3> :Z>5ZP8\!ZYK-WB5?!Q= M\PF>Q3N']>Y5@[P]A?:PZLDN;=2AC=>'T,:/5_ >U]43>*?Z*=SKE!Y^4E?O MZMN#RCZZA'^OX/?KRI?/A"$B([(9=+[/&/+OB?AZ@H@]BP(9'@#M0\B8TB*S+M , M4^-L<%(BPM@LTU:Y3"?2 MQ@(GF6+ HSFST@J?2#1:VT3PAW*B"']&*;\^[_7N /5VQY?!52@$_3U!DTE0 MC:7CR)N,:@>N#X@UTT&K3!L+XD'>T0AFG %IS^@/V7*(E(!$X3_,F*=""QXY M=E02(2Q%[O/N?>&._)&7>^$B=,[#'C#49J?9.0*HSJDN$-6:;36/NP?'H%FL/>T;WC1ONR56OO M@C0_'1_N'!X?MC]>'=8_7!Z"1E3+U?9A>QL=MG>_'):W<;6\C<;7P+/.#\E' MT3@Y;%MM^T03M;U?*;T\;!+JJ0P_3L-K3_M%+_B"KUO3C2DEQ;*B>6Z\AF<8,R00)E"QF:,<)=9IDR6'*6H'#(P'JQM/E22%W>9>2_$ ;L0G^" M0Y&TG+[O@.&Y=]#[=X MP^=_?>BH#?WN>2__EOMS+T>J.U2,GP&H\8U"/@:-OS5]^AZ;H5?*&Q0F.G:O M=__O72R]?_'F^*>[=S_+]7S\#5RYWB !84ZL,F@W.FHB?UFF/+*$N4#BNH>\[&/4 MN,_DYD:C(T_K@?-.<_CZ_6,#:G7S9NU@^N>]L#D20'YP?(OQL?'W=(^)/>J% M$*!=(DI%F>9*"4*EQ_WRS_< MFP$[XKSG4F+.L(]&2\Z$Y0(SIWU0>6\23!:M-\EX]/W5WH2!<3\IXLWK^>8% M-.OVJ3EJFT&W]Y,=_^#Z]&,Y=+HP3$^Z[5/-X\XM7MQM_??D#O(E7,1(L,>, MQJBQP$1KC:E0&F$R!SP?O78X2A[I\*N'AUV>M9JN.:B$MH5'^"8<'8;)^[W! MR_>]KC]W@UIO/_0NFBYL738!;L:L:71T>.G?+R;>\::K;AZ\%.,*PUI9IZ1W M03*!C&'2&6405H(BX64N/S*6'RGD][C\R-/E1Z8F/\VLL59[CW!D@J1XD%!. M@A$*HSV**V%_HQ]7T?YX($#\(_/& L43T1@ML! 2## ( -"5L+_GD=]<[$^! M6\]]#(9%\,8Y2#%@0TR0,4BE@IZ#_):BWPP&Y'* 5E1'!I0;1B#X2%6P'%"* MV)POXL7CB_A7^.*='I"$&&19]!I@&Q1'&RX0BYHQSC5G=,B8%T1A[C#F7_ _ M[O0 X0AYPS42TC!#M<42?A'.!4XD0.#S^0P_"GDWP#8 ]4_7;/_G/(7'N^VS M;@>^]N_B'_S>[G;V!UUW.GT,G)8S*Q2=MU9B; 6&OU=& M-%O>-U-FZ;?[;PV9\V!:2V)F!02("4C+2 G\\*8P*17P3@DB42"EOWET0^'E'EF Y((L2XC=KI!/LV>".)Y7)EY%/OY7&%JQSC MAG"W)"("NAV1!;A#5C'*D,%">1.HHAAH'1[783=CNNV9T#09R*RP PG(HU#/+(H(P >EXP$'7G$QH>5$5FUVTDOWNNV M6@!ZN] %O="?01AC)E(2FJ8XA,4:V&S$SJ)HI1;>8\.5MWX)(A,+-TC-/UXA M0XC!,05FYAGRUJA N50 H9$%^+AZ4GTN(YR_;*,C&AFA>$": A,6>6 M,QZ=6CW9SF5,G+^@J3#@QUEE$'AW.C*0,7'&>*0B"-OI%13T<[EY\Q>NQ)YS M$H+T!#&/N48:G' MF+#&6 'R149AT)/&6C BY@1\"9H2MC)B>M9PV?3D(Q43@'+"1AV8LL0H@;BB MVAFM+=%V9>3SW.&RZ8F((L(-45(;SAEU5#'JJ;3<8A+3 I*5$=&\PV53%%GD M08#YA, ,LUH#TDF*O*0Q*.3(X]9I-$@LP3+?!=N MD)K_(E9PHIRT(@KPKQB#,86>(!/[U%1CN'#5$6?@[1\941S7SV M#DPMX"PE4QAQ0K!@/EH%A!7NKPECV 3J5D9,S[QW8&J3H3*D@',D3B(0% Q8 M&$N+J93.RB!6!^&>?^_ U$1DE;:>:1\59L 6E=$8>V$4%50IOCHF-.]PV?1$ MY@AWQ$M$C(LL>&\YM]$Q10/SG%BU,B*;R]Z!:4DIIIVQRGMBG61(.R.%"88* M8Z+U9)258LG6,+XZ[\,HU._O#V\Q$E?*LO5RSS1;]>"..]U6]Z@9^EL=/]HR M/S[[.W+[;FO2'OW7W4Z_VVKZ/,?;+C3JGL;4SE)V&5"6<0M7<1$EIY(0CK"B M:08J:B.0$4%+*0AAUK)E= @+S5H$C]2Y".1,@.,3!6/*&F)Y0#Y21"*5R"T! M9LU"EE-5Y_>]X$Q_ &UTO3 (HZPC*PE4B 2@E1J#RQR9I$0%[&U +#(F< Q\ M"8"J4*?%02=!0U"2<&XP9<98*X0AX+5@%**G>AYY-V!A M$64YGVQM7ALCA&;*F+2T5DE*K(:[2+*99HC+9 OZZC%FC(OI,9.1"\8_(L)9^/L M;Y2B<>P-+9J 4@G#=^'(M+;S]MS"T-?0C$%PVYW0.[H:.VSOWKV>?> MU4=_ M>N -?7W$3P=KK$X50Z/ PJ2DT$IY<+N0MDPZ;ZA13RYP<=. 6\/S MFUXSKY18,1US])11>BFCNP8#,3>$(X$P4UHJ1+A&&*-(/";1+T%TMU"R10\[ M2ZVI-"Q811VCRBDO(G(8!TH9 H90(-GTE>QV U9Y?0VHC\R79D6@H3QH0U/Z MOH@53X9'HA""(NT$]RRX) !>T;",Z3 3;9H M&1C(=W#YWO3 J_,FW.[[N^2FJEN_T;)>05S@R #KL(A1DY;U&KB_XQ)1[\DR M+)HK%&J1$$IRAKQ22$0O64K795P$3SS5%@QIWUNIYH)4(6"'G$HILP"SP"N*%$!B\24[%YL% M8LJM$%YH'QC#0BEP?"2X0=%K[NDR^#\+M-3B&^/1&V-[39<2+-QIPRJBA6;2 M&RQ2F4W#G'=*@R<=@E(>. ;#JQ9Y_=UT:BXX934)'IF\R"2H$#'&"1&,YSIH MC?E2EJY;2)UZW!^AE9V.,X-YZ W]'%[0)RCHE5LT3FOUZ@9OT M?\TVH'\MUGNFTX^A5XL[W:Z_-U!\S14X/*D7_-;@?;?9&>QVX 8K6:47"8^< M9L@QHQ@.J9!KJFI#A",V"+9,\;+GD/%4U?\W"MZ)@#U/^[J%=XP'9 0'70O" M!,RM)7Z)U&S./+= M.^H6DKCZ(4P*&C+4CKVH"C7&"$N8U!BF>J.%S)^=-0B M& L=C?2"@0Q3Q3SE4O86[34-:(EDO!H\J781>JNJ;"90$:63*"K.L/%:"1\0 M==X[2AU?IEKW,Q9OP8Y^T8)! E'#$'&:$2^T-*!X4F(1 M(S92+Y&J%3)^K'*+\Q3%%$L" R M8(H9PB!8X8CR3',,K$@N4RF\)XEWN#MO)-#=SMDYW'!PW/6K&!>,V-H0"7@R MG#/EX'\V!*NAXT/449-5,]TYR?:Y[/:\TQP*MG.>&GXCJO9P(-P <8TF9 MD,BZB 6W@@ION8MBI6'@&84[G[A5I&"K!/[#C'DJM."18TARO[OV=QXPW?3?49VR7(IS_9)-UIZJP-_2D5GDF19>ZP%]2KJ M%(Y7ROJ4V#=&9S$W"B]PDN5%STDUD]S+X+812PE'A&,FP7NC,FC'2$#*!N,7 MN/S%0H9^9B(CH.?!<6&C#H8IQ730R(2@O0&;XD#65T)&S[JK9S9RLII@KXVT M#C&'M/$V&B#*'&OM#%F1BB%SAK[IC50.";@?TTABRQ 1J5"#$ IYXXD70JR& MN):[.I-" 41D#56>I-( *51!K;:22PHDPZZ&C.8%?=.3DW$*4^U<2H3 D..6 M1DN4$B:0X# /2Q E2'O%]TSG:.0NI*\'H7ET#-1\"SQ&CQHZ9MA:U^/PSZKZXJYJ3;>]TR_7OE/:I@P-WV&9CPUE$OY+JQDLN> M6:!8.!A!*;,B:JN\M%ZR MR%!:"[@$MO]+HGL/FCZ%RGJ_C#]+:>[12.28UXZ;Y'5*(V!;GI#<.=UZ],OV'%Q9(\#-*Q:.7$GFBG"(,::>9M5A03&*(3%NTJDCP2[JT M*(A @+QIKJ-7S##+E*4D(F<5TTI;X9G%SPF,(>(_P^M4[LS;?XK+H'E/GC@ ,YSQF% 0<%; MC6C:P1(==XN_O&&!Q3N3A0Y86N;!8_/]4LC#%->J.@\PTX:;XD2+I5Z5(#>]Y.KK)SL5C7B/Q?[!R-G,@3#.7![ M;$6:\XN164V!12K,5M3^YQ'QGQX"") 0X918;3Q32FBLI' R&F>0,NA^"9K5 MD]Z*1_SG@@1<&Q&QT8R0?.[/@"8)QP2FT5+GPZHBP1PC_E/T"+ F,7"F05@@ M,JD4D8A3[IFU)'"YZHBPJA'_^<0 M S,4($(U"V$VAUW"S->-=U^4^VEUI M[8=6J]DYV@D=L,,6L+@MWP:I]P<]./DBI'V[G?XL&-W\9^1<0,PK')$DE D. MK%U[&+&1\](92^Z#?2'JYX?BJ54&Q"%(3Z+ BC$G2,KRX[50RB(!'L!0U!@I M3+/QAT45]>M>\$W 5M=L0;/N2G@O7'1;%R#CNR=-*P18#G:P"]#:.T]MOET) MMWO>&QQOP:\>1O2.WPO]I(I^V(R;F9]IM>-=LQ-J<5)'##<#5E^_,IW3ZM;K MYJ!Y#1&PB80;_?=TK_"ZR/.:>""235FDQ30IIS)['0"C-+)=+%^/!+VO\>!-&; MS3-76-/G/Q9P9SS6VB/"%?-,6J-9BF?3@!P/= G6L2\*(-]MQU[PH7V6M.9] M+HR[5OKM]"!VX[D'6P;RKQD?'=WERXL'@-!.. M2NE09(Y["ZPKFK0_E$=AA%E\ME58V&]O8=/C84AP@;#&@@(/4]PJ&%R0-I:" M"OE ?6$.SV\.]2_=PASF8PZ$!DM)D"I:Q2Q).0>)B9;A@*73%A?F4&C>;#3/ M(Z,UL9);&9C"45DO(F)!,Z=]Y'$X=P6:1V:M>3\Z$91Z@$RA!P+7A%&-J51I M\Q?8G?=1*!4)0E[3)=BY-\=(P.]A;M/;9R0LY4H;Q)#23!'0+XY-TC6JI(@L M+M&LX]87T_/UJ[-[Y21N907>/S:]U9Q19,Q$0HR*GB)&'-%3U?CFGAA1#B M7"9\7=JZ1;P+B$3FM5:((X8QBHX#T#JS_$)\;D"=BQBCL69"3)Y0LF7Z==DIW^<-E&+O$>B/8X3#$8M1!H M,!=(M]Q;:JB3VFL8HJD-2'E/!<<(V6"7*7GC3ZK1%((X$Q9Q5IJ=9ON\72CH MKRHHQ9Y;1R2R1H"K2:V+P00E! Q6TBFR! J:]*'>'+3 []OM^.9%TY^#)W:C M*N5F+[A!M[>2TD.<&8: SH MSBUB0E!PI!W!*=6R"L;RY1-''C,IAV$QQEP2'SO-I=E3(:EB/!!-L G,PA^F MK6 VBK0(,WJ\=.)X1@8^$X$PJH$,81O*_,<< MAT%20E,GTL(!0BT-VBO#4#(J%I>@9L0"C#E33!3EP<.@DEOE* O*ZP@""A:# MJPINJE1+)XYYC#E3% =TO[ IAA<]TS%:X37U2" <+/2=7SIQS&?,F6+I%# " MC#CX-!$Q3**53!CPQ+'C"DC!W,LT/F$OG&GV/IG6>7AU=?/Q7W!'TW/'5^_" M16C=E=3-27DAWGY^!EX2:3F-K6.$:^T\ U9@E3961<,= AJW%+D*IR MLB32 MTI(3CAP-)$08>[35\ M85L0Q)@?T]Y 671)I62X45S(PK#'C/FC+&;8D90_! M)-!ER RV\$@X/5\I\+3J W$:J69(*(-" /^)2^:)U![]'M*:+1).8?H=I;$PP/E#!(D\&I@V8FL"> $:& M.23;F.FDZ+3R2A@>K$V%"(,*+$AIL0 /!\9[J6*J,+-$\9LRO/5%OOO\UOKC M9O_TWO36%W.VBC$<;I T4AM-G6;!6V,=1=KKX+1)PEVB10H+(\CY+%,06A#N MF C4L&BY(=@P2VSD"!PI@Y;((O?"H#DLROJ^93K[9]U.O]N[FT_"=<\[@][5 MRX_[2V^.-]N[SN!E)V_M2D?&5S]Y6Q=5$1FG.(_>,N^EYD([Q W3DEADS6HJ MQ.NMI5>(NP0EN.@< 4+)$),H+>R43$C+M)-*C;*!K9P4=UZMEA2I-XHL!9O,)9+4*AT;L*;B55%*B/CC@!93)DVI V*<96RDML OKY;6L8Q M:28SOR =[)=#;':"?Q4Z\.%[>SZ7DH0H2Z@)!D6L$#-1@*>/70@8"4]UC&0U MX7*&#L%\2 CE04>K),:4^53+41J3"KLZJY59BA*A^;+M/'/KJ'1#_]9ZCX_O M]_96T?J$%< H\RG7'8D*DRD\(H!6M A7":1(H!@)/\IV10PEDA2@F6LY]87S#V[+ZJPW@VT(,S$;':*1 M6HM(I&%&,8N4DTIRQ(G&AI-1 A!-4=']M[-@Z(RB:=!Q+2@.2!AM(F.8:4-X M)%RG6B$*QSS_'99((+X $Y.W%%!F2&2(_UP/W$IYUCXSG:O',I[E!Y\2&?\: M9.^FZG!-TVI=?>Z%?F*.*:'\YS- LD<>\\U+?C@LG_PJ)XR- @F&M5;:4Z.T M)# (146'M3E #$0LE#P)2H!"Q"_*\UO=_/WN;%Z^[-VJ\E4R/=?KMNYV0#I_ MH]L[>I$Z\<7HC!?1N$$6N]U!!X2Y5HJ];GLOQ'[*,D,_7=ER]^(=V;MHT,JY M/]F^.-S1)[63(UXK?VI6=@Y/J^V]T^K)!W1XT\A&NUBN7E>MM7FV_/:[N M?,#O:+75N.ZR6OT(-TY>M0_+AZ>'Y0:J[GQJU\H?6+7^\;H"U]3JA\U&'>[U M25U5FKKMVF\ZM9-=6KD^(I7K-Z?5@PJ'![NX2AK7M?K6U>'!-J_L M-+X<[NS%VCYB[^K;@\H^NJR=QQQ!7P*HTXS)H#.KB,X<-XZ#*QX4PVNE5K-SNO=MA<^U M/9VW5AITEUK%WYQ4KOUI]=JA1GN75Z\_T,;U\7'U^M-II;Q+#P\^7E6NJTUH M7^N^,!H'<(1\H-7KO6;CY)16R_ZDMK--JP'7X[3**,&N;UYL_@U_C=BM5MRBZ(7W@K$04\Y!H+H4:Y%J_O+/^0-N MKND/KI+\V\U.=IR7KWE)Q=G@KR]-/SA^B1'Z_]?NG)= .#.MYE'GY0FX#,V8 MP+J.+Q\==M]7MO?QOE/_Y*P+F9]&T MFZVKE_^[#C2L7ZJ&+Z6];MMT_O=ZWW3Z61]&B3@\L=^\#B^Q@K;G7[\,7T;" M?4![P_CE,$EO]+&Z6]\NE_;K6_7M_;MM7L#6[F^__KBW6]_=WB]M5[]+I6J>SN[^_6JG-\!?*D5S@PH,:=HT&WLUXJORX1Q)E^M-%MTSL" M=1QTSUXF55P4,;RI[55*B3)TNIWJ>9ZOJS2B)8"+^:0LU=)'Q4.@C"JMJ044 MEEHP0CTV=%(DK=0QB7 ESZ+<=?D2HQ167AMEK)L/T%Z^(X=7C0,GJO5C ,Q6 MLW%=^5*YAM&G_('6ZJV3PY-J$T8H^+P']WO5JM9/+_S.)^;_];9U2%H7]J2+ M:SMP[L%; -VM:P!"5"T[7CNHMBOD;:L"GZO0]LK.1US[I%AEZ[,BX'L':3*+ M1W86NZ2D2>I(B_9%* M295JG?#G+S5]D,I0C2^P^>B1P2NTS%D_O!Q_^,LW^V",_]&+@'QYC M&XSS1X^B#?SHL6_=5=,-RIYVVQ=YBX>MAHY)??[/&ET;7W!FO =P>DG.+DOX M;F^W0GS0-\-NF;GNL/NZ,^S\V>//AW-PG$*O=;47SKJ] 3@W:7/> !YP.7@9 MFY?!9X/>^7)"U)NFW0$^=^)([6"7P;.!OU5(M?SVI-I^D]\;KF&5=K5=J_MC MX'BC:S[!LWCGL'[6K%XW>./D"!V6MX O-E % *UQD-YC#V#MZ*I!&KQ*MEGC MD_KRKKZ5\T#@@U?P?&CA9T])5)&KC!#' .90R"RG*%- T5-N-LL,7]O\7_^M M)1-_/8IT(X7_=5T&@'E^$,P5^4;+2D,U*[T_[_7/36< ;D9I/[A$??_7?V.! M_L(4J'$)\S_\GZ5N+ V.0SI^WFL.FM"<[4MWG!+XE+;<(!W&FK([_90;_XL< M]^9"D)XV)H"-Y6_VGYMN&09 2GDNX>>@'X(!T%Z9B)T].#]C43Z#_..J)I]9>9=AS6 M3Z\25:C43]'A206N:;4JY VT91M53HY;ASN /M>-R\K![GW:T:K5WQXWVMN7 MZ;Z5ZX^H=O#QNG&PC1KU#U>UG4] 6S[0ZLGV9:,UD78H'X6+!F6$*@M096VF M :XRAU@(Q"MD'!O1#K;2M..KGA6\XS;O&'SMEQ'Q2%,:I?$;/7_3ABKD@^OV M\C#HRW,@0KUT5M+3))_G_WM^O;&VF=2SD,8D:2P+B7K=;;>;_;22H/2F"20* MX-6&WLM9JLD8C:?VY1=_C+@X9>_HSB$H[.+M=>W,P /NH)W7KM;Y#'X>O< M?VR[Z7TK3!O&"7L2@YPY7.^%H[Q^?6=0A2-+"=GC,&NZ9HL?[FSCP_:G5K7\ MD1^6C[X<'NS22@J_MBOXL+QW FU^$&9-,%\IMTX;]4_MPP. ^7KKM ;W;YRX MR\;)$6EE]QC1V64H]G1DI?%KE:1C&:YOO M-EYME-YT^Z!BI=?CM5_?\'VFKLC/X0=-=NG_V+XTX+@DW4O>2^]&YTJF7^J? M!9?6=/E2LU-J#OHE<'525/+/2;UQ#SCT X"C]_%MA"??A[AO.)S%K2;=ZH[/ MN32,A?$-J>34!VL!=Z53ORMC&YC^$ 68:LQDL4((SS,@[G; [3P;>9[[J:+B MZ^%>K-==?W>F E[!OXZN#MLPQ-8_M1H'#00^$6^M[4^#)0MY!Z3]_ M8,Y@^G9_,UGVG*;_Q/[:W2CM;93V-TK;[;-6]PH\C[N&6JIV-_Y\3&.>,IVP MC O$^(:> 543&PJ+Z1- NJ'1XY<6!'#ZH]F6][W0[X_^275X\1*/9(WZ-JV< M5$\:[;UV+1_)MMCAP38Z;+]MI38?MC_!\V&4JU?NCV3'E;J[JA"X]TZ#YR-9 M&O'@&8WV1U8]>-L^/-@[3:-UDT_'%?(!1L,/ MO)*O:/N 8/3DC>M=7MNI?&E_B?U]_^,P90=9*EQ%E=<:\,%DJ M/Y?92#Q*Z6@1"6N;#//2OY*G:JY*Y5[S(MP?#==G/^'Q4%](H2_/K"]'GX.1 M+')0%6PD =HD<::UEID7WH%,%9 JH$W[YTW@#P D\].3U_"QUJMWORRSK[B< M6K)]]1E%P;3% A % [OVU&?6(Y5QRZ(1B!JD+7B:S<&@;\][1\?STY.=\%:6H?-LV$0K["4[UK*@[B$5B90S$26$CADS$H%7$RB3&A)#?.,6 <# M+.:$/!AJ1;*1QQU@.,;IZ95BE>LGC#S^!EA_[S!2<6 MK7_ W$K)WB9,Y"W\2L4_9HA,B0%N]8)96BSZI352UY\U5RY0R[.8=JFS&&4& MHR7/J(F<1@(DWL;DVI'[./+G+,E7RK_7>G_<[?RVJ]?09VJ9$$K83'G!LI2L M)S/:W[[P[P+2T*:_KG7Y7_^M")9_]4N#T IG M2>BE3B[U]1( >>L\06S)@(V"BOEO[)R=]&9+$PBE? /LY*="EM\^1IF>>B"4 ML VN?BZ^^OR-A9[E\FD]._55/K/9N_/=I 6Y"M[:L3! *SNJE:OH%K*);#S\1JNX8WVV]/*=8,UR.')87K>28H9-.[% [K@ MU^_RRO4'8($I#T$%V"$\N_WANGIR?'+8KL)S*E?GK]=*9Z94N4JV]TO\ :\&_L/7OZ6L: M"TMXW!)&:#P$X\(,GF &#\)BF'MA%&8I\,LS)L W4E+2#*/@8E">4A'6-M_L MU_<*;5\0W!]OIAUN>+@_K9(&XJ6?47D^@_CP8/V:1MY%:< 6G,^8MS'3AJHL M& )#@S*"L C<9VN_O/6AM-/J6M,"KZ %?D$I9:H*@^]'CW\X>C@I7>!3T@P^ MM_+O=GQ:F!5*]JKDCH,[+;53\JXOQP'L%%W(^CTDI3]G2 M+_T!]TO[O/OGP&'[Q]VTE6.\RWMP; ;WW^*+N=O4U,[AQ:,7^7.]9#J^] >Y M];86S!-.LB=);>"B_'RX,C5E=+.4YZ%?&N\X/S/]04FCDC=7_8T)NWMG/0_U M^KS7@P8-LP"D(7=@!N?]I4287XHQXL^>,(N1TYE%#F<,>_CD&,VX=HHI$961 M:&VS$?KW<: TRE-U6VZE:G?\=91,XON[M,FWLO.M)E(DDP%K:3<' S"R'&Q[ MW4X:\EM7I0##_U5I-\&E$&(O')T/ M,\F6]K-ZZ8_^*-Y#*-D8G3(X;N9[O,[2'J]9H\FPQ3?X$/I_SL/Z;W5NZML1 M&/Q^UD\^:^\Q]5%D(MBT""?2S!"&LL"%0ERR5&7R"=9?NBV^G\ _2T,>$9; M)C]NRV \IM2"5PDEXQS8$O&T^E1[+D[GD4^%I:H7 :S[2POPP M_FM\VG=/>+Q]XQ,3.1B=_$A;QVOW;NU#F0TG>)8L?(O$M MJQ[^D)MV:2) 3S?P/YM3?V$GT%WBN7I!E:])?WJO0=Y'W=[5A)A*?E*N!&YT MTG*'5ZZWKQHI3'*R_:5Q_?:T6M[BC>O3R\9!X_)PIWH*S^+5^MY)[>!^2M\N MM./M<>7D]*I2?W52:7] E7+KI%9_YWBZDZ%#U/Z?OCV@M7V M-F_4MW'UH()JY5?0C@_7%;+7A/XZJ92WO]3JC>O#@[?M:OT#_O?UQ\\L"JUL M9!F/%&4L>)Q9XUE&C9,>>8P]_:#]OQ*OS/K2NWU_!).;/A'B7WT>\MR>' M9>B#@[U6X^13JWK] 36NJ\U*^120\)15=[99@^Q>5^N._?NZ\_XP[@.O.BP7,"&;;[>7/ZMUE1[^ MI0F/3M;9@7?KIE#.1;.?,Z>.Z;BF::4P4\X$S)-;,'O"F@2]DN/7S\]0 )G$GPU77#"D,J>% MSQ@**-/64^@T NE+^FO MD0J_R2>^ +)3$=Q<@?O'IA? 2;JCU(8IKRQ1/C#'N#(F@HHS@R6+CA@J\\+" M%'%$U@"27!/\K?X_:[O5-Q/FVO,UA_F2P_W\4;7S03ZLP/AR5]4[Y^W,=_-4 MX^F&P(R![L*]T&^G^.[+9Z2L#$SA+*JTP5-0DBDD"7A*$E%D.8J4KVUBO(X4 M7\>IHN)= 6^6AH(=CPV]A[MMW' U:'_B:M!$'H:W6"]UOTKL\3F9GS6BVY5' MS[I#YC(J@'H1'JU%.IJ;05\O,;;?;9T/'K_D1Y8CW:]A^K3JJG)M?,UQ[ZM; M=Q0RVPOF-#,1'OK2M+Z8JWY*D[R")5B?!E?#W+NU_?KV7BID^GZKVLBKF^Y_ M?+6_6][=VMO]1F76N6?XG_1.WZJ1L%LM;_][CF/(SY"LI9D\570#B>DG^L)L M0]*GS9Y./P0U(0+42Y):I-TR[P'6IK1)[)OYSAY]N1AG%MKZEC'_;1:F+:7C M7N)J__V$JM\I[_Y,;X,DN_/6Y\A7[^@'Y2&"4'H5W"M_4S3[F4KQM^ M6>CGQ F_.RHZ)-!W5)2S0D.GI*$B;9Z#"SLI5 J?\AT]^8SS*],"A0VE_>,0 M!OV?TM3II+;-95Z(>UKBIH^(6E7T;MNOX"6E5$ 7D#+ M#;2(;RY^+#3K!S2+/Q5:3/^X]*;5_5) RLH(7OR^D%(HT5242#T1/?*U Z%_WBI"NZNJ+/@WY3<3<8@6T\Y34BV- M1SA$-TH?TJ:;YB!?%IM#"OS0&G]/B-3J]L_3@E]CN^?C['VEO6;_M("95=$% M\IM.2D^$&5[$>:>E6FP$,VPCT99!#\290\S[7M<%GU"EP)!5$?1OB"$%8DQ= MD>1X1?'N1JF6[U_]U>7$!5@LH(Q_0[!XG'#(8AG\S-=VZV3&RM9''.$IOC!MT>P5VK(Y\"^SXBAT4 M%7,[4],M\75RYV/G5F7$?=,:YDL8+CZY77HC!4,^]O/Z<".B4B#-ZFC#[XPT MA1I-1XWTUYF:)8*;X1.L]N[!28%<*R,Q']GX'A 44@Q[3LMW<+D MZX1,!:X%:A(#,));T[P%BJR,I']G%"G4:#IJQ$> P8OIF%66\>\,%0\(!RNF MF6^,%KV*CM'UYW+3-8I'\"HF6_*;[@R?"ABBF<:>E6P2O;>Z#&,P 7)(" M+U9&IN2;FW^_5WYAE/H32VCSK6RM^?=;0ENN+,$31#G3'+ED&@F)4^+'>64D MGIWN/\A(^IT$O+.TPQ]LR]/M4*YMUO,DO'GF%E#$R=L6%R E_:0N2 EB>X.4 M;_1YRC;\J$J\V:UN55_O;KTK[5;?U/8J6_7=6O4A^#S1RNC:XV"8D(]^"_B> M6S"EQ/.'V9[QPHIGXI[=GY2.^(YTQ%WI+&]F]$5YB=>U:GF[NK]=AE>H[M?> M[9:WZO#EU=8[L+GMTOZ_MK?KB_\6?^QV2H/C[CG9_K\XH!Q?:-O1N]P>YTQ]S4:@1S.5N74+%E&VC-.Z,I>K@/SYV MS+EO#H+_<[IJ]J0N^I'(F#7N]*C7!9J4C?K&N1# C_FID-DS$[Z\K[?V]V^/ M_-_HN^^]ZE/Z?RGO\<,Z$/,_BZ@#D^WM]7FO!R!0,OU^R#/[_X0RW'OGGQ+" M,MQC2H!0RO_5"ZT5*8%D6F3KTH?PG_/FA6G=\?JF:*0_TGVH]*,1ZGETW__< M[Z8?>L6_[D?2%^K='BU<>-[W]ZH6>B$$I5A$J2C37"E!B!-:RX@I)X[)QO=' M[;<:-]V:J=;/'J#ORVLXUJ]0^X4O[PI;*SUZR2;5(K;WVIE:O'E>L/ MI'I0;8VO@6>='Y*/HE(^18V3ZFFC_H%7RQ^_I(+1ASN[M%%OL$IYBU7(]G6U MW, -\BE67Z.K=_7MO/!TY>0CKUQ7/AL2L2;"9302G+&@1*9Q#)FVF&B$F9?Y M/,6ZH \K']XM9?8S)C$&S1\PC0*@"H#Z+D %[(CSGDN).<,^&BTY$Y8+S)SV M0>4 13 I &K1 K=!RB)M!2. BQQ(S/F/90%W4X.[_8=\3&*A,)4N4UCPC%$I,L4\ MS1RV1 4J":-H;9.S=8W8K^+=-S!G5H2L,.MG9C"%6<_#K!^P&,UHD,2B3'H$ M9AV(SBRC,;,T H7QA!GMUC8566><+Y!9_T:!,3@C]?ZH@N-=9-+9PTDN%!4%92V')SV3)#XB*4]Y$C\#K M$!YGS'&=:<1-EJPX6 0\!D6P9+HN,%T@2_Y]XBV[G0M@Z]U>RI9SFZ2((LZR M%"1E++^K LJF"657#TE),(R"J&3F,&,90QAEUD:4,4MI)%1Z&Y//Q=:Y+D(I M*VRYTR(EA>7.R'(?D!#")1(6X.5Z=#8\&UC7[PS?]]76Z$8US!AB;NS,+"(;"T#:-847?PG;R1;/0R? MV@JI KYG ]^[#_F7%E8P; &Y#4,9\T%F!FF6$2:9I"%**SC M^+K6*DIA0!^ M9*_ELD3V?F.SG]H*JL+L9V7V#UB;,<)1$GP6N(@9Z9]"6J_42L+_.8#W?:9@V&9ZES#+#Z)@T*[X+IA[W4S%K\V \Y3&ZE/&=;SIVWSUMF$'PY MG/7@*7G>(;ARJ]V%7KW.OQ9(.CTDK4P(8&ED#:(>O%Y+,R8=RT )7&:1",)$ M@H0%))5J70NT0/YO 0@+RH(*0%@N0'A K92.5"-!,L$HRT %'$ #L9DTSL>( ME-5,K6V"0T47*J+]^RSLJH%]@2%TCDJM9$BEO'.R;LS.XGS#B6M-F!. M;:6@,+N=+O^2[/5&FU)8,66A*6@JF.Q M%2/9]$:RQJ0U98[Z *S4(:\S9CG);+3 2@VCFG 62;!KFQ2M*U&PTA4VVVFQ MTL)L9V&V#PBH15'(:%!&K/ 9E#%B4Q6"*A#<*YV4JZ2&;[^\PZ#IEH MLS,PG:.F;=W;%_F3)*288'AF$O*F"<\([YH7P>_>B'*X]J+8;S55C',/J8DR M2@4:;1:TBADS-&1:*I\II72T"A39B+5-0M8Y6\$TH(4Q3YN:%,;\?,;\@+ @ MHSC%1F9:N0#&K'FF Y.9TDX81SE&5H,QTW5%BZ7O2[?T?;&Y6#G$T.L%7QJ8 MR_&DY9"'Z2(8M!0\;"S!W8[KMD/=7#X"V[%Y&7QV'7K= K%_"+%/'](OAS!E MW,0,8ZTSIB3.@';)C#HI8>!E'BNT!M"L8.C]:X%\S,*(%Y1_?QD0G8#S%20-*7KQ-YE3*N0&4]I)B,1B$<2M4.II@)%OYR,N(CV M+*X)SR"Y06'"LS'A!RR$,1$"TR@S6MF,!:0S:P//<.0J&*Z=54,3_O5\XD6, MYQEC/(M K1[):E"K;[TK_4)IT>]X@3^]3W.ERW3]V,NOS- TW9P-Q5@TO;%H M0K(&1(VB7L1,"40RQL W5DJ:+"I'D9(L"L12SFBQ3N7,DS4L4F"K@+0"TF:4 MCZ* M&E"VL/T808I3B7.I-5Y6=24@5:$3$?X1TFM->8 :8*O4_S+^Z>?!=)6 M:$/"9'[Z;G?KU>Z[W?KN]GYIJUHN[==KK__OOVKORMM[^_G4B?RKM/WAXVZ] M,>_="K<$34&:OGN>BB;>D?2\-S+\:!-7R/MYI#[4*)M;JVELL]4<-,-/[GIY MZES8LM_C]YESN*F >F:N\O*GL\"77XY4+C%A7.E2U=.NW_I^J(1%OK*IT\2/ M#SU?SX30"N$LRL@R!BYNIICPF9!$NX ]\8*N;3*USODB54LJ,*G I.&&>>NU\TZ KZIMQHP!KY5HD7E&5$1,*I(2_0 FP:<%PJ3?<(UL+UR$ MSGDHUL4N [^:5)+RW<@9O"J0;>K(-F$#-0E,&4]B1G5,R!919HT.F;2$&2Z, MDMRO;6(&;$LLT.J[PJ07E)X4)OW<)OV K)#@/(Y29#)2E#&N5::TXIG0/!#N M#48JE>G0ZXQ/*]_S @73EX"L (7OG0-7.3-7O6ZK-K*@PYVFSE\*J'Y6>P/>B]'//M=.#*M_1L1%D@^=22?L/U:(JJE R;&HG,9RJ)N+2ZG:-L$'IM,"H[)BVRR-JWT)QE M[(2^ ^'5079E$-U6Q[\V9\V!:>5I\FL6>B2O[//5(2T0[ND(=SUAX[:ASBIK M649M]!E#T61*$IHI;@/S1@<9\K+T1HR9I@2^6I!6"-0R@\!VR2+9[N\341DECAD%46ZM\B]B)\O 0\9N5Q$$ MGR&H;4^8T\+.$V=T9F,*@C.+,LU#S%R@GD1NA>,:0(VNXX7RN0H[7E!.4MCQ ML]CQ W+BI'5$<9YIS4+&./.9)9)DGD87 *(EC3:OF(?U$JW#6;PIJAE.9GV# M]E&Y&-3KD<0R77 [2N[A!LMYAX >W9#]I P-2XWG4XL/%4 ^0R"?4/==4B\Q M26L1/%<9 Q%FE@<&7B8-7%*JF.!KFTJM<8HPE(8;BM)8:@3.&IU7X8>:V__M$H-Y- M<1ZL\%L7"$LN]:*T(LU M38W79;%#;/XEGVY%;WZM[E.Q&F#>=9]N^6]%S;ZIHMR$1$*6:2.8MIF*V*44 MNB&STHE,>"&Q1MIHQ,%W Y!;P3Q"A3'/O/Y380_B<7;^M%80T]8J; MC#D4@;U0 JZ(#YDQ45M"N,$\+)XI_S[QEJ_LI7L6>F8 K2^U4DQRD9;.K#;, M3:WVY5B >4SY)O58441O%E W(2./%0K^"R'3BJ",1UY:H4P"WM^3GM^0%V""1&)M/@ER)0@%*="9(IE1'L3'(^&,)8G M",5BD<*HOT_D9;C+ZNN.[V*?U;(QEB3 V\'D MIF &U'#ZE*I%$)JVG&-&89 M4Q)(BV V0T10%SD%&92F''SV+'#RB*!1N.4:D,L52W M&XA*IK35&1@PMYXJ)55NQR#A!;+C8I_5,M1%G(PN^X.N.SWNMGSH]<=U$,-_ MSL$O^;D"=E.L,KC0]WC6DH:^>3&^\>CZ+)W\$JN\07/)UM1MM[OIJ: ^ZZ4S MTRM=F-9Y*/W/MX:K]Z&W?VQZ82K#UF[US<.4_:E1N4J_-[U:;W^05G0^\;H![\L%XRYX/C;@]PTY<>UKGW]K9LF%8JXJ(I8+5< ZP"- M"%:9XIB XTY09C%/-<6Q4VDO+B+\&U@W4:MF 7.%5BV35CEG,1(T9!XADS$O M7 ;H9C)*E(C1<>N(6=LD*$W03YRD?_!#::AI?XW^+37[_;02S@Q*%=-SQT.W MD^+U4E*MO ),.;C0MJ%WYQ!97QB$W,W?H-#C1=7C6GGW,W&2$NY(%JP'/=8< M9<8#1$:!K9((R6#9XJ!CH5&+KU'&*<&D"QF.QF>,2YT9Q56F(_%*!8>B2--_ M>!UCOBXG[ %]\,,-)';/!_T!(%]:;#-S7)R=%M>^OD:ARHNJRI7Z_V/O6YO2 M6K9V_PKEN^O4VJ?HI.^79)=51DT6^P1,E"2E7U)]C1@$7\ D^NM/]P03=9(5 M49 )=JV]#?<>DQ=MEG)"1CPAH@XKI-AQVC$6.$!809C!BVR*AQ M=QD)55U,J>=0K,>J[,=YW:W$NFO@SXI0RU,A..$H E12!S14#G"-;/".2^)% ML>Z$X'4YI5AMO1;E?>;C+]]\]^*GA]EUON688+5C^]>TMO!VY6#?K,I8"MIS M1$C@'A"DBV)<"$A/+##*P6"EI JFDL\/K\:30_;55<_Y=2O.ZOD@]2S%XIGE M%!(C[V.8>E:MD[W7&@TZO9<>65?*AA%6C$ M5IRD]%VZF\37Z$W*YN2\HOEA6:-,->(6(KF&! CL(Y8%F!J1>@,TAT0R9Y7& M?F.3PKIB\ZK]EX\R5%"+YU:(/6OQXK6XG!W(L0A,0, 5A>D 0XH=:@(P5XPK MZZVP*FHQJD<(+2I^16JPXD.IJ]+SX2=;HQ]7H$E6A1D@H4K5QDYKM&AV C(0""&ZU)(I19U+%.DSJ MB%>IVNZCYOM7,*V[/?!Z>#ZX&"=VUT *9]O^<+2T(/75@ K/YL3).?G"'"F< MEP*__V.DL'FZ?WSTZ0,YO/P:[_>QVWISB%JGNS\.3ULGK?;A]SA.VL+[)ZT4 M*;S<^BQ<"NXX.QG MQY% !EE@D(D;#I882,$L@-PAIJ2 5,JXX(BLJRF5H.-:^G6(=M8%A1!H)/69XRG?S1WH5-7A>)E_6X,?0X+)/VE.-J8( 8>TCT2,::!0<2!5U MO)=!.(4W-GD=T_)1@Z5H\-/Q1E]S>M3Z16F=R'+.!O[8]X:1H=2Z_6%V4%>5 MG@SC<\974SH@7\FT*-*Q?5VBXWKN;Z-86WZT%]KZ1P:_^8'?E+X,#@NI-=< M^71<.=!HY6K" 7,".ND@#- 4AZVP*E<(O#OZ98]UA57\_OPEJWCU5+S$;Q2! M,)4'!(PE1S8T+#70=$!(J#T5#MO4>@6C.N*L&BK^U%J#OWWVZEGM=7\XB@0G MZ8KN3;S74ZO:+#M+\+KVBWD&@&P/D!X)3>#2)$-N.4 Q Y M VC4):"0XD 'JCTI$J%)JH+,ZWQN#6ONIB0KY,-YJEH_+^=.UOK%:GVYS0,5 MDDGKHBG#,:#"RVC9T*CZA"$HC#$JM7E 1-21*,?OJJCU3\?ODZIUQHL&_6XW M'4CO1'T<^.%HV:Z>IXJ!\V(^S4ZO/XC(UYC(,X/<3" WI<AYR!RF I'#? M, ZD@@Q(SXB@(8B 4SXU+!MV]TM0J@:MR2I=&5J35?J!*EWB+4Y++PEQP"$1 M $U5E(WD&BB&-;*6"&)-5&D\K^94%>,L*^[*64&WS?J#W>(\-XV>[9ZGF7LW M;K2Z-1H-.N9\I$W7M_LW:>POB,QVW[SPHE@^D0!F2& &J]!1()!805 MF!HG#2P*O$2[#SZ\E<2LNK4.#I_UQXO%^7PR7BP;+\K-S(W4.D@(E$ :4.$H M4-Y08)%3& H!D9)CO&!JX7ZBBKF**LRV]MI;;VMO&UNO&F\;[<;N06VKM5,[ M:.]M_[^_]][N[.X?7+&OW?-C4K,U^,R]^>JW?T5;/Y8C#(G>2KV7FB9'A F()%#0(4,X5T(%A M0 A67DL9;"#I >ODX=''.:H2$MVUV48S3!:*=J>8?0Q8;1$R(6D7 G) 8<\ M$G(;?VA)/5"8,6;BWY2+!CSAK$[0G)V@2X'1@JL_+TS JZ-VUXY5G^K!ETZO M^&YV$[ZL3P;BXZLE+OCWL:]I:\?):BE&V^N/TH'#0?QSKPC8?AGH;NJJ-:KU M0VUT[(>^MMWO.=\;>I=>%;-89/:_[O1TSW;BY44KHM/X7,-G-\\>7IN0R3 ( MC^,\ZP^+(DXO!KZKTYG%E]\[;G1\!1W7/C61+/SU$6WB",Y'O_](5:::W#J& M>>UG&FT!,E+)J!K!<>'HRHRE=CQ(F];__%ET$>S:"1R2'FVG_2ZJQW^>Z\UIRZ*" MRW>-G<;6?C3>?ZOL57F([;W6SF[K8'KO9O\#?&?YFZK?5#;>UW;>[>[O]5NQ LJ_SQ_?>CI<]>)Z/OO MZH^UT8O[1_\\WL,-ZS7_P_JXTY[YP?B4>RUN(OKG4Q3;Z"_0+_;M.-"N/AOZ M%UWTBJ\K/O1RLM-.=HJTV=[V=J4)&;\] 4&EGB'.$PY.?&V3+YY MY+,"(F]QD/%[@CV#ZO=OPV?HGN\Q>.>[3C'>JM>^=I9)1?$!(5WNI,XV6'ZG MV_[!FSM#A]@9+IV?@%7IZZ<8XV.(>1S34]ZMD%#+@AHU@NHW;(P5%]%BKYPEW%'M-9'\L'<))=SE@>_2T'F=)@Y/4YC;5ETQ M(UF'9E@*LZRG>2R]>S437Y59GG;EHQ;46X:+]4!W4P>X4/O2[[O[U5.8O5=] M]>0\8_6.=0LI3'O$M0D-<$0QXR%@Y! E(2C$$59*(<*E@@A_WBDBK @B<->" MR]]\[]R_'O1/DT\F#>%39W2\?3Z,\^$'/_-\MH9#'__G5N:8^][!5=B@^[75 M/NH>XO]VFCO_[;0N]X];^.-Q\]-^9V_G"SL\_7C<.CU$SM]M?X_:]/XK5P;\>RHQWWM?DIC>UFV&!O9Y?%L9#F2;QG MN_&]]::)XKA9\U,3'YW$L5[&\>#W/XYV/H;6-L1%R. _FB>?&#-R^9GY)V% M6 M@+(& .BN HEP!P1#&E!OD"-W85++.R+RR>"J4V)>!:TV!BR(EC97"62\H MAUI38;74$$E.('>B "Y\!5PX U?5@8O>!JZX)6D!F07"2P=H( @HYR3P&@D- M<4@=?CG,8T1AH$X;324/6BN..!>1>WD>C<9,O59,TTO4 M"T'&7? 6<(\HH (2H*.P 8)::,XUXCXU[:%U(A[G;":&**$"Y)Y3RB12A%C'1**4TP.3J!'NRL2ED'4ZI.9Y]:&NCPW,/7V8=7I0.E\@4%$Q#%PRP M3O"DPP0HHSGP6#+$(F\F..HP5W5)JZ3#:^\=N^)+5W')^U.F)^@C6V^XG7MP M,L/M0N!V;TH"&_%QFR2< $T- U13'&U782)ETM1JS+Q+<(MH'9%R]]>53V#+ M.KRPL&/6X47I<(DR10$Q;P(%UJH *(F\R5AN K8,8<]AQ9''<9U!JNDPVOO M8AH'%.T5<;IW4/$)^IB><+Q@[D'%C,2+0>(I25R4"Q,8"P J+ !E"@)E(S!3 M251@+K)BDB(!N(Z46'0A]<>.%CY&>X3UU_ZY1PNS]B]*^\L\+&JW-% "1GBT MI0A"0!L4#2H"%15."<[YQJ;$=4)71OO7WJ_U9M ?#FMG@W[HW*_3TQ-T9SUA M?)X[.RO6W[MB^65TGA%=\!$&PQ0'2S0DF@ 14"0 M61@!717':^C#N5G.T9K784@_[L2I>ZZFW6FGUQF.!D7%U9K_<99JNF:'6C:I M'YVR39;E&]_S ]W=ZKFM&VMS=[PT,Z#/#]!WRVPN;KO&2Q:M:XTIH,I+8""Q M(##$/ DN0(HCFT-UBN=UBJHR;"Z[VBK)YC(N/#XNE(@>8U:0U+E4DI2,CS # M&J9N?%1%!HALX)Y&HB>BE3?G;B@5(GJKYH3;.DV-Z2Z+:N57U"X[XW)>R@+( MV_6EMA<:O9'N?>F8KD^GI4;##,[S ^=&F;0YA6@TM!G@6*AHA7,&9, >".IQ MW'(I"Z4 ()ID2PQFEK14> @ MQQZG_YN4?E:GA%=(J=?>>;9WYI/=T?LR"6[6_NKVA\-_9X?9 PWC-ZVB>O_UN-QK&!\XOKJ3HF?F-3\4*#$O3!B6GA@ M;6 2F:!)@8# M!#E!ABLCK-O8Q'4LRS'-$A%8+@2L<2>'5;ER[;V,C=2>Q@]'5Q[&&DC5WK*? M,;LD%D![KQ9;COK,?2?\4.;#'$-*O-8 (>$ -=P#;8('7"E$I?'08U\X%N=6 MI2T[%BNHQ7-W+):T."OJ3(I:HJR6DV"C) #RS@#J/05:>0*L\L(+ZD5Q0HJ( M!]>X?CQ78;5W]O6X,HM@Z5>NO\-\=.P'/VV#OSJ%%^/?#S 2GJ#7?+WIQ1R, MA-_YSM+::_5[_9L^M&P\S)V3?"D;#Q(Z&PFC!)I3!&AP%!A*!=#,&T$A45B[ M9#Q(/*]CFROJ-%]![7YDU_AL6IT5=R;%+1D3SC+C$:)%I1M I1? " 2!-X1( M09%'AF]L,EZ.@LWL_0\U?>.6*)"Q!=G$$/" MI[R5=&ZS#J?T2JD>H*R]4[3QDT-&5MGS]RV2E%VAZX;MBR:+$;,G?I)7XW67 MH7Z2[.!<-3Z6 M=?:A.ENB2S3"K/-2 Z]5M+^H%$!;:P 4A@>*H+<^I$3_Q7RR=W*\LH_PG[=^/EHXL,[C.!^Y0S_2Y*54/E@5,J M93-9!23D&&#!!#?<0E]4KE-5/\J;3_,_#7Z8,6'NF%"NK<2Q=A#)R/52G0^N M#=!!,V E-\3(X"/[BV9C^;14Q3 AISXN_%6X3-^'7*<5;)K.$, 6]\.LYJ.%!2*D"-DTX@I9D.1:B1+3)E MOTJAQHQR&>4>PV>646YA*%=.C),D.$4=T!120*,4@6** (H-4E&D/KA0A$+Y MJH="*TD=NS8,7#F!_$93T\C5Q@>Z\']VDVM M2?K%#+$A$O].&_#J^\M M]/(G)X:9$_^9$U].R2"QU#-H# 7&. UHM/.!-)H#"+7'S'AM$=[8A,_F'"_^ M)ZU8S='>?UI1__&^5=H$ MGRAGGNO>B5/;*3USI(P&CX4@0,P!E3@ +3D&0E"F)2&& M._-@;\$\M68UL@@R:F;4K)X?(J/F_5"SY(F S"A/#0.6(YJRJRR0VBB@-,30 M>NB?/D?#CJA(L)\&W^ MQPR>;_Y<;/_P.>O3X?.'?>P1818GF&T?^YJV=IR[G0[0]_JC>/>(<;4XF'2: M_LM =VMG>C"J]4-M=.R'OK;=[[E4E\RE5T7ZCDZ6X>M.3_=L)UY^,(I_.(W/ M-7SVVQF8#(/P.,ZS_K"3E/K%P'?UJ//-O_S><:/CJYXRUSXUT5[XZR/:Q!%$ M-/[M1ZHRU?3F5%S_F49;;"!2269@<-PY3JD/DDK&"")(<:.I8Y\QWKCZT/'@ MZ@G.]![OAAN/+\Q#Z>='K@^Z7>8KYN:,&7"0IC+A(DI M$S8&V+@[]\#=%4:XWIRV+"B[?\5F/O8/V[GYM>Z_Y;JMU6-MJ[=0./KPZ:.PTMO8;NP>5A[OM MO=;.;NM@=R<^0NM@[VUC9ZL=?SEHQW^:NZWV06WO=?%T^[M_Q^L:'W=K;_<. MJO]J=7W+?XT,M3/?@2L6VR-;"SLM,T/?GX[0GJ*?4,<9Z ;\+))E\\P<1G M!2;>(I;C]P1[!M7OWXY4]9[O,7CGNZX$W9IE4E%\0$B7.ZFS#9;?Z;9_8/TS M>+Z7XB17I:^?XDX98\GC^ [DG5P'[;@E^UHS7G<\K.W&G=H57+RI!_:X1E#] MAN&XXB):[)6S5/RO]II(7O*[!*GN\L!W$/!:31R>IC"WS;AB1K(.S; 49EE/ M\UAZT[]OC1U3:Q^2S^6S9VM9OZ;AH'6)ZE2H0N/:5NN]:':N0D4-TKS\@IN7 MK[^V/C7CM?O'K7A="O\OCHT\-U,*'EWOMK8NC3[NL^>;P^]&;_=#:AK@($QW '\V3#ZQYV?QL.?$I M.Q48SQV@(OZ0@0D !3.*DT(4#!N!B4T4P3.+=BY+GD^!UTN>@WG[)&G6\_ MFT#_E5CWO^NUGA]'1?6/%T_YQ.LLSSHW#\L<)G..@YR3K3G>P%65U>)U?Q!_ M[=7L^6#@>_:B-AK$NW6+?:6F70H9I\C_4[9)?UYYAV8L*UA2^W%MN)O4I@#E M[>N8?(WLC%?F]F1AMM.Z' ]QJ^?:OU;IUL]%VO*CO=#6/S*UF1NUZ91--^0, MXHX8H 4R@#*$@?9: (V)0$2GAN@V41M,18G:_)__01R^7&'[;CRA][ QR%>>C?KU7U6E!MOQ 5['\?^=AO\F/E7ZXRL?=WV_[VU7#X>=$$64QIP5?T;% MOX#?;RG^-_?F(W5__[=[A+O?S$G_^]%)][AUVJ"'I[OI? !LG1S'9WS_O?FF M$9^W\:-UNGMY>-*\:+Z6M+GUV4AB@D46!,(#B(L# Z6=!0@AHBRG2FJZL5E& MC9KNN9G6X')VI+P85V8QMK8^1TA"7%$(<#K31SE'P$CC &.9M2FCO7MQ*\WW*;J+<.WYQL0T6=F]"D9O\$187 P MP-JBBIB$<2]3$C"A-/,J;CJ4;&Q25)&6\_.&I/54]<>E&%G!*Z3@)2/7**^5 M8!(08A"@B&A@#'8 ,QY)JZ=:2+VQR5@Y+6%&W]8][=-+$C6AUV,O69;S?:XGWWG^F%#)F40*,D-K3ZD@+5'SE MN*/!Q8TB,+UN)FY>AI5:AJ3Y_;/0"#,C W!&J[@,G0?2.0RP(=A HRRS?&-S M2M.'N=FV.>2[9H2W>MO=+ZI[/_=^REZR=PET07DL *,A MTE>5RN(3&P"22#GM+=3>;6PJ4B$]?^J!W=NZD"S89,JFE]V.-IUN9W1Q+7=O MN-(F<$GS?SY7RH;?VMMNO!L_^U;/%?=YUQ^.!G[4&10EBUZ-P]GONG'",U[, MB!<'?PZ_';:WR%Z[VTVAMZ,W#1B?DQY^>L^.3HZZS=/6UZ/3W1_-]N[ET4=) MHZ%LH(4.13(A DO]Z)@'&G((&%,.!QNX,^G<3R4,Y;Q&G]X:_='<^?!9QLW/ M(&8 IB)$,SHH8!QT0 5JK2.$!*QIU/^ @J$BM@F;8L[C]>4K2Q2N?B6"N"Y]5/_,OGW.:-U<_9U*S*U*=.0I(\-R8B<9&1:!#*4^%XAXI+A%0&D2D8%!#F04 M*A X90$YKRS'"1F$*,=-JH<,:U_ZXZT?#F\1O,F)N$D!$'VM7DX*EO1N5,PI M^B:DDCFY*L@C%NU8V#V>3FV/JX*2=UW?V>)9VZR/:A@U<4'^XBIW*U*6J@12%2E;+':96K+&9E?@0[)"OS MHI6Y9'<(J A2S(.@C (46QSM#BNB1ANDJ<=&,YAJO%=#F>=D5ZP T5ID$;5U M,Q^>?!#PT3(![E\J::8RLAG49P#U9IFA04F6$7(KX:7;0KN7Z%XAN^YP_?[,J.S3@>) M#01,: \H90I(Y#0(ECJL;(1S&=4%E>%[?K'!5?7&K14<+),!9A!X7! H<3CE M):-2BG2()(( HA9(@S3 #&O$$$9,I%H,#^9PCX($:Y\BL%U*_RP1O7'']/XP M*D@M7:Y[%T_9H?>GYYLLR$D;;Q(7GNN?IZDL%N4#<'Z%.V#-4.ZK8_/7"K!OXN>%?Z*6TMD_!Y^)A#^[;OP&?KM M>_]T5\6>02GO=-L_&)\/+>MS>X4N">/O7BVB2D9U<<<7G5'\*GM'CUCH]T>] M_LBO\E[P^J1YZ;ZV+BT\/&VPUN5[#P4WP'OR>MR_W.XUHE*M/PQ?;EE[?GK>U2/O:OTI M[523VZ2X%+U,?.!G4:J^B0MQI2H_VIUV>IWA M*/4VCC>=U*CZ>>/OG=%QIU>+7U_;[O=<>L^E5\5.5 SM8!3_&1>^BF/_U27Y M6;$W7CWNYHU]\9\WG@G>IDWO5AZ:]K=MZ(YW>43@*7:E=IQ);>W8HY6$ MD&9G+*@XF!3/_#+0W=J9'HSKAAW[X6^G_G6GIWNV$R__)81GOYV0R3 (C^,\ MZP\[24HO!KY;"'ZR;TUPX]JG)KL>_/41;>((SD>__TA5IIK=POAK/]-H"T"4 M2C(#@^/.<4I]D%0R1A!!BAM-'?N,V<;5AXX'O_:$+QZ8@==?@4ZE$5_H[G=] M,=QX?G,%QN5W?=+O,%]_)$PAS&7"Q)0)&ZM(M"+Z8PU^$_WFN-ZZ^UL]LZV-V)C] ZV'O;V-EJQU\. MVO&?YFZK?5#;>UW;WCKXN_;Z[=ZGZC_/7Q]Z^MQU(OK^N_IC;:2-NW\>[^&& M_UZ.(131[AD<(]ZLEI!@S_ =;9;9WJ.*SMW 0O$QT7T'M)3!DGE:@W<(J_WQ M4G47DVNL4(_C+I1W*V@3]R-?:\;KCH>UW;A-N8*7-O7 'M<(JI>)[^-,YS7W M^ Q'VJL]URD@=9^*E-')ZV$&_;!L6,5&)MSB*GQ7W?'_3UL1( UBC= MM\3VQPDA/QE@[?7^7K.V]VYW?ZO=:+VI;6VW&Q\;[.SB\MV^74:.Q7X3/Z%3N\\SN O#VB\HGN>)G6F MTSRK$-IM'5RY\ULGS9W77X_:NQ=[;_Y[$J__WOS4.F[MN$[KTX?OAY>6[+5= M?/_++W?^R7\[>SL->+3SA1V>V.]Q;)='GQJLN?,!'9T=J@S9/]KWL[W4[K%\=^\O5[J_WQM'7B.LW+..[VX8^CD_W0.H 7 MM]WYDA)L,(5 0)7<^90"C1E.,5X9UXA!DJ83W74DR@TG5[FC;,:W=<6WQ>6? M9'RK/+[!V_B&)?+4,0$PX2:A&@&*17S34>R2:B=L)VN+_H"%8GO\:\V==0]&_2_=9QW-7-1^^L\Q?HZO7_7^F-M M2\':U.>B,^KX83:$'L$0*I8S$55>6SL^^,&@6"A%7<61_N$78AZM>>F :M@3 M5](<[[MM_6-WG(HQZ0R0-\ZY;9P79<. 2..-"Q!8;36@7)*X9_H (J-"RB(H MN?%% CUY2(G9ZAD&6;,?@4G_4;.S\LZBO"76:Z%F E()?(C4-ZX$!31##$AL M3,1I8RSD&YM,E(OZK#+G70F"P%A?*6=>S\.0RJYQ=%UVF'O-"K[WM M,O4001(M=.0:<5-))6,%D"X5)!/$64N@DYHFGR2#\SJ\OJ+%*M9;@^=>DB)K M\((TN,0_N,6">,Z , $#BH(#2D0+@BCK+".!04&2\:"FG!=;^;[>*T!#MDZ3 M?_KR_C3D:1M1RZ0AU[HH]@?7Y9@1;6Z(-B5.BN-*<-PI0'2*CCHM@:): B] MT-Y0+QTM>G$]O*!.]HE45YWGSDFR.C^&.I<("K'(2.!>N_][WAE=U#J]JR!5/TQJN/XZ MQMCI??.3&&GV$JU8]"H,1X,78R&G5)&QBWNKY_;]J=?#\W%SZS>ZT\L@/@.( M-Q. ERK7$R0),U$T!'(0H=L!C=.O0A%KI>;8IR)/#ZGPE!U$%5;>^0>HLO(N M2GE;I9I"4$F%E 28VZB\-K412B4E(&&:$*&MI'IC\T'EV;)OZ#X*F);WO\>9 M6%']AG&5#XNZ&(FV]>.O156+LT'*PQI=U&N1RO5&]>(*'Q7G;.&-AM;3"'UD MTG+3"DTB3WBWUSN(XMX+[R;2?9=DNWLEU8QY,V%>HTQ8#%+6!RR!BR(#U!$. M=!10)"Q!A52OV:.45%.1L'Q6W.IYCWZ34),5>"$*7"(MWBFO.'/ *^D!9U78'3*%$_EI'QOF!-M5B_"=7"L M!_Y5DN+V-2%F[)H)NYIE\A&0T]!B#Y0(D7P@C8 ,% %-XEYC$72!1?(AY8,[ M_66?276U=>X!K*RM<]'6,M,('#%I"6!QI0(J$ <*&@2BA2 ,)D$)B2/38#F! M9AD:]W;B'='#H1_57">%:SJC\T$^;51YLG%'"^K5^3 .=#C,.$4Q\Q#J5.N+YQRS"CGU:R-7L^=EMQ-G4/GAW?@ MT@_Z69-GU.0284'&0!-H % + 2CE!!@O+ A2"\>)U-Z9U() 8H1?5DB7:GXR6J0D-*LY06>.%H*B:"@98V>2DC M62$)O7W1NA:A!Y_TRY'4>ZAKH_?-]T;]02>'3E>?JUP39H:U^<':US)UB82% M1/S" &(. <4P .,E P)*08,@G" >88W5&<_9Y&NJT(_@8LD*O2"%+O$43;E7 M#D, N8\*K3T'*F5#4.>A=-1"I&URJ0A9D48,3\>ELC=N-7T^&$1=R'Z5->$J MA52WQT(M#+%A!K%90.QD:\KY-BF4IR%:5RB(:&Q%$)-$)582L#32"$DC*Q'J M(1"6'2H5UMM'H"33]#8SD_DI=8F9&,@0-!P!9A4%E$ &C$(>(,LP"<'!$'!B M)IR6<]&K>%:_>GE:"\SH6EF_T)ATI<)(#^==V:2L&N]J_91KAO!Y0_B4N@/) M2>1D*H_$O 24,@VD=3HR-$>\(Y;1Q,M2N;MR4DYV%E56LRL:ZOJ-AF> M?87+;K%<>6%M]/H1$Z*S7B] K\L%+#61E*>D(DA5RAZ,&AYTRHGV<4%3CBWT MA5],EO,'>CW=5WG7TH&3*MY,SGA<9V69"M@]3&(NUV-L4 MMV.& 2H5 I*D6!Z7VB+A.!-R8U/ A]3FSZXM/;I M6;=_X7W-C%LDYP2D]6$SNQ/9[OMNZO[R]E>QB@R$\P/"PRGGO[2+9 8)P#GE M@&K$080_" 1B)%IPU @*-S9YGLH M@#+E5B..@/&0 4=5!'9MA"$F>6K0@W*K3SFWS[TD#BH)F*<>4!D@D(1[X+4QE*?^#$ZEHJ&J*F=ELI*O,F_+ M2OX(2EXB;1C9H#0W@%-)0<1N R2V$FBG$0X<$:-"4G(B*N*&?CH.JC&SZ?9[ M7\#(#TX?S&V>MKE:K=R@6\F;&>\6@G=33O0S99$VF &.92I&Y!0P$"F@H0Z& MI5/]3A2%2J8!;P2'JF9B%6U2XFW_*AF]? XM;C]UG'>U@C>F$<#3Y/ Z &26"\L\!!IY Q7EHK4G!.D3)$ MWB]+XUU_M[S5JC]7'W MH-UHO:EM;;<;'QOMQN[!TGO/_'8%5Z8KS8PC?#K1Y+C7Q!ERPUH8]$]KT6ZO M#>/64>N'9*<4O=[KM;/4[;T^SA>\ZOF^;-MD!3G&,LV/*S&_CE(>=ZY[-Q'O MNR38]$726S#=G_+1AD.?(:[ M^<#=E%(2!B(JF7+ AY3XAI$'6A(%-/;6&1&E&B)AX>HA5;QR<+C"VCM_MC*# M]F9/YOQ4N]RGAM*@C!2 *2B2:@L@L3& <4:ED9914D2$Q8/Z.50T(EQM'G/3 M]6(FG>1KR 5Y!V*N*EV6G\\T/1P4[W0NO)L+-@9MYPMV4$A,( M&Z$T8<#0= 8=&@:D<@A8!BD)PDO#9#J#3F@9[K+W96TT>Z'>EZS9CZ#9)2(3 MD1JSJ,N (!UM%$8LT YKP&1PB!#-$,)%'JMB%=+L''J]$TEG M[LW17EVW_)P*INXUKL2>LW(6L078,KD307!(J %4ILJ( DM@I+/ *LHECZ*A M%A:5$?F\*IY6)G4O0T-5_%RSI>Y-!8F, S/A0+GN!O=!($2!YM@D'-! 4V< M,Q92(9V26DXQX)R M\Y8WPJ<3Z-[W9Y,P2LK'<][D(/:*!;%_27 O%( MDD*7#^5$2!:.0N!UHOV:I+*:3@,KC!:(4:H-34EY=:G6\'1SM:G*S5CVO:E* M#G!5(73=& [/=<_Z#'$+A;C=*96#I>/":@>H,AQ0& 10R!$@D=9:4AK%S3 MIV,%K!Z1NT+J_71]E-4;<'ZT)^4";*>*6N>#B_B]??NUIE,R]4-R0[/K8.D' M6E[W!_O^['Q@C_4P[L';_=/3?N\@B3=OL#-ML-/2/WDD21P1H"+9 90%'%]A M"[A2/%AFL:$ZN0CR098UU=J%'63)6CLWK2VG=EH*K>8!2.XB+89: ".S M#W-E?9C-3J\_Z(PN#H[UP!_WN\X/EZ>]TK&3H_(K>_](-^UN<9];G$O"PC1G(9 M25<(!-#TR@BH@?42"H4\5P1N1-V5&.&7%=+I)WCVY-=YD^NG4$*GIWLVGSVI MBOVYN"9AOTDP?WVU /(IE$5@YI0N8C!=>7SV92J.+JJRQMW0_"V\&WY'_98][[XVD"/?&W\NJB75]#*5".O M>)$*Y7V+$- ;+;WJS)\/A*SGYC!WA]AX$>R%WI3>V>N[F'ZY=V>C9[GF2P4Y1IDAWWT0)GL5/Q-_3PW1ZY]Y-&A;T M>]GE-M.^TIYRC(%$9H"T8D 9&DUT2 )0FB' )8=0!X4I49%NSBT?\&[*MT+. MN*>*)G.GFAE-5@Y-RBQ5.6514,!A; &5*K)4Z"Q0R@9,+*,>T3D6-EXLF*Q1 M\X_?.__KZ+3]YWY?:;$TR]CM-C[,[X.1-^3CF@ M(:'!&B8Y!\*BE8\$B-R, @X514A:XGC$S\C)JI&JDJ&@@@EF%8&"[ V<'TZ4 M>!8DS/ (%D &K%/991QQPC$@)!;:61R,U\D;6)FSYVOO$-O^'7>JZ5'-^"^= M7B^%45/CJT*7ENT$6T$*N 0Q5'5 MF0;:1+/(.\Z"#@:SI.H(UHFHDJZOO0/I'TF/CW]_&-WY@]EX[P#VGQ%QVC0O M%1#_-;?H_*.8 DBOM@&[A#3S-M 1;:! M*8U/$<;22,Q!"-8"JI0&ABL*&(NV+X^H34A(C(]/*.".8=N M_WNMTQLK3912E:HZDRA4US\W75_9LLYW&N+3*>K2F!POKIWISE(,KR= *]:3 M/,P]0_1J*;Z+*['E8"T@X3GV6 M49WB!_:ED IX\Y,N%/.^F14:,4="$A%>P1:#Q2W%GC$ M#-/"0PQ3UB>?ES52(9MC)>B@[9_ZVDC_B/<<>.L[W_Q"T@_NR-C'. M14L>Q*T. Y4ZTA HI!9:,^I2!]I5Q\EU/_C_?*3C?,5_7>?;YG_BCZM/7)LF MZY,5.D&0S?^8P?/-GS)<\,<>$:]P463\V->TC6@1O_LB)4'W^J-X=SV(?^X5 MQ3"_#'2W=J8'14&!T;$?^MIVO^=\+]6DBJ^*>),>Q5\FA4?BY0>C^(>B=NZS MW\[ 9!B$QW&>]<>%S5\,?%>/H@WT\GO'C8ZO_!'7/C51"OCK(]K$$9R/?O^1 MJDPUOSD5UW^FT1:H+)5D!@;'G>.4^B"I9(P@@A0WFCKV&X$Q_ M\< ,O/X*=(@/^$)WO^N+X<;S&_-PVNF!ZY-^A_DZ.1^..N'B]Q,6PEPFK-1C M-4[8&+?B=MWUWD%[=[^VO==\M]4ZK&VU=FH''UX=-'8:6_N-W8/* MP]WV7FMGMW6PNQ,?H76P][:QL]6.OQRTXS_-W5;[H+;W.OZVM_W__MY[N[.[ M?U#4/Q0O:[OO/S3:AY5_OK\^]/2YZT0T_G?UQ[K3[W;U8)A.-X^.^^?Q7FXX MV["+O?S7UE 0(YON>C;T+ZY>O+SB IU>,8CB0R]/]>!+!,3)?L+.RD[!]'WC MMW]!Y3,XALL)09I\\^3M9\5;MUC>Y#WQ#!/RV[?A,W3/]PAC]_KD/PXV/B:Z M[X#R8/-@\V#7;;#\3K?]@^TX0V;1GR]5I6NG^,S&&\7C.(CDGWCDN*E3I(N^ MUHS7'0]KN[U4RK>I!_:X1E"]EKSE-YP%CSFAOWRB=\TGK/9,C]NT%%9XT:OE M+E&U/S[YTYF^Y#<$G?'\;>NSSDAW\PS.-(/[?J3C'UTQA;MZD,Z8WZE:3Y[# M4@^\K,;WG, M:\]/S[N%?ZYH^3I6Z/[IV< ?^]ZP\\W7WO:'>5W.-JVM&TV# MBCF]RES*,SF;AO='A<,XJO:DYHCS6=U\1FVA&9V80>@T4Y +3351!HGX%QYG@V'!!;QK=9;K M&CW6XI\5J=[U!VD46Z/1H&/."W=I M20[;[U'KS7\[>^W_GAZ>=$]:E]UN$=(^_7[KBU\P$> MGC98\_2HD^ZU]^EC$=(^:G=#LP,OBI#U ?S1//G FI?-SUH*:CGWP%GD4MMQ MG;K\>! "-% C;0+$&YL(/;CG>#Z4FP&O.D\]RZ%1D-.J,6&2. $DH!Z8X'VA@$),42!Q(V/IAP>5">P M7)LO V(&Q*< B!+RB(=:&$4D=5QK3X637ELHL( ,9T!<64#$MP$1&ARE:E-S M"2D Y0H!)8,'U!+MB<8BJ%2\"Y,ZFML)H8R(&1$K\-2S9&H[2*2ERD,!(64F M**M2+1?CG1;8,/%[2/Q-@G;&QLIA([V-C<(0G"0-/$(8T%3,66,O@-+&1J9H MA)6RJ.1"RRTSYM?K,8-B!L5J@J+B*$ 3K6=H)"44:L2EBZQ!$N2"9SR#XNJ# MXH_F[6,PDBBB;;2>K=0J,D9*@!3!ICZX,.J&(@ZIC4V,(F$L%[+(L)AA<15A M<9;J]E0SS)/GD 4:1(B&,Q,4>Q580-KY'#^I-M[=/B%M@D9(8A513K!4/\-& M"]DI@#114;C&@$3?("Y_:>1 - MJ'4(*,X\P!XCRI%C6,.-341$G2FY$I"XQ@>>\Y75O_*1ZNLN=3-)O4R[=TPR MS>V@[SBI19HD?EG%YKQ9M%FT6;0/=K!R1:S@R""E& W(&AB,4-PYI)ETQMV_ MSMJ[03]T1BGO/]/E>='E2)5+X77I*%91+"#^E( *(8"AT #MC$10<*>52TU1 M$"NWQKIOV:"L^)54_(SI6;19M*LFVEFV:^%]\)9*[;RCT!DM/6%"!F@"]?'E M?+;KO"//LB.7_?G(4*.PY2!*A@&*. /26 ($P51ZHZ3B=F,3E9/=\G[\9#5[ M<06/,Q%?C-J7_-8^$,B#U8!*8@&EQ '#-08$^BA(;3W2LF#BHGP2JF*:_Q0. MP!9'U6OVQC'U3E'4ME[K^7$I2OWC?JVX_A#;S/?(]\CW>,1[/(4(R+N$89%D M=#O:=+J=T45-NU1<-=7(77949 7)VX,L[A5EWUE,64Q93%E,64S5%M,,?H5@ ML8*:2^:AH@(A[5'@"C%J&&7!ROO[%0K[Z4:5KW%+D!T?4DFZ5[X77XS>=>-S M;OTD(BT_V@MM_6-JMMT[/8B79$?$+(Z(:>*X(/)?\Q-ASA@+10!&- !7! 4F9 M!-(0BK&)'"FO17VW>GA<"]W^]]JQ=U_\ MTH^9KR"$YN!5%E,64Q93%E,64]7$-,M)K M^N,K'\FZW_>VJX?#3HBS6=#Z,/*#R/(S6Y^!K>]M3W'J:. "YT9I9@@1.UCPJ5R&;^3Q7UO4,R5E,E3L\FR%YN9!<4KJ[O\YIXVZCK?ED-6&L/A M>>JFG8H&_):W#(_UP _G2UT:K==3:URG 7FW1F?Z_1#'/>KT^;)JTZSN-_A9TZ1BBL+ VA"9#D0AU0,VP,+G0L>"ZD% MV]@DN"YE.9:<:EJK^EN1O8/FC[I[[&5$Y&X]W0^62 M\2B"DU"P5(G-\6@\^A1]YQSX"*K<.AV\&$??"7]X7ZFLX!F'LYCNF4:)'&/8 M>^$PI XQ!14,%FE/.8-:TIESJ#+Z/CKZ[I7./3I*G$8.:"T2J14&R" %$#3" M,N,^>(03^D)>1M^LV]76[0S!64Q93.L5^[KCGIFWQ=E<1>WW1?^&N#5>M-I? M+YO?/UN5CHT(#8@R'E K.3!(&^"D(I39E&GBX\8HYM #/&<#WTT#B[4/C!YZ M5Y2(];UA$;\YWV(]Q?2X3K*;.\VO$RK#=G\K3ET:@>Z^TQW7Z&WKL\Y( M=XOX1:&0V]?T<=__[WEGV!GY S_XUK%^O$7M>]O_TBON4NQ6>9.::9-J3/&< M:>&QE P8%@2@$KKXRA;5:R3UQH; V<;FM&A$UOMJZWV&YRRF+*8LIBRF+*:J MB6F9IZXS)ZT8)YWB.%'8<&&1!@;)R$HA"4!9*8&!U%L<_R-"5XV5YI3,?&5U M4S*K-^!\Y3I=^10*R;[2W90+7*\U]< >UPBJUQ+E6$3AV#]];M(E;CP=+TC< MLES_W'3]N%/< YHM5F[2_S5K)&0N4[,V])FB8)66, 1,*.566B<#480%I1PF M\G-CACR;XWXW3MYP-]+@T46C9[OG:<:F%AUJ]7MI'(-^-P[_2R..:."'N0[9 M;-SXPZA4AXQ9':T@C %5G@!J P-1G@0HC3!/OGO/^,8F0O.J,C0/;5IR3D'& MTHRE<\%2K26F5&)D&*7$!XV%@$X[C9@1U(3'QM*$4PS5B[PEA[F]1ZKZ-4J0>.2Q>Q%D-@N&/ QIV5.FNY3$D("*,Z1/.J MLIW!-H/M6H/M++G&0E).4> F*$^EP5IRR"115BMEL#*_1]M_2C'.L%LIV"V= MVS$L6(43['IL ;50 665 %H(*ZDEZ?#DQB:K(U&.L\V1K][(^+<&)OF[^ MQPR>;]XLNO>'CQ5?\7,JQL\4IZ&KSX;^Q=6+EU?Y=IU>H;3%AUZ>ZL&73N]J M?MA9Z9&*[QN__?)[QXV.DYH_@V-5GV3J3;YY\O:SXJU; IJ\)YYA0G[[-GR& M[OD>8>Q>G_S'P<;'1/<=4!YL'FP>[+H-EM_IMG](8O[C8:U9+E6E:Z?PYO%& M\3@L4=XBB6(J26P?#[RO->-UQ\/:;L]Y=S,;&M_8YQ]S0G^917?E!M6>Z>VB MV&_!*0J:?)#W3&\S'/F= M^F/F.?P%EP.OA^>#BZS&]YS +6O/3\^[>A0WFJ)GSUBAKS?NJ:7V/'E:9YK6 MFXZ48DZOO"EY)F?3\'[<66K7'5E%#0+Q<@R;A5-K%DZT7B?E=KSUI\8/KN@A M6N)AN2?MN'XRKNFXR!3RQB%+!:4*:R+C&F1(.N*=$^- 'T(X!_KN[GT^V?W1 MQ.^_[[7_VVGBCW%L^]W6F_\>'^*CX\-/'\C1I^9EZ_+]1?/T]?%M[W.SO7MY MM+/%FJ>-RZ-/[W'K3?(^OSXYBM<>M5U\CB9I[30N#C^]#LT.O"@2U [@C^;) M!]:\;'XF B=)*N I0RDU& .#C0-Q:1LF!>8(+>*\VUK$\3+@/07 "SY(+2@3 M3JD(>%P3YY!F)OZ"");\L0%O[6-QCX>&\#8:.H\H]@@#8ID$5$@-M+<2.(8H M%1#AN,-M;%)2QP)G0,R ^"0!T1(6.'82,2HI%LX$@Y1&A&D#C:$R ^+* B*^ M#8B,<,LPY8"JX &500.CM #$&&F@LM 7)\>XK M",B)F1%P?1)SEO('"''(A MI3,84N5I*OV"@H>!8!^HMK^'Q'S>8%6PD=[&1DQ(.L?%@58V'>^2'AB/&(#2 M61>\\EJD[A.PCH2:VV&#C(I5P8>,BG^LC<5LA#\3@4]I&K22"F%)!&,T4HHX M)QD55Q\5?]SNX/Q9*N69IP@8[1"@Q'@@/3> DZ@'FEFH9.I6)^N2EH\.9%C, ML+B*L#@#*AK%4)#!.XT0Y18:& )2BCL'83JFF ,HU<:[V\55%%=0.8A2US$( M*,U[AVS3!?9ZNC55@V5FT6;1/C'1SN1@ MI5A(B[$-A%#)B3:!.@8=HH$$#771NPM?]>[",]2[>C?HA\XH)?YGNCPONARI M4!JHUQ)YIY%.12NW,?+;KO"//LB.7_?G.&6EGO'01*< (HU1Y(Y!" W)+(R[%0/!1,7%:>B3^%$[#%6?7X M=-?/J2+11R&S??(]\CW>,1[/(7XQ[N$8)%B=#O:=+J= MT45-NY/SX>C4]^Y4+V*1I&X%J=N#[.T5Y=Y93%E,64Q93%E,U1;3#%X%+H/U ME'(G4/P9I!0",IO:XF+#*2+W]RH4UM.-(E^-7K2E_(X/J2+=*]^++T;ONO$Y MMWX2D98?[86V_C$UU^Z='L1+LAMB%C?$M-,3FAE-N!5 !R< -1H#I1 %5D," M+256X;"Q25UOO,SROA)@JX?3-\%P1>"YYB94F$ FM0?QI 94$ >44 M A0[R!AD"!)9,7A^"M[@U_U!_+57L^>#N,[M16TTB'?KZD*%'^A*N:M_ZY_P M<,J4K@@>WF_;FKZ$EGD@*8LIBRF+*8LIBVE]Q#1+AL;C^U(FG&1[0DG:B9&, MQ[G5<^U?_"0S^(4Q^(LI#A9,F7,T4G9LL )4, B4M Y0#@71'#H&T<:FXG.H M39&1H()6^QR2,+/^KY#^WT[O-%1SA!4$'/M4\!I:H!#1@$!!J:."*J,W-N6\ MNMIF#*@B&WA\UUU&@RJ@0O3N1MW3X:OM2#M>1];Q=R(=;R(7 M27]\Y4-D]?O>=O5PV EQ#@NB'D9^$'E[)N0;^QJ>;5I3$K>L;C+*95.3F6\7C1>%SREQ 0ZWY:S532&PW/=LS[5J?OMMC$\U@,_G._. MT6B]GMI4*0W(NYWS09S&=_&9^NZ@^/;XO,5;=RP^"?->\>>F26F/N+57Q/MU M_=_[%T>?W)G!E!_MO#YN71Y>'+WYV&U=;L7Y^4";)U]_'.V\_W%X^0$?M1OQ MWSBR-^E^AY^IUD8BYP&V,&XU2F"@L,1 ,F.XCGN-Y&ICD] ZI>5$QE1$\30N MO/%Z^UD_>Z%226 BQ,-+ F<%SSB[C+%93%E,535)%A=;R)OB0GQ![?=%1\"X,5ZTVE\OF]\_"R<5,D$# M;Z/Q08.60&'N@ Q,&>6L0DYN;!(EJV%U/(4DRV+M Z.'WA5-1WQO6(3+OIY@>UPMVH?6_[7WK%78K=*F]2,VU2C;)K#'O(*&<<:*("H,A MH!14@'E-I!02Q=UI8Q.S\A:5];[:>I_A.8LIBRF+*8LIBZEJ8EKF>=3,22O& M2: HU E'6&F@;D$(2/>X_? MK2OY5*Y8N4G_USU;LC]L:M:&/BN"'4=:>JHL]49)+0C2@6C-+9.8?&[,D$AS MW._&R1ON1AH\NFCT;/<\S=C4NK:M?B^-8]#OQN%_:<01#?PPU[F=C1M_&)6J M7CLKJ<)2 XXH!E0Z!PRC!$ JK!=0$\'IQB9"\RK>,@]M6G).0<;2C*7S"8\) MRPRB!CM$J#-0*VN1QM+$/_M@V6-C:/S^1RI&O!? =L"M@5L%YMKK%14P9A$O<( N]%R0I0C3"GO%%@Z MWT?;'Z48%]A=*MB=.;5#C$PJ48)HHC&;N!9I823"A%#+F0A,^;4-TZ#X+E5S M"MX6O"UX>PUOG38N1#4Z;(/MN18NCV+I2JY$!ERUBBP7I5!&B>*)"=&2(V%UFQM0^@2 MG2UH6M!TL6BJ*+48;)A@).7".F.%Q#P9SH4P@C]X5D$Q6Q<)M3/IN(9*XX6, M""LB$=<"H%9IC;0-@,($&QUSTH$F#6F>0GRV3F;[O5YS$WH\^#%I\M2S?,Q+ M<"RO&__M^K]O7&75N[_;'A =:$:'W<-869^/3-ON.0QPU>T-X>FV#W_N5FUH MV4'?=JH3VZ]9!X>'<1"KE[UNB-U\UAI^JR?)#N'#ZW;7=GT;+G\_A#_4N?CK MWQV!<3.8A':>] 9UIOV+?NS4]83_.&N'X>$$P:;N&B\<_.T6ZZ %I\/OW[(L M0ZVN,3-._G-B# MB%P_VL_(9G[H%[9S9L\':[]?&8?C=A=-#_H-QBL?J6BG\^\/6$H+&3 U9\!& MP@UPW^O7QS1> )C$?KX*FF.7IBW583_KSO_Z^=0ID+:,/5F.7F:U"^+QW[_; MC7G+8@F7[]_K?ZY7KW?>[[YZ5[W<:?ZSV=JK-EM;U?L/?[[?WMK>?+?]ZOW2 MPUUK9_?5^VIW!WK0VGK5>O]J*__V?N?O[:W-7?CP>KNUV7JYO?EW]7X7_M!\ MU=I=_D[]]J%KP;@""/[/\K=U"XP\VQ^ :@%ETCN%9X5!HXI??A37]VP+1_7)/[HC4Q MN8]:Q_MO7A\VMSZ<[>V^HF ^'^U1>.['#W1GMREVP"2&^XZ:8$)?IW!NTOW/ M>Q]?G;5V_SQL[NZ!^=PZVCM^1?9W]T3SXC/?WWT+;03S>^NOE.]O;7XBREN6 MC$12!XPXX1X9%3T"\PGG#59'W-BA:G=/8]C,CHN+*C%),LFSX%1)S;T@)CI- M)(G*@/,2P8\YR0+:/P7%-L^$FEC>X]7Q?9ORZB)G5WWUGZKRNR[T^HDO\C'+ MMK\!$.0E/QZK>NV-EM3/Q^OJ^ ;#B:26&D,39][H0$$$+!8V:H5-NG1_[TNT M_K2#]F G;8()?9H;!@XN]/]\]/,Y"TQS\Y/PGCEK"+(Z) 1C2I"3VJ$4>/ P MH":EF0FU04F/HW14Y:/!T3'XE*A5RIL$_NIU@:G'/UM4TS@V*S'7%MN-_+)[ MEYA?D(^;K??9^WXZK+..X.G$J+B-NU<=VB^QB0M0?5;I@.@ M^(\WFYO_U+^2/_Y3\]]G=[7?/J[29G'9&SWF/_K_U:K/N$72@<][(#SRO M0B_[SO#@'.F"L>QTQ@[S3"-2KS<A$, R^=6/P MS9^N\D2=1]M'L9O#QU,3XD8'V<"*BG%86U'5F1U4X*F 1PVO[?>.J\FDW!I!,PV>KW:'LU2[Z3=S7V$;L/R!Y\T/[51WQ]!E([KR"E>>=N#E==$$:/D0G+A8'8/8 M' XJ&%=XQ97#@*P.B.1!F;P9!!Z>'.JJ3%_B9*8GSQT>VB&,P3FT $S;D^CK M(1^_+$]>?DENR!8\[MC%_FBE3=Z6)QE0[>VI[<."AC>]BR>]'(#I3JW3 5C/ MG9#? (Y_+2DP0$>GW5&4]W*A7UDA\V;]VI+,!:HB",1DV/*#1ZY?;P"-J5Z. M$*)FY%!_#*K-+@!-9TX+_]^9#L/#YO:7CE?0#[H\NC[WNP'=3=!$6.BUX(ZQ MX"PVQE P^J?]RS_E3N>VC;^:ZE7^MGY%WIOIP-3!_$)[X%5SAJ%^ M3AL&\;)^#;?<9;"^\=]&!-AR0G3?;!/J1FD>;'!P8 0Z,DR8@ M:R-'/#"&3/(2$:J5=U(Z%]2, T-% *-!A! L5TY:&'3JK<+21&J)G[''3@

UI MLGYXFO4B7!3 J!EA^F!$9S/61NZTW0GC+TY/LFCD&$SJVY$=!+>/3(OK^-[N M=GM?1DIN\MI:+7'2H3?D:3V%F>K!@!N.&@'(>#"M_",9$W8R#B1DR915-QO+8 M@B$(_PTJD'4[:@UHL1;T^;#:K%>A;53O>Z?3'U^=]GLG<=2JS4';SA^-P615 M@W$[,C=JF%DCIT=ML'*Z,, MPF+.BV!D V[49"I;@^/N\0%-[6(-%O=L\[L=PSL1> MT=_CL8179FLH#SPLQ2L3TACY&F#6-B9?U\6W1IWTL9_77]4;W0Z&UJBI(ZNX M;JB];KJ##?S#)7?%9\K1A?9X600 8.C=R%(;J=AJ%H7'2[,ULO'FC\'/O;L\ MDM"QT;NRF"[$^KN],SYO<_5^C8I,!P;# ? U"I2^&XGL:Q#BR1CO]J8'\%G; M&@>?$L=62HR183(B[IA FK. 3 #K55*JJ$K7;8>E5=*S*'L5Z?]/K0] NKM MO4MT.HMY%SU[F8")9]^\S9.:8&XP<5AC>'$["1B_9K(A7J=,9%_%G@SBB\DO M?TSH?-K=NE/U37]<]0S$R4S&1/W"T=??-HC7\6B3>$P$-'[S^.OU^JMK^1^C M[P19ETI]]VN\3G[Q.V[X+]WYH\82Z";YU0:5QCZIQM[LL3\AQ_HI">@M+C4S ME\Y)QQQM[#Y,\J&^4>[A;AU7:X[B:J^R#5 K[JNQM1L0;3WG\;E*1/: :VXJ M(_E[:7ES,O.6>\!;<5B]MYVI*KEW[/6S&KVQI3OEB?TS\K!^^[LW&,P<9"J+ MKBRZAUUT#U3J"$;UD9+YW]EVIU'M3@*$[4G$84Q=?:,5=EO2\I_==^.E]M3. MD-RZ_T_FH$C*QT1T"-1YQ;'Q5DD;+9/6)A=H4',#*C\Z,3(53LFIL;D)']O# MPY?C*/#E\9'-P2#"_\*N_;H2QT-^-?PR/AZ2V_ A'Q^![UX?[1^])?M'!WSG MX_;9WL6?A] ^L4>WQ<[N*W[]>,C.U@>XUXL6/*/YL77D M>=$YVCOZ+)J[AZG9QN$LBI8X M3XGE0OBU#UZ M:49BBIHBRJQ G!F-7*Z:1E,0P4B+-0MK&Q3@;E'%*0K<%;A;IH[? NX$4Y0* M3#0SD9MDK,161J.4I)0[QV]=O*>8?X\+A_0Z'/(H0Q+&(.*H1]SKA"R/ 8 Q MRLB2%#9*,/]80Y%9$K&"AP4/"Q[>!0^+^7>_>,>OXUWF(.:6A4R2""@G-4:& M1H^4YQC\7BIL/E=(&IB958&[!RK=\WBQT'_ZT=O!,*&8>) B(LPC!I]-!&2=X A'J54@RDH9UC88GY796U.0%G%= M0L6,*>"U-L2!>H3)'T)5;,"Q#UHICO2VQG@@NYDJ,542$;(D6<,XQ, M,AII1HC5UD;)\=J&,K/%'1]%,3_Y)*KWPQ@[E]&".G^J&6T^()P3S>XCA>I& MT#5G&%<$NFZ!7)+%J%5.+B&,6^NQBI&RI&C7>CD;/*21N1\]."&@'\B"!71T+4-*AN:R 7%4I=H=^B)2_IMC)0%B'HQ M4NY+;&<38#2VBH%O80P%(\4GBQSE L0VX1 QE92DM8V[Q Z*L"ZO6E8I*6)) M=(Y+3J*RDC@#(&Y]M,RE5&('*R;?,[$#:G$2BB7$K8(?W(/_@;U"D6:6%:62 M=@K4,FY@M:B$WB+IRZB6%R#JMU'+1:87)M,S@85@)1-@9B,6 D,\2 [:.UHD M50I"\01R[7/2*KE3S'^!TOSDT/;N8_\@Y_=5VK\E!H_-ZO SJG"+KCH M.,EA26,LY899 M2_(N$1$-OK#\C5)%K2!L0=A[0MAB5]\O@L[$PF2B7%G!D(\YCLV(0MHJ^,A- M\#"-QFN=[6K,:,'/@I\%/Q=[F#88XKBP1@7'F<&61\^)5SY:GJPD)1:Y8O@Z MF\?$#6:YLB]CG")N % M(&P) 3\*E,Z$@".ABB5.D+,R 90RAUPP'$D>DZ&)JL1E/KAF\&Q&Z*VSRQZ] M>._W0\<3MEOH7_PQ[I8K?_7*)SP%3[AKJW)EF8)'O[),P:-?6:;@T:\L4_#H M5]93\'M=LF!C4A?]6A6I7RT3LHPU)MY?K5?S6R<3VXX*!(U+3_2ZF>AUD(O^ MG75SY9TOL3$IT3>8JKGC>_V37*-^NF;%I&;-= 6=R\)"_=B9%.OY=N]AM.%_ M1I7XJC2N*#@N(Q7:_>B'G?-)$:GI$C^3ZD;G=5V:;XUR=C J>C.Y+C^_+F;3 MN"Q]-%VCIU'EHHZ39XU+;;A)29OLUP[J^H;CXJ#?"@Q=OFA4^'#2GRV,WENADQ+V>OOA2^F5?XIOGVDS5:.Q,,"I;DG"PND=5)(2^YB<8* M(Y):B<(WF[D(Z]0RR((X6^6FZL;KN'63"EO#G"?U_ KB*+%.Q/>_7L)**/=1 MMD4R=C^-I3=][.H80:6\S!W*I]P@$7-EIFAJX^C)E':X8?6?4A-CSL#1>U_< MCR PJW^V_)N+=V+_&+[;>O5U_^B M@7=XUCS>XTUXW][%OX?['_\];GU\>][ZN#VSS[M_U#G.'F-S]S6T+1RWMC;/ MX1EG^Q_WCUH?7W>@CV1_:QOZ,;\>AV:%8?,463"N?LDQ#I^[.T MOB_216IO([5S2IU)JRS#R"8*_J3P'AG-%&)1!^:4C8S@M0VF%I P7$RF)6[P MT[ORZ4>7AX>Q7_TVMEG_DS. !OO8+L6VJ3'MUWK26WUNKVKH86QQBL6[*)T MX7RN#&4%MP$E:D$7RLQZ*+U#C A&D\0F908ETM!4+0>#4A'L93]M_#-Q+A)[ M&XF=L5X9-XG2:)"W0H//J1-RF;'4!>58E PKSM8VA&1+3V*X\/W7D'!BZ/!.1Z"+W:T3B=OO#0]@]BJ:VX]%[&R!I)@V'_Q$Q8EJ$O(?)$,RE0S&X7)6- M"&54]C($G:TNNT0QMR+8CQHG_T7!+K)[&]F=\3>LU9%XPU"4,9.GQXAL$!(E M[14SE@=JP7)@^B[Q@1(M?WJAVIP95+D(:C5.PK1#^_47#:C%I,#-YVWY(77+ M\\J16\0 /1V5=9_9&I/?5UV+VN M[9]O#^/QH-7KUH>&>YU.'60;[1870W9ARG!.N!S,E12"Y2A1J1#7FB)'HT5< M>:<2!G-6UEG(BLQF(?]J,MX"A'(U,I0+/!=X7I+,FP+/JP#/,[Z*(R9@ZS3B M3GO$P44!7\5[I&+P!-2YMQK7AT3FT*H^&7A>4E_GQVPV^;,?"5HM80OAMQE# M"Y. /2>]03L_^$5-^-+^$K^1&?SOJP04XPG%WVZQ#N;N=/C]6V;.RCX2986^ M.A33/P_[WTY:'T3D^M%^1C9!6U_8SID]'ZS]?J5+Q^TNFAZ_&W3]IW0=*2VD M[VI.WT>2 SC:&R'T"Y#7V,]707/LTK2E.NQGW?5?;6VT<#@%&8+D/&:?0@A& M&#'261[$)[6VL5N?E.VE*FN@T6%9NS%OAJ_)SDAW.$*),M0Y#-Z+]_1D>YVIP, D(.R@\K6TSRAKAHSX53N?!Z! MSL])<%:)WH9J_=SI;>ZML3=CS7D43I*58L_XQ@^3S:<;DI \U<'8BCX>N]B? M'H^KW")//E3_SK8[C6HW^L,NO/&@'3/78C=4[V/_2]L_:LC^N8=\5CZBNCYE&KT]KU=7F%ZY&6)K2W^?$#WC_J=';>[!^WMMY] MWMG*S^]\WOO8/&_2#]"&_%\G-><$PB.WP@42D)38(RZ$0<9&CZA4 3-P%[P# MVY1(UL"8%$*. FW/&]J4(ER[E *)E@LE'7$R:JTB99QRYVMHHX06:'MP:)L) M(J?$"8.90HD1BS@!3]Q@)I&PUF',?&!1 +0IVB!D9:#MR>?T_M./W@Z&.5;F M^W$8JW_ZO7#J?Y%A[GGG]=T"V(31TLMH0.]C;K&SC 1+;!#1>^%9*C;;(P'; M' HU9I1S$6.4/)AK7(/A9H)3B."("3-&$4$!V#!O"'UG8"O)N,LKM,PF:[PD M J25TTBLMLKKD%(^6Z:4+=;(HPGMC#5B?) 4)XIL( YQ+$%H%8E(4A!9Z04A MN10SP;H!4+Q$0OOD@V;OAS%V+JV,.E[6C'9PVH]Y5Z.0$=PG@&&0"DVHMD9@ M+CBS&/,@M/HU22F? M'VA0)I?^R'*1V5^666EC#*"^ G.8N\ -CLH)^*"L(M*98G0\FLS.GOGA)D1+ M+3+,4<292]V;PCXQ MYB5.27%MA7->,BZ,DE(DGF*Q.!X'O5KS3ALKJH3U"C KVC,Q*JGGP"5O#+8<58$#38!4C%9* QQ"*Q?%H,CN; MN9^4E]Q;A&4TB'.*D9.&HTB(C)Y%ZL8RB[58(IE]\E&.W5RGL!S97=Y=]*=_ M)NP6B!^DE&""R:0TXT9H+2GUTAB5L&>$%2OML1!_3@:1I-C+9#7*N^WP(TD$ M;J=#7!&F>)38^CX^>D7CJ0Q!*$<%)2-8HP:4# M:YE[$Z(N]O*CH>>,O4PEQY0K@8C,$,H90S90BE00)DHK-"QS0$\I&HSI#T^A'2R?'/&YT-79HRXSO=:GP> S>J;)XTKIR9@D&$F3EU@Z'M#MNV MTSFOX$=]R27![M1QJS;\\_(P'@^CKUYU8__@_#*+O_K[[Y>5.QU "P:#ZK=< MEYSB/\87UY_('Z,ZG?_K5EMQPC+GF2.&\2"5(:#50PX4>T(%U^,S@HSAR1E! M_&/T^*??@^46ZC."6^TO$>9F>-J/.^G/<=.?.%G?+Y\A;&U]QJV+@[/F4?.\ ME>_9_!0QXS$0B6(T&&PLHY$AF"/ ]D2-II9BO;8!&,%GS\-7[6XNX5K/12.O MP*/HA[FV?6IW;:V MW1D?+LKK\#JK#T\'-_QXUR. MR4G5]6MGK^=2%M3+Y*>GNS-%]ZQ.NGI8-9^Z'_\E:U13.P#WJZ'FG69?VVCU MAK%BZ]6]'Q7_$KNG<4*YDE?/1YBBEP KL!KZ2W(T'#\!:^\BM/>. M__W_0=P/HVWGG[20="># 2)2S!X%-Y2Y9JA[SE MD7 ,2._,"$QA/<:PF0$M1*:48XD3*SA5S$H.RX_(((F53(;K1\G',S!K64TO M^[ED S]_T]66.4J$HM&SY!QG(:<,$^R4-M$[X8A;NR]>@IH]]+T_C.$T:X%Q MCP=_GC?M4:\_1H"_001J\H7GN^8N38F+YI$_;QU\LE&#_B4&:>](#M!K9)7T M".816Q-Q%'F0KU$3+*.]/8^Z8'!Z#$@+#QE,V]Y9\1#UQR!KH5IW#3*#P7%> M*-DRRBNE5A6#D8%=Y7WY@U[__ :,!C=S1PKO0>$]N#GOP4JQ03T,/X-934J" MW<-^C%43KCL<@!?V\#1 M>U_5,_;58H3/<,YMD MW@'A06H=A-'8.*Y\L$S1&Y>*N6$ 8KOK.Z=Y'//^%OPO[-JO*Q$]_%7W<;S) M=2!:;SZP_=UWG2;=(_ .N&:_W;SX"YS#5U_AO8+$PV$IG#K0IX%#Q\7#ZDH84*T-,\F0M_%4[6W1)_S>5,5"3 &;JZ\QY7PX8W2M#E#%,61Z= M9IXS[760"7M"(F,<$SI_3Z.@][*B]_DU:_9H\Q-6A@:G%6(N[^!Y,&D=EA'1 M**7C21H3PMJ&;K"[GX,NIY*65]!!EA7#-+'$+1?16*8I<8EH['%,O)AIJR;H M,V8:IMD:,Q'QI,!MM5IH%0>3:!J$-+&;+G2Z;I#\!2^P')\R) M66:3[#%XF6]#6'&W(,-*H[B1V!II.!::<\6Q55HK)HT. 2<0]F*NK1**7SU% M_OD<^O!IT-R LD^*:*."]UI(PUBQ]%8,(V8L/0D6.]%,(BT(0]R1@(P4& P_ M0R*GGOF8 "-80RWZ$$X)R#U00.Y1P6:&U/C/TW8GM_[1@W'/&-8QU1@3:0CC MCD>/+1B 6 :.M2/&X1*I6RU8OW(T'6!]Z^VGF#RU6D04F&69(.VS -HQ;%,58LOX=-MGQ4K!F= MB%QL48M"57O3O5C!<= :RQ04-YEGVB=A,+781:%,*A;>2J%W^YJ%M[OYR3"9 MO):9E#H7BOA/6X)@N$<%MD?1%$X8)'B++MCX6G.!@ M/([:".)L,A$37>RT%9/T&3LM.G#EE,*Y1B%!/'*&-&8186(TIY1Z'E6FP,!\ M41&Z8HK=.@AWX[W8Y8K&+4N)L6?L:,=(//9:>>7 :./8)D:2M$HGFSA-I)AJ M*P7@Y[.F&C>)8FDYDCXDQ(W,I9"808[') BG.@B_MD%Y@^I%U3\JP;@GA1%: M5P0:6R (;%"S_&?DBJ3_LJ3[Z*P2B1H< T]".TPCHT(Y:CVAI,3F5DW29\]( M""E48!(QB4'2)XQ1'W..$K+<2<4QR]%5CQ?3:!I4-O;!Z\#>3IJ<0AGOB\, +'P5@T>6B^OP /]I&*RSC@,R. \@CD%>. IUU^/ M/(*!QREWF=RY@=6]!^&*]?>+Z7=,+;GU5Y>B_E:+XSXB<#?<])]? ?$N"+]T M@WUSPM5%#LT34GJ_4*&H*+VE57JO9FUBX5E0EGD4!0.;6%N.C$@!1[L5RPMPBZIUW%9 MA?NR%NITQY<<0,ZCLL++52:_='=;%;*$;ZZ.ZM^-JX+EV M[D&W+E0X>27<4M<:G+XI__'LL.T/ZZ\FCZ]Z;FC;W4&-H_U>9]*922W#7G_2 MO,;X;NC.J)1S+CM^=AB[5ZX?MH<@&">Y^/@@=^/*NTY/%FW-[PUT M_?;+==XRO]]"NEOM@3TXZ,>#NLF714Z?>473;=(\^!1"B!*#O>Y\](@+1I"1 M-B%MJ1*2)QT^H/*X:2=:V^_W5I[#-JK+C18Q^PVBY7.535ZL$Z"(X MSW\Z$L]G.._$65#&<8&I1V4PK^[DW08QG\0ATG^F/?12([?4A'R(].I HJ;" MNY02ER18^)E\--EU]5J6?<@%!G76VOVWG=NX=_'Y:_/-6[K_IBGV MCK?%'MV^V-GZ\UJ-W ^B>='\I"R3E/J ,&$!<1(XLL(()&R>9Q(B<;DF)&MH MMN('X H>%CR\,W>[#-@;CCVWFI,H##94!4>EIRY*7NBB5@T/\74\-(IK&KE$ M,BF-N"(2::XMLBR:( $,93YNLE!FSX*'!0^7J>.WX:F/) AM+9?!,D.- A< 424LXE@'Y )/2 ;IM LZT^?4U%B*WOO1 MC8*'!0^7&P^MDC9(:7$TCG/)7=1,&'B,4"F"K!0\7#$\Y-?QD+@4-!*LF2T-2M;6C:,')E[,/G0,2R XWY]F6T435C M%FX(L?R$#$72?]W4B4PFY15.6G!B@]$R1,Q\")XQ+WB1]!63])E0&(M!,(4= M"HZ ZZ>L1]H3CQ2S2DEO,JWF@LL8%DE?0DDG*5='P,%)(C@CX.$$S#AS@ !" M6EV"WJLFZ3-!'BNT! =&(Y.(01Q@'#DL/"AV3"F3QDJ5^<]) YNBTY^PI&OC M0*N30!F)/*C@7(B*!4>=H+1L;ZV>I,^$+UADFLAHD-0Q(&Y51-91A1*EQC(= MJ4UF;8/1AKA[.'>!DOX<\KL6P4]1(M8E8GU+BG.)K9&&8Z$Y5QQ;I;4"E:_! MR$O8N +YJP3YK9>S 1LNO00<#BC O"+N<$1&PF\81R&]MX)@OK8A>8/IDN%5 M\/"9XV$I"/C$\' VK&62UT((% .EB ?CD5%)(&IUY(P*;Z1<5$' @H<%#U<; M#PL[[Q/#PYG@'XXXAD #4CAG> GMD&AS,A4E_7@B0*@9.L$*=6(*L$+/VDB'5,Z:#QPH@9'SC%:]*0R>H7-=P] M$LW -7:TZ:Z6=S[0.PMWQYVY.VCA[BC<'X.<(H$*8@A3;&V#FP:1)7)7\/"9XR&#_Q/:*"2:7'&[L%#E<'#F!AP<-[2ORS6&)F.:;>XHA_\6!( \F*0C5S0( MSVW46@:1*'A1*DC /U\ <*4 \/ULO%"0&'A2#!#/YI,@E".-X4?4+%@AG-(^ MEQSE#<$750^O'/-=0DG'7@8M9"".@6<@%"R$%(V0G"E.@BFFSJI)^DPD3"<: M%8D>.1P9XI[F'#9JD, ",\,()837U!V*JR+I3U?2I3)*@SD+*IUP%XF-PE$5 M(N?.NI"*3E\U29_E9\7>@Q>3@SR)(I[S5BWV#&GK!54\)>W#VH9H8'+G&$\1 M].45=,VQ-8YZ[WC@+K.P:1ZTP0+^SR2;BJ"OF*#/1"^4QX9;C9'U3N="'1Z9 MP 2BB1M+DHK@N*UM,-Q@^,Z[6X6Y8T69.^;7'<^]+Q'MA0W0DU$:D40KDPN> M!C 2,2@*14!S!._!.S2,%:6Q2DJCN;LY;+;QUUIQ[&Z3G=WF!6@-9@4)&&76 M)\0%<6 >&HU\PAK#-RX*NK8A64.1.S.[+5S25F.3L&!NP=Q;&.J2^QQC8TPK MSKQS7!)K@F#:&1P5+IB[:IC;>GD-X30094+!+*2,U"D$RS M4=Y%P=R"N05S'^#,/J6>&<(U53QX8Q05-A 7 B P5[Q@[LIA[G4[UQ,#RQ\K M9'0 S(W2(L0%I(T**EB?*B;#. M1F*IC0J,(JUCV6->.-R^[7S[G)?0\H\71$?A&KE[UC>//Y__-?FA+UQZ ZB?U:KKH^5CT'C;1Y M1@> !C#T5:?7/4##V#^N[$$_UD?D!]492&K5AE_\6%P'E>W'ZB!V8]]V.N?5 M )XQ2.T8JMXDVV^]&HO\CQ[<'DP]I!]][Z +O0O5Z0 FNH+Q:G=/3H?5\>B\ M?N7L(']Y M@UA)Z=]'LGO7X-9;U4P?]OMP\;!719@!@)'Z M0X[TPVU'T0_'5_;Z/WS/^*D="TMS?(>%_^51S*?S[4',[[[^BJG+&P"+)[&; M5VYU=<'DA9=!M]T]K:?@RA(:3R.3,,\GO4$[7_"B'SMPY9?XQUD[# \GJ#YU MUUBR\+=;K ,A.AU^_Y89NH%'6JKFVN!,_3R\)#XZ@?%&KA_M9V03M/6%[9S9 M\\':[U>Z=-SNHNGQNT'7?RJF*2VD[VI.WT<0!GJMUZ_7P8M:8/)5T!R[-&VI M#OO9-/BOMC9:. RF>0B2\Y@TUT(PPHB1SO(@/BD GHRP63*RLL^B_M^_VXUY M,WQ-!D:ZW%$B%(V>)>(DDPV\ M7+G8:0,D#N"7P3"C0COSD618G89D *P 2#)&S7Q_!LU!'LO\P8^-I_5JL_*@ MZ6R[6TV!X' .X/?'.#R%KYTU@_A=B)X'S+W3X0@QAX>]T*@&)V"6I:QV M <659B(P[371,$H=DK(T:/O(E76OO?C2I9[;64JG7Z?3.\K^C MA03+K-T+L-SZ,-L@EN'%[<:U-INN$=I ?SOV9!!?3'[Y([0')QU[_J+=K5M= MW_3'L>T? "J/]9,XF3'3ZA>.OOZ&U^MXA-GC!(3QF\=?K]=?73,]1]]QL8X) M^>[7>/U7OV-"_-*=/VHL(>N:R-+8TEC ZQL]]@%)ZLS3(_V[07[/4QV6?ZXX M+:.\IU8<5N]SWE-5:\P;CUQA2OSU>@Y9 MKI?'<"]C7=ES*V2&A9WA(8XL,DR)I"H21C@FVF#IJ0[<"**"5.K&M/MI,.R_ MR$LY]Z0V6S:/88B'SV&OZ -K77R MGR^:![]^WGOXMWASE8XW-L]/&YN>;QW M]);!NX[VC]\=7]\K:NUZUMH]P#N[S?/6QW='K3>O>(N^/MQYLW?6NGC7;FUY MZ%?K>/_-?FJVIT\>?Z;-H^V\/<_RCB *&.?SB,0A[1A!*F*=-):$![.V062# MDI6A7BA@5\#N?L N$>=BHLIJ(7AFM/,N1F<$U3&99.B-]\X+V#T V.$K8+>[ M_2GD$B$Q*20M=HC+J)%5/B+"G59>1R=MSO\T#4:?&^_6C0YL+@3X5@@ 0/Y< M["_6X/D!!(QC.)=BCFB1\YO(^;>CUQ>;N1^? B=61!60 !L&<+]JAD7ASKM7GIW, M+AXD%Q:L-9:8II(S27 D2B1+; E/+0_,GL^&IPA37-I$D>8D$^,E@PSC!$DF ME*"6>J9H'9YB1"P1MT81XT43(LB4 A&"$,6X5-CY1*1PDLG@A$^R!%Z628QG M B]2D,@,ERAI'A&WE"-CP3\+7DIEF$LQR9KUSN@[1YF+&"^+&,_U;>ZHD(MO MLW!IG0F?)*F32]2AZ#SX-H+;O"?D4#U-WM! ,*W#)T56G[:LWE'K%EE=N*S. MQ"$H=5$Z09%SA"&.+4/:$ -2ZX3%F"3M8ZZ)OE2R^AR2(.9A1(6D1(^-,&[#1?2#*2$Y9():5L,G2:(76R]FPB7".,JLTBBKD M#3"-02LP@D04WLB:=@.T J,-01<'^E&P=,'P-.9^)50,02+ M.5+:>\0)3\BRP)&T@KE((DY4+(KB^:GAZ2]L^]\7MJX0A,SUQ^]HE15_?.%( M,1L[,QX0GEO$" 6D2(PC'0287]09S^ _;_W:!M7K"TXP?!R<>/S$@0)2RP92 M=S1U"D@M'*1F@H8.E(9D>?^-48DXYP&Y*. W9F6*U&JG2#9GUN]<@JJ U WB MG1-:#1CG^&/CJUSYJU=^AQWNNR1=3X(?;M@^SIP^O72=*"AWMU&Y=@?N.Q@T M:GH>;P>'>30[T8]8X_IQ<-JI"=?J*V/(=\?VESR&<,^$C:V*7WTX!;[/;$44_S'AAJSL8!"'@_JOY(__C%Y^>>>5YXU>\=N$&*GJM"U< M"*V/ [AOSCNV8HHU-]RXO^.7U"QW[>Z80JD;8C>3%L%O-<[4Y&Y_VDY-5/3^ M,$+CUJO;3_!W:(F^\0\NP):_2KPYCVTSDVP.-[OA[_%0G==T7;OPVC\[/?]Y M-15F)_[?=^?['\.)HUPVMS[SG:W#HQ;]J[W_\>U74*"\>7'8@?O.FD=OR3[\ MV_KX@>[1=PF^PZV+ _A[\Z*5G[WY25,84J<%4B9OF!&6M\Y <)0<^R"LT[@ MM2J"B7&29[M_&I>4)BH+^(@&*LOXF, )UFX.! T/I^G"_L_@DEML+'Q/E1U* M\W6MZ#W0 G'#%T\+1-AGM GRL\XOMQ=SJXIEGOH0A%)$;8-?DH,"_[3VZ][5UT22MXP^B M>?3A?/_HK\/K00&XK[WS$=I^])DUMPXNZJ# Q[^.]H]>L>;%![J_^_F\M?O7 M=4.O'"Y:G2R9[[MSDPDN +@P &S/ B!. MEG@5%>(Z "RZ)$Q@2(->HUY;:RB.>VY0:4:Q.D?N_X M&L95;FSZ OI9[W,RQ& J4E4]]G;1"D+@;X^!@3^U -]%WX$9;^=B%+N]=Y>-!&V#ED5-<(6=B MVA;Q[7>0IC9A7U2WW"?0*K,?6 M\?[Q*][\N'>VO]L\:QYMTIDBM,=O+UI;'OK1.FKN?CAOO6F>-W<[[2;=/][; M/?BZ?_1GIWF1W[U_?3OIO'FT]TEA(52P&&'A(N*42_8N#!L;,]B(SC/ MT1)GD$S*@1?-'=+$>Z3R?E/P6 827XZGD-& DSQ%HDA0T?*0M^"-7E0*4C$-;TA>/#S,%9U#CN75 MA9LGYR\R$+I<.SJ#9&A_B8-A>WC:C\4^7 W[\.=06$_]YK>9+Q"X* B\ML-2 M0V#"@28&%J&3DB+.P&6V3$KDM<*4PFC+EX=S FCTA0T,9J@2*-'W#F"C(T$69C/Z!SH!&9RJ(#."14L MXJS^8^^W_W[E".W3VW\?;[#7,81^&%0G_=Z7]F!\_KI3'TT>]NJM>)LWZFLM M!/)6@7<:VL.JTQL,H$%V,.CY=GUU/NI\_13 >O7/M\?:?AR_#:YV-I^$/CT! M'+'5X 2$-K5]#FRTH8N@ZMI=&+AV.+6=RV?FMU7=F(,BMG\^.KX-]P[A7]L/ MWSHPXCX=]>W8MKO94;C6KNJDU^O4/3R(M7\Q:@[<.VC#>-M^U6\//M>AEV_= M7:_RN(7X)79Z)]D@S=_#W8,X/7CMP;>'';8!LOIYU4V=;Z^&_=@-^>R[]Z?0 MIO/\F.R\ )3!B(Y/C%\V>)1^ %TYZ<$"[AXT\BB?!*_JC$:WG8-).8LYP%C4OUW>V'.PQKZ,SKKGW&;H M]7FT_=%@#*Z\?33#&9,OY_>RMY?/N=)\Z'\_/S&W;O2@'/@_S5Y<;M?X\,'Z M8H[$+Z,@;GXSZT:8.;'M&M-),-6AA95^ HOL:[U(.N?5_WH$97P9JQ\+U3^Q M7RM@0(8=!X-9+X(GK93O0 >P>=$\^X29"4$[AY@1!O&H$]*4*7"Q@F))6NH= M!A=+F(:>LSF9ETKOP7FU>67*W9'!/C$I.X?\)YX%)(T42)%?-D=(Q[.T6;!Y\2LS ?&OQZ27,.I8C("4L1PQ9[HK 7 MQJ]MZ'4SL_3^]UC5S8.JR7JISNP5TP'6SE',:[)62EDU6- TOGTRN0#62LP, M+/$R"; 9C=L@_1T#]I@_HY8 M#+;: P\F#^CA92%PV7D_$9G.46OWW\[^U@<0F[<7^[MO\[^P]/\\W'_S&M[? M:H-HG,-SSJ^+S,[')FE]_/=S:Q?$9JO5:67QV3JX:+YY_7GOX_;9'MT^V]G= MAC;_E9J[!^<[;S\%;77FDT,I,H9X4!Q$AG(4 @U.NT")$VN7-E38S,@C& L& M"X.]E1P$RSCJL0LD>4'!IZ+725XF\U"#]RC<_6T^+FDEKKDCU]E^I@5C-%,_ M;\;59A-AI0F)2BT]IUY;YZVU8"XHF:L.FR5EH[EG(7GO#V,X[<2=-)FFYRP1 MK;>?N'(V>8R14B8B %N++(D"P3(S%%2(9=Y=7UH)3^82,_D-*8['[LXX[3R@]I5RZYK MOA-,HG8O3)X6PXL?2];/5OQ?\1]\Q(1:?CT[6-9&E ML:6QFMZL0>58PD]3,VV[TZAVHS_LP@L/VG',VO@^]K^T_8W2,9_JT/S3C]X. MAIG/T?F+LOU&.=Y MP)==BLWKY3[,\[QVJ9]3!1P3B)$LZ&1,XEZ#T^Z9(REY!QZO)N&F1WHF_M]J M1+A_T3LW)/9W?>/W^(]^A>T!=J]N_=UC[Z>88C? MVSV@^T<'N/FQU6EN[1]"?UCKS5_0YG='>\?_'K4^;G]M';T^VOMX[?3.T0?1 MO&A^2BX29[!%*2F"N,ON)58,B01^? I!1Z[7-HAI@#-UW\=W%K6[7+"M8-O] M8)LSFCI&!::"YO+4F MB)B0(<]H(EQ=C%YI4;"M8-OSQC;/=?1"NF2BY5IS$S,;6#3!@N$F#+T;MJ7V MUQC01>SW"JS=#M;H=5@3/FH1)$$R)H:X]CQ3MGDDD\ RJ:2= ),M5\0@](^" M:P77GC>N+8IBHMAL]P!N_#JX!>8B\R(A1WP$?]0Z9$32*%B=M,&,D)IW#&PV M=N_DY O-=BY5P1Z]*EB9@B6>@D4=GGV\\/OK7A\^=L=9UOZ\&F8VZ\XX4>'X M!$"JG)6]U\BS!*=>&HZ%YEQQ;)76BDFC0\ )&W=K*I6)RA_/[,OQQ.Y^F]RU\LH)CD& $R-)@A@GFSA-Y%X%N$0K%B'8,T'8:+DQPFC$ MHJ((8)DCYW+=(>&TD5(':NC"HA5%N)=7N(-FG$O+P/&V.3W3!:QI2IH')[D1 MH@CWT@OW3"C2)!R$41B%H#2(-*7(TL!0\!+3(!D-N CW_VQL<,GB2 0QQEO*;\H'438@ M%VX-G<\&(IU0VH:($1/&@#44'#*8>OBHP7U-5HE\H)#BN;Q\BR!BNHO0K$;V M18'/ I^W@$\L,SF%P8HXCJFTPCDI-0XVT$RU4^#S$>%S)MS+-5'4*(IBP!1Q MKPC2P4G$L%-)^NBP$_>3$8BQH M=S?X++'T7T7.F5BZQ\FY1"@2WH+AF3'4):V0IMAQ':DF-MY36F^!S@*=!3KO MC$\0*L/OLX\J9W"V^S6YU3 .:JX-&.=.Y[P* MI_V:-ZMFT3K-%97_Y]3VA[$_YDS.G)^7SVMGHHSV\0^>VTY5>YC)0D.$2X^A MF6'$Z3CZZW&O'ZM.^W/F"(4_=ZMN;SCZOFX /*OZ8CNG,4?,[13[< :Z?'\G MUV^I;ZR9O6R_?YZ_ML>PP(?KU5OH4SL3#'_)#_/#7G_$,YR)G >#$9/D9<.J ML\,1G_,#-.V21;6N1E./21RGU8Z*=HW)C2.(0.]X1$TW9C2^6L)F6#>KTSYN MCXDQ.Q;D--,U?XZYW,W@].0$.N /;;L[)M^Y"3'F>+&.5Q3+[)8GO4'=@!,Z#=^L*R)INX:0PC^=HMU@!:GP^_?,L.^\DA20_"UT9GZ>=C_QAUS$)'K M1_L9V02-?6$[9_9\L/;[58+0=A=-#^ -^OY3R$CIWJA#1V =,L=ZO1!>U!3! M^2IHCEV:ME2'_6S/_-?/:5L5@&#-E ?RE&M!9 + __[=;LR;X;E4?"M*:MD; M@5@WC5)+;/^\K@$X6*_^;^\L?LE(/B*>GR"BAS:Z",!UDOGJ_8A>L 9[0,#! MJGG0GM?14S=H[&&O[R/_-P M^GOTYE/]&-.]3[T"$AI?.>85KBFP<]DON!;ZG>P76&@. M<')4.'8"OM/T].T1CF=&LRN$9O5 ?9?,ZYI>6!0=_4/1EKYN0Z/CWS!0,RR_ MM6@]6SK3BP.\L[4MFEO^K+EU\+5U\$D1#T9[($CXG!"LO$264K.JHXX,'<['5KGM6QE(\-T#K.H_ZH[<4)-?&X MEL99K,VQ,6/KX,7#E&LH#*J%Y[,T]EDQJ%*RFM2//\@3>Q3^V=M$@99[9#_6 M'\ \W81&@4=7ZY'-XVRN7=1&7_V'?T:G]Z?%I72YE=M65 ;S^@K3B<79^;=:CN,6AW M'W53J=7KHFS*9S_6'O1C3;Y\(^"[[4;G;9[QJVMM:3?MYGKOUFO"C/?8>L>Q M%XXE1[66-A?2)"+>P'O_OL_^81#3:>?O=KI:Z@KZX5^$TWXNS;>:?ORXWNDK MTCQ^2_,]3?KJ8G_K+=L[VA,['_\ZW#]Z];5)7\/[/]#6T9^',_5.=S^Q]A/;M[M'FF]>IV?Z69YMK8^UL[7W2 MT9) $D;!YV/^)&)D)%6(8,=T2D20I-8VR'?+A132L$(:=G];_SPR86P*Q";" M4W0V<)5L<)9:SXBY<<[^#Z*!M87W-';]'PY&\'48(=%CJ2A#S%&/N \"68/S M#X 5EJ=+Q;4-JE:%*ZQ 6H&T6W3\M^7"M"DG:]J_*BAW.Y2CUU%.:FX3=PHY M9C*)2K1(@\F$7(BY1J)4GC% N=F\IO\4@"L M\H MUSXUHK#@F6WPS(^8[') M(,"YL\BKP! 7WB&'>432,9<\QU8;M[;!5\5@>_*TEO_8X2\'LV[*GW.W\5I: MU)H;KPHL"$*HI](R[F0R3@?E0(LG#M@D=(E7/3YLG<_&J[A77"FBD:96(\[@ MA_;.(ZUHXMYKI7+-.(STR&$(>VPP]A@YWP^V*]G(ZTWCT$4V7W6FK9X MU[<6TQGOVKL0HTT!Q-1E]G2=D":&(*&9SP7O,/,=W#8/GGT]) GXU%302*AT1I)%"?.&2KSR:.@DW8I$%D\ZD>' MJNF2#Y=0%6!VC.;($L\1]V!,6/ " *^XH3YP; D%J)(/D0)R(ST_1VZ>H)Z7 MQ&$6I+9>,G.79NW560)'MYZFI:X^\B/'"Q'C& M73<:$C.9[=!([*0.0CM>O/;'1ZSWLUY[T)80 M1QP2(1+$%27(&F)0- )+(@4%W;,PK[U$YV]H"ZB$B3):^I0BY]9JPJ@PT8J0 M2+*&%:]]"65KQFNG,CF)K4:28IBT,!:->-<"^6Z+P?1'F M13OM#R#-Q6F_?_F><=J%E8DJ#TZ[SYMSA(!H*R$095Q[XD4D4J]M\ ;AM.RB MKXYH+Y=D%Y]]L5(\)X'=\Q -02[9@+C %CD1&1)66<4#-5KSM0W6T.3.%2[* M)OLM7/8)P^!YV5A?D(N.E8Y!)@,+7G&-L04=I8B42<$_.KCBHC\^0,VA5F#4 M$&:-0<((ACBU'!FA'6(ARF@\H0'G5'5>-M8?4O6+%)3"@6JO*_?P&?\='!]\9"!H*XE&#=6T&19J!&28 Y)@X'I_)1>]G@N&RL MKY!L+Y=H%R=]L6(\XZ0+(Z-T,B+F&44!&9*9E/_TF6?":$R-,"II;[KAVC";LG>9&&R=#X4%< J": MY1C;XB&!R>*[YAPE7V1TO^^6K M)JVW\<4?0%S+L?*%"/",NXV]"H:+@# S"=QMFQ!H/8&P4UPGD%[O) BP+/OA MJR.ZRR6YY53YK:5TQINF.A+K1"Y+'AGB6BED. \H)@J3Q)G'$;QI:L@2J=F[ M;G@O8@=X69]Q0]:\^86-O\^I]XR(->\V-$\&OQ=5(KUL:CX4O._,.2WLB&;6 MNX"LS]QV$7-DE!*(@@VF2)+,$[ZV(76#X043J=])C%:#@KB Z+,$T=OXKP^ MHF4O^?YQ=<:YC41+;QE&X-%RP%5NP;G-?,LX$'9(1SC,=$"$T,RX; 58I5@AFD1"E)/S9K&U0 MVA#OWI?J0%>*E67QI8:X"M0G78K^GCL8G]2!IR6 M,N"E#/CJC70I U[*@"_W@)8RX%-C4_^X=;QWM'DQZ^2_$LV/;\_W/[8Z+?KZN+6UR5J[A^W]W5=X[\B+_8]_'>_1 M?7AGZWH9<-;<.OA$N*366H&(R\=MHDG(P>2A$$PTAG+,32D#OE01QN=44E(Y M$6* 5>B#X$)SBV-P!C.EN4E>^#J,.,:2D@?\<#""K\.(<(E+QA/2/@",!!F1 MM0$CIR/%SC@2M"EEP ND/5%(NQ6YV/UCVA-/EGXHE*/74QS'@7:&8/YL)' ML-B( \=/ Y8E+BP53E%! ,ONG%%>ZH"7.N"/#5O?"5@Y'D1(03C+ Y-&$9>D M%?GT+S6\!*R6 +?.9P-6_S][;][45K*D#W^5$\S,[[TW@N+6OK@GB,#&]M#3 M$FTW;@_\0]0*!VOA:C&&3_]F'4EL$KL >?&;0S26:LRGWPR*RLS2N4L3A;1 ME'.E P4G4SB#I(T9LT( N*G[@#]YOI<7,CJOG)><2Q>LP]9I0:V2X/U'70=J MGD=]I@(U3BAI#=7(L+R=3*B$;$P>*8N%>YY"GEHCQ>:XYET%@'@CDEW!,N/)N?1_T&]E ]E6Y-N=M1T,2MEBAX M!@K&-4,V!8LT$?"'X<9Z7?4!)YHO4!W46IOG[7$_@3J_Y2WF3Z7@4^XX2&WD M@2JDL%"C39)6)XR$]\YI&11AM.H#3NCT)LFZ7/G"ZO9BJ?9;V>O\5&H\Y:X+ M8BRQ1B)F>*X4 8Z[(4"$E3:>"E!HGG)F#UO&XL%-Q5Y>O?*Z#_@K7@=75EJ> MZ_$G'SCQR@9'M?0:RZ2]D*+VVI\?L?Z:]MJU5XEC89#F.0(X MB*PG0.IIKL>G340B&@G_%X3I41]PMDCA^UJ9Y^VT/X$VUT[[X^OWE-,N4L!$ M)I?7Y2+HMS+(6:L0<80G3!RVO.H@#$I?KZ*_'-5>+,VN??;Y:O&4SVX-L\(S MBP)F&'&L\I*5DL@$YS V8E3=$;28/SBT7B^RUWW G]%%EP!-5##JC U<:VF( M5A+\/^LMUA;CVD5_?H":45N!TQ!-". WB*B!9G@ *!$2LA8<">NYU+D'8MT' M_(F[BQHK$[&&4QHYM]:"!DF8#,*28S[$VD5?0-V:%=86< M<@P\]@1RC26.,HSZ@.-Y;6&K%]\6T4=_ G6N??3'5_ I'YT3(0FX98A[JA!W MFJ*\NHH852%9[61,=&F5BF4]HZI(O;"^L+J]6*I=.^GS5>,I)QT'H1)3%@QS M$(@;Y[-_GA#&U&*PV#JPM+0JEYE:I/RW5[^N7C&)HBH(;@"@ *J7! M.F'!1.#.T2A4[:D_/TK-V%1.O9,N!85"TH!2*:KL2"C$L(R MZ694Y)9)3)GA7@GMM7HK7?:4_[XZEKO*9^+ D_7M1,^.-!$)'0"AUOC@!QV&DFN MM6;)<&PE^-K3R2[U8OC"JNYB:6Z]I?S.6CKE2A/-3= IHF1"1#PFBK0-'ED< M92+*2JT\F%G\FE:[%[6!]SRN<76SQ;K9XO7X'8FG/@2A%!&_%:Q-^W7F5$FBCA<,IR! D MYS%IKH5@A!$CPA+@$NQI_DR3"5#7E<1%*7$8F.NCX.8B%6 MBNO6Y9ECN9R9%C$RSK0QS/E E)&>,=^K7Q4E M6.N$S<%^['V-/I8_L\#TU\N^;W7[PU[<@AN_;W7]C^=%'=(H)ZCS=[GY>8,T M/G\3VUO;&5W8SA;/-C\_.6X>?)# #IP0)!6_)^O@!CA$+Q.V?R^ MP;"?$EM1Q-SXUUOIVU/:(0KD?^P M#U80+E=VBEZ$:_R$W\$*@C&&)VA%0-^,EW8\1,O%T7[I]PO;BW"XSP :"MLO M#FUO4'13\?_^0U.*?_LKMN!.>U6A#1O:8'3[@QZ,U<]8Q%^'L=./_>I(\EN^ M+\A^\:';"?GSD'^KD#B[-L5? _BG:KV:K[YY&'NC8IOP'/'2(\#0C:^=#_W/ M.Y"+1)TF@/@R )W0.!?_UTR">A-!<$ARID9?QS+^['5_EGVXZZ=N;QT,SB - M6Q,A6Q0:\>0*W3QHD%VF9 K>,*1E2, !LF+3H) 27EKN=.0I[V.941FGDJ6[ MS*J/F =-$E:4<2F(DR9P;@$PE+>.7LZ?JF?UGK/ZY7C76QT5I1[E[KR(LR"1 MC9$C*R/E0GJOL%Y:E=.LKD*:K/Z#_5Z,11OF;[]?Q$Y6Z8;M = PLEQDI:NF M/\_3.7I:-!3 _-6A8IMN/,QV*O,(\O^/EP^#Y=MM;I'MN-C M-8"^%T,Y*( O *X6SF84!=W8!]#M]C(_+290#I\>VL$@]CJC(DC=3#N*_M = MC 8T:Q!<*B-LAM0.V,-^W_:.EP&F?6N8.7'AA[T> ')U?@9$TE=$X['9;+V%L[>E+]LK^CV+0 MW8OYR5= 2#IPA6P@X!%*\.A*>'*P-?"@^;/)2?%G"9-R6(F=CZ-W/^KF4E"# M[NF)\&S]IL_0)"V\E=OF7LV]G8MIAX[DA"5*ANKF)!67B$ADU4L!FVHO,PE%Q9*4C?/ M]1'$XG?6>;SCZ^K>C,@SVD#FV'N:2*2^52!R[8*PCT"P^*,2]@L1IRO6-ML^V"^WVU];V_0C:QSL307U=PX^P?.U6HW/'^'Z M_E=SW7.@1;^:!P&>X_=RY_/?!]M;'IZCF1KG:D]R M80J$];NY;J]U6C4TZ):.8UJB5DN%'A^1E,.GI_42 MI4?0FI8@U0)R>':9\ MN?G1+P&[OO?*043=E J[ET,]@S,_M:YT]*@I;7/'K]OQLVK"-U.J(>U.D'8\ M#6E1>TZH]R@1)X&H:8UR>784/*'1$8&9Q+G9]72WWF>I@'(#FDW"1?"<\?I MQ,..? N$\*+'?W'9Y3%(X4WGU4F!CSLTBVV4[K+94$H)=D8FI1DW0FM)J9?& MJ(0](VQ4U&=NIJBV0'>P0,T9H0+,HJ1.6^1B)M5. ;TF5"/JF=.1L:BB6EK5 M4L^)5#][\M_"FZ\G?8P'I$*. 8+E/,'1(FT79J%:F_T9SQ9^_NOB\MMXXO'9 M*=;!- \'5Y\RM4KQ3 MVA%Q<8SO_\PZIE_HL]W*_=[8RLQ>1ZT7[ ]D$K_C. MMH[L<7_I7Q<3-,L..C_LMQBQ&]H:<#E:)SSN @]C+1\'CV(5Y MEF*_ERW7?]P\=X"$U1)\IF0?LM$#6_3?_[*KL^3BRKQ:ME!YM?+1\VHW.C]A MG+J]X\5+G]UW MOM$&_?(K7V/[H)7?H?U_)XW\[,>;6VMT<\N3YOJ/76Q,\-GG,X0GQ"6VR,80 MD6<,AMAQ(%/B8"6%9*'GO'-/67\Q].I^ >&;0WWFLQ MLRM.7[DH^\5/VQKF?-1!88$@ -3">/8'1;=7=&).1(('/JGTNCIPG/H4X=!\ M,M#0G-3TR%KR%]PP#%MQ,YT^^7A-8*&2?IY?8_9V@:DZHF5 26"->% $.4\B MPI0HF(!@J4^7-48ZYF*D28(L.5FLO_ 5K=+N^L,V& (0ZC!)N+Z4#_3N>GU]K,3*F3AP MXPB^H*0B)5:HOEV>SMV^XX;//ZD(7I/<]X&>Y6%9G0$UEPRHTZA?I<.WC/R] MUL$XG_0T&0_Z'(E@SUC4-V_9 9I0['6[X7X-NUAWKO_/YU//Q$[O>]-@;>__][?V3H\V#GXN[6YU3AN?O]&-C]_@<_S M];_N-[;6CIMT^V3G *YULO:K.3GG_W[?=^W0 MKW M\[M\_OBKL;[!=@Z:;:#3K+'^D?[?R<=!H\2_JFCOUI=?, 9\-T0CRN1 " MXH)@9#U+R%).E)?>6Y,+9:AE)>95J_W6^O(R2F+4N/=V<&]>*:\U[CTQ[C4_ M7,(]QR/UD3 4<+5;71!D-<4H!DU$X"D1+@'WR#*?=XF+Q\.]5]_ XGNW]P.5 M'738Z^;MCG4>[(OB>'GV-CI_CN:NQKI'PKJ-:8ZGG61) :ECWA'$);%(BX21 MPLKQ)#65'K!.+^N%ZIE;*_2BDY=:H9]&H:?(B\<": L-")PSBWC$#EF)!8K) M6&DDP42 TV:6I7GP9IZ7E_;^?/3DJSTJ0.CA9-"<.LO]19$3F+O&9.IJ*'LD M*&M,M')2:W0 M3Z+04]S$8)&"8Q%)3!SB\"MRD6@4<73<)J85\Z#0?%F8![<&JYM_WEX7)XI1 MPB513G&J-XPL1C2]WC#R%/SNI=2,?B' _V4&DPL4I@R GXL P.^-1PXF#+'$ MN622,YSS0G4&_GF%F5Y"W?W'1,P:-.O1,Y7;>93;W]J.]G9MK/Y5=R_W38L MR6^N@+]8.W74H^]!6(]NL'";=&CSPWAG;=XAVVXP^.^H<>"/X3XGC?4UL9G/ M^;Y-MD_^!@W^P1OK?[)\15-)YYX0R34_MRB%?*40+8 M#@('^DW 0;;4.6$MM6EJ7\X?WVHJ]=I&'OMHN\#56[:.*1E41N'^?#3LW M/<1C5[,]V\J2WVJCTX>7K:K%OVF)VMOE-F&)B4*)DYBK:U%:>O](_7^D1>P9:+>/U+O'[FP M:!U_=EL_JW8!HVK*R?JR50Z.ZZTD=4KU"XKT_@$/L9E&%<%?1,3BOHQSW!UP MCV\?M ZVMYKM!IR?*PHU/G\1V^TO)\V#-=$\\$?;[0W6^-[ EZL#;:[OEYO? MF_L-NGV\L_X#WL'+5=K'?#O 2:.I[,/_)<_E%:5[E:-63?!;)GE$PF M.E"NC$;8JYA+)D>D>0 )E3!1CKM (LY9I/-:0%N@!():11^A\WRMH@]5T2E6 MI;B2.!B%2+(!\9!RHVCAD$XIM^[E5N.TM,H(72 5??7!OZWNP+:>>Z?*PYSB M%PU9\V(5>4UUK1,^V,,2)K1"KDW7RGU/F@4=2<.J60 M55XB+@,&9@.^B%(1?)#DE7>D"AH!-KP4%'CUD94_8K]_VB4=5&/8*P=EK",I M=Q_)NS2HFMN*7[>SE_/DKH>]<<'D&N#N G S5OT4CL1RPY&V22/N,4,NP ]* MG0D,S)/A-K=#F Z)W[XK51U=66"UG=M"5JVVCZ>V4[PD"B\B309I; +BU#OP M3K1'5C.AA$S6<^ EA"Z(VK[ZB,M9FNQAMS>X;S/?^:0AW&/_Q]O*4YC' "VV M 5A8VE9[JW.S"C.Z)E/,HB)<(1%HM6$W9#(7D4U,ID YC3I5*5QFWM[J'%3J M9>1XU>!:@^NBDNL:7.<(KM.A0*Z =2N%HA<8<8L3LB0)9"VP;69)X%)4H4 E M'KS8N3#@>HO&D8_5F>@Y=KMM=HJUX1X\PFB^"*LZ.)'E:JO;N$?4WS/VH*/[M?;?7RYW)^M7?Y+=_+A?5GINJF=2@6QWZ MJ3OL#?:+M7;LA-S_K-I?VA]4&TQ'Z:7%VB2IK/C'N8M?_G)RC^*HA.O]V?Q0 MO+>='\M%WO=R><5(ME6L=;O=WU9_;5< M?9>'9:T2'3LY/3_K^\9F\3^VURO[UUQAI:AZ=5UZX.7XP# MS,=%ZL&,KL$M6P7#E>#P?.X,@9*S7P0>M_NS#/#L@..%O78+>" QJD"3))IS M+ZG!T@78$T8FOPR:UWI;,=N-B\7# CHD'\7AKTCP)A^[+Q, MJ_&@?;R;7W:3QAYSBA&,AU=)J I5%Q]'V+H/C\M6R M![)C8<9AU#-(V#T0 C#CL7"5KL,)_>/&:<$N(Y M)LY&ZT)2TE%+%-:L(B!CZ3@C(!O-3]?EJ7\:OT+#_BK;P_;[R1,#+8%OHDR]T-W&EM(D*^8 5 LVER"06D&$P039*Z4V.VP%^@*&;8A'%/^R= M9I][KZ.-5#NO.:;*"" P1!I-N&,*FYD@<=O="A,IV.B 9 ,178^C?S]U>W^" M\'?#K6O,X#MENWU1U8* M2)G]:'B:20'IW;R/!&# M!SD5_.HFIX]X)O1@,W/O[U&IBHGE=<=C2YJ?'GRD,=%\5LF_9%,GH+K1^7#V M+K7$ST33K376W-M52CG&7418)HC7L"CF0D7I*SB_O%7"2XA4+VJV?11T+'BT M_4%NW=T#J.@7KAKFX2&,5@33-;Y<_K0Z( _S7YN?OH[^.&R!M;.'ARUP+#,& MC*K$]*_PM& 66\/L:5VI\QYL:H+BB^\#<28@*G0/'#EK($?7+.(O8B, MS5XN.4>H*\V_Z'J!M^!B;S.-=BB4MO5A?._^M$,&6G_JD+U1^M1<_X&;)WMP MC\8)/#MMKNW2'$_EF*/H&$&=[@# MR$?X]A_E/Z^6\4XE>)=CUC"2TC.E/$[. '/F%$ M2*2(1^*0-C&WC4W8*2EUB#J+FYA!H6X4-Y]3Y MH\1(1FURG$2BO''D(6JQ,69:D_$;J<=HN&OUF!VQ6>- ,VRR@GB7D(M&(:Z) M1C:!HT%P"#*I'(\'- 8MN!J-IQG^ZUL\*PBMECGHA76SBTM6M@ V"W[/R!.H M.'GVY_-ZV=1BU7BAZJ_1"6N3$TX7JN#$KJL\*>#_O>Y/X'(9A/*]_[:=_^EV M^_$#W/$"*XW6N MT66NXZJG#YQO3LA232*'T!0(C6MOFI_)UM MD>VTXMQPKA%E\(/; )"DHD=::FE<\II&G^VTF@5$^[WN<&^_^'W8B9.%2G:3 M++_PN,1:I4%5C^B%!'MHI8PC !,>-]8V3W6"]5(9%Y+4$FNQRE3PN MP3]+"0M!9&Z- CQ@&>OIEBB75.G:>OAC&682A/RP.[)=[WJY:GCY,YZ5-OZO MB[6CQ^E"^.P4ZX#X#@=7GS)5S?69])302Z-S[N<=ZOVKTWK_^[VS K9[X#OW MHOT!G W>\)UM'=GC_M*_+C8%*#OH_*A?-6 Y%H=@T/*LONL/VVW;._[M+G"7 MTJ/U$!@]!RAMMU>)U+LJ%)N/@L>Q,]\@_MHO73GX[=D?L-CO97#[CYLG&>9X MJPKT HA^R+A8U+J+TPSB> SS M!]_@O/=E\\2?- ]:[1V ^NEH0+:P@*1M,<26;(!BR0 ML)AB$H(WGEYN!4&Y9IX3<$9BX(EQF\L,*IMS..%C,57H?S+@.>21N4<;#'TU M\O?H ''CO1>3D/VC>E_@2]WA*:?J#N&*H?_/^7C(3]7WXK+VO+?]TJ]UPGJ9 M+6ZH,.H-:]3);E(BL<@3TE1;5)5STP3^9$!7,0U!*8E?1"N,K?/M+HIQ XOL MG -G/O42VH?#@9TL\+HL"Y4O$$;24+2R?P[.?;5X# ?U*S681"LFH=(2' :? MPY1U4XT74Z]T0?IIU,T_GE@6;KR]>9D]-+: B<>B ^*T-W!OK/U,1;SL 8I/)S2V)T+M; M"-=+ 8C[5]6[Q37FIF&+]9!SJDQ6[71D:J'5(PXJ%7C5 O_ 'MFO><_\K%=< M[%WO=ZDI=:\ R\4UJCZ\,/PVW< :[$7\ S3G4Z_;_C *A\$(;HX6S+N=_D:5 MV0L?_3DJQ+,V&/1*-ZR\W*UNL]O)3]H#7Q@.F23"O)!EK_M%;R8;YUESZP?= M:6_CQOJG="&! %%"QWB&-*D%.& MHR28,Z :5FL-%&F9S*CC_Y*+S-7X]EKQ37-L1$C1\D0Y$=;92"RU4:6HM(ZC M?95T@F^TQK?7A&]\JNI2E)Z#K4.Y70GBQBADK<, =]X[;0)AN48P619ZNE#X M(E;C>RF$\R4?64_!LQ_YZD,PZ['3;9>='(2I RMWCUE<*K>TB&&56SWBVPFJ M?*_^R!M QOG/55"Q?SX)\U7KP=LN>GTE?Q])P?Q#%!>9^T3XUD:R-]G36^6$ M]#?Z_6$,56I(S<7GQ<6;,V(-FDF5G!#(>6#@/"B,-%44B:B=3(H)3SQP<;RL MS")U)*LU?/X:/@Y%4;?/,6:C1?*YHOOEA MFJ]QISC8X%RBWG'$&?*WNLOA* >)IF5X-$(\($%-T M3X>H9"0!D> 3XC$(9!WAR%MNJ1#84![G1?<6I 'C2Z$\+_G(>@J>_8V372F]M\9;Y(D4B/,DD0OPF_?"8>>9"+D[ MT%P7'FZG3"]H2>(-H\-3N; U.CP%.H C>PD=O)1&8HF8,Q%QZ1QR+AHD5"*6 M$)J,"W->M'A<=*C)^[,?64_!LQ_YZE,(W]=K=P_H%7M=BMYKW/1QQ[=?;/YV M[7Z02;&?^?IX],IM(3.+#"TM3$'4%T'+ODT[;9Y$D8O)(4:XS654";(XZ;R' M@PHAI7(!:!E>H=/ESF^_<>-N6O$RNF#7R/;&D.V!_FF-;(^+;%,.)P/K(JD3 MB 0F$$^1(4>"1XGXB#%77$23D8U,NYN+AFRUG_/L1]93\.Q'SFFI;G%=S?7K MEN->M;/YP#("8_@]*UY\ 8'?*&&;Z]B\/CKW9([J6*MK0G6K/@Q5=JU*Q1:4VXP MY4D3K#@RU.?24TXC;7.HSVGEDO?$L?A@-W@14+/VT)[]R&H*_E7585H]U]RG MU'WNQ.,H_GCD1;JTS**MDSO)G_"OZ8:\.DY+O?OT7"P1G:IHI;B%)'P$B-."4/EW,V\FLPBP6R.6FW8EA^V[(SNA+-;JMVN=9C"2S- ]V)S M#+E0_:',H_>'&M4DW+*_ULN^;W7[PX5I$<4:DTZ !U_;VR<-OK.^@;>W?F"X M#VO2G7+S^\=?C8,&?/:I!7I#=@[VRRE=^0PD]&3_1^/@Z_[FUA?:7/<,]$ML M;WT$G?BZW_C^#?0&GN'S[SFY3S3W=F&D, ^>(!>S?D0.SKC1"5D85^6#29Z0 MRTVB7) LB* 5D98[(1P!?]Z#(#I#$W#1RRUP1J->P+#'_O5]H1:1'F4X:8'X]V;4S)0!, MZV$O]ZSZ52T4Q?ZBJ?1UI7O?1R!"\51",D4=]"S@5=FQO>.-06SWFR^W?N\S MB-87L1NYL@RF"?P5#Z)EK0(K;#$2)CJOD[54RUQ<7)&99'6Q8*,6GB<4'H]W MA3&!!,.0<<& Q=$:::X$2BH1PEVN/^*R\ !$W8A,V< +,%'IV'R4VQUP,7)R.+[><.I!=\H/^O7WUSV.O^+/OY,K>/ MOH0N$*I.=P!/F%KPA$5VJ<[[3]6^^T,X!:]TKJR50Z.J_>!1SL#^U.4KSH9Q\(/X49PTG&TO97BP[[M M[,6JS?%DT,;6 6;I(%:" 8\"GSCPI$-Q5([[R?:C[7<[M@5*/!CV*AN2A\\- M^W#<:-1]=]@"=[?5[Q8E#!1,VL4GNVR&HH77_??0]H =K$S'RHKIV,(M(V?L MI47."'[TT-E9Q&PS93D&C[ :YJ^QE=O[?NCV!_U)VG,,?]KC=FYCOS#1M4DD MNOV%-TZ^D&WZ^\'VUAH<]^77-ER[\?D;:V28/8'[KS>QX2A0$WU]0OF)XUSFVB M<%H*#'/JA5$I 4<&<58R:FOJ69O#K!%0RV@84$[) G@;6"+K/4&<)0TN0J36 M@J^J];2G^O"X1XS>)V% .C#A'B<3I>6"C NJ"W[G%=MZ@B]/L-@E2A&7&$7, M6)A@CA6RM J$>Q^P3X;E!9([S!I,EP@T^(AIXL$8C078*(*3%P"RWM:S-H=9 ML\H(@3U%PE /R@@_K,_E*G&,E@ WQB:!)RBF0]O3:OGP9?+>B%>.G9@!,)C! MQ$H7]LCV0K\Z%3RLRK?/7E(6H/%W*\5:%4^O;C:J.C*YXS(!HB"E!$$%Z-&,&Z&! M*5(O#9@<[,$=B;L;MS,Q']N'K>YQC'_%WL_2Q]FBW>QV\M,"<:M>:ZL[L*WS MWV?^#J[$=H2'FXS-"PFW/K6NG'P\WJ4X8*.(15P2P#41/ (7"[".:4:P C=2 M@0E3RTQ/:\O%6,!1"3[_J3R"I('_?K. =G_&D8(-#WTN!;CWV.[?HPG9G_"X MW?"IVQM_E(\C%R0/:+Y_%X:]'(!X<[*V=[1K'0Z4@JRY/$'<$@=N"OP !F5H M])H2D=>%SJ*T$X^O"MED!.MUAWO[8^"%"98K=\^Z>"FYG*-R8$59]3 I+!B) M20P,K,%(.*]V]<:0OQ<[L6=;K;%RNCA*U3KLQ9]E=]B'S\>7'^>$529BW_Z, M<&CLP/VL__>PS-$Y=WS!=&2#M1];U7,-X+ ^"/78I&6#,QSL=WN5SE>6[>QV M8$1&-YQL),RGS'\2+T:XV&.&M*HKOBL!'TI_BR#7US,&4(4[EHL_S]G]:LZK MV.LX='ONRW%@I#JK&,'2X@OQ-R!*(WC/S*CX"-(T&$G/!KQ2IPJ&GL?5XL^6 M[2P7_:'WL=_/U*L[/AO+8K/=*=VP/S[FO#CN]6P'B$R$-RYS"G\<8WQ_!N.Z M1+5&E64SN1F'MN&;%,LJ9?Q*OE;=#SX\TZ\!C!JJ6%3/YG./1X;-7FO-DG7> M668$592+1!S\D8)EU"I'/8FWL&:SS==:KY>#VSEP^?YX*I99"4_UX^^\:-#9 M&UFNV;;JJ LO'#MOS%S!SZ/&WBZ/UE&@L2B'4A!X?P(!U= H)F)MP$!WB5E: MK5P#E$W4E-TZK$8V$_46R'-1=D+I*WK=!?'M'95 @,;(.LR:TCK.!&BVU!5V M#VZ3YV]EK/[9$$P?"]+<'[J\@)&5QQ; J,D" MB."U&-CJ=O;0(/;:6>S&-O^PUP69:]\@5^=P;&R5\WIKMN 3.NNSG];+HEMV MX*CSK'*R'CSA"".6/#SL=LY__/_^ [P.]5O_ B>H(C;5"G+WPN?MBNC&4;QF M=.MJ,;\-K+P\;%7K[?V\HETM&(]7G<\!^_BM+[K-^[9?I5!VO;?Y:LL33GX% M2QDM1.=!!14[?\Q(N?OY$28#79Z,W0%XWEX[+1CYC31S(+(ZM,>Y M4?G[409,_NNJ!QK%D4;P45$@?[:T;O,D]N._AWGAW7J?=_6<1R(_; _'@STS M/#!:28?WR4Y&S,Y%B*/?1Z,XNM6I/)R+-EQ:]!_=\#2<-W&@1GY/)5+5G<;7 M2\-*U*:"%+V8DQSR"UR$U-?LAV9A @).U/(5QN&:7C*ZZ42#1M)RYEM? (YK U D".>IPLY*3BUS/D4;M91@Q)37]!IS ME8"IW=]6K8]?Y.MH.$?FJK969];JX!MN?MEU%#,=M$&D]IRZ3&\[0EMOLSGL@@HU1A.4$ MH\-NOXJ'OIN8UM^.RC#8GY3E/W?6.&:#STZQKM_-I1>N/.7< V:S%WO/A)2$ M71K5Y.G.;1[$3DP83]0)6OO;.O('O>7_G4Q@E5VT/D!O,6[WV@F4GJT M[*U198204U J 7HW8CUEM1/?+LRS%,!2 <7_XQ:93B[:8#-HZRF15.)JD=XBSFWAG6Y,WH"46EJ1#<9U#TO@-[ M[ VEGFYLQ/6@0V?4NQOQX*?/!F.T M[/N&A^2*M>YJA+*1/K1%^:]]V M-JOP6__4WVN.=_W>)FOTF>N WM<#'-8+Y_L]4X^(@;ZU]^-0_61(/" M/;=^W]_9VM_?_KYQLOW]R_'E.J#P?6M[ZP?=IM^.X5Y'S?6/M+'^XV3GX MI MM#^U-C]_VM\^:.[OK/^>&G_AXZH&Z%_X5^/@FX!GV/7@J7OKP(7T>;NN8QA< M2 ,NI(@>/O*!BES>3O%EHJ9W[-ZQ_^)=-?"9._[4J');5!&&4$.8%,)A+B6S M6GM*B$U$1PNN^I\ 5:P)2',>$ U:)NDU" A>6N5R MF($

*H%>W9H@D MT_@@E"*"DY"L48)+!PK#O0E1SX91^@P@.@FJC&,J53@E1U-R,*6*I=00>C<( MY9.(08)[+)DDV(:8<]+,LC'3_ X[1U1%^5T;R ^)+*7S&@D]CKUM!R-VB9"J(1HC3P=I-;&E;% MJ#ARGC)$O$S4&!^P#DNK5?HQ_:V&EAI:KH"6!U:.6QAHJ:G+@_!E*IZFA2)> M>88,E18\0I)$Z(]X O3*IE,:-&4XTO;Q!?'K-M\O- 3!USFC/, M3,6<&/4V%S% 6E.)N "LT0XSY P-E%FE-?5Y7']7 =GG M3M5Z@=!Y=?/D%Q]6&LE$S<--& M0M/2JE#+C$XWT[A]?^;9L/12TB->(#R\WJ#0=>A0!X7N"PQ302&G*'/1YKK_ M+N5E/((L3@X12[&Q1*8D_-R"0C4\+#0\O*3 3@T/CP$/TS$=%Y5A@ = (C,\ M $98033*O;%XE,9[JVIX>'7P\!KB,A<1HH[+S!DJIN(RRN'H"8(%*\^W65CIL1L!]$QR/G5[IS5?1D5J/XZE9JO[]U3?VYI^W0M3FQ^F MPS8!YW(L@B',>LG^ABV:O'S?F%KRI<>.5X<94 M5"=)PEW"!C$;*>)").0T <&P3F.2A$S4UKCQ-G!C?E&=!<6->JWH0> Q%?.) M&-/$&$8T:RV[Q-'K#7"Y7UA8H7)!4*0&V)!DWJ+\+#Q M>M"IC[SOD:\^$6JZH-7%?J//G2(USG4[Z[%V.=WM;=>0\ 0\;6F8ESAQ3\$T M1A.TA4M+#US:S>Z)6M>0>!6&;L9V/:VE,9Q(E!@EB#NID 5JA'1T,GEKM*AZ M7PJYK-F\ECWFIZ(O:'6UQJ5K<8F$X!A3PFG/>-3!)$"J"%2+Y8Z#2M>X]*IQ M:2H *'D*R8%'YF34X,-SC5R@#GDAL!:)$H?9XQ3,JF&IAJ4S6 (8DLYX'E+@ M)B4G@V$!2TPB"* (-2R]:EB:"BT:EYAV%",K<"X1RCS\YBAR/ACEC//8$( E M(Y<)?W!U@]>&2\^,1:^F:-<\!NB%@O350=X@I008EDF!HV($^#64>IF[T6+/ M"(NSD;JNZO4*4'HJ>NN4,@XGC)A@ G%A'=(F.;""6$C+ TG1+:T2OB+)J\'H M*O#XKZJ'SNJ,QGG7-=2K9.SFUF.YL<]4VZ"+[7IR2[CQ)_E-307_CPL@LUJM M+:TVNX-8$/+H3;E.=7:][/M6MVK#NR@]N)KE6'L/MH^VZ4>\W?Z&F]\_'N^ M1FV?-.!:O[<;GS^RQLG>46.]V6X>&Y.[RG*S=N1RUZ] (X$ MV'RY!Y<).,(,2$T)YU8F'34.3F(L829X-)=[<)UUDR@:H^;'[5$GO.N:7