0000352825-23-000095.txt : 20230808 0000352825-23-000095.hdr.sgml : 20230808 20230808135410 ACCESSION NUMBER: 0000352825-23-000095 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 82 CONFORMED PERIOD OF REPORT: 20230630 FILED AS OF DATE: 20230808 DATE AS OF CHANGE: 20230808 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: 231150425 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-20230630.htm 10-Q fstr-20230630
false2023Q20000352825--12-311http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrenthttp://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent00003528252023-01-012023-06-3000003528252023-08-01xbrli:shares00003528252023-06-30iso4217:USD00003528252022-12-31iso4217:USDxbrli:shares0000352825us-gaap:ProductMember2023-04-012023-06-300000352825us-gaap:ProductMember2022-04-012022-06-300000352825us-gaap:ProductMember2023-01-012023-06-300000352825us-gaap:ProductMember2022-01-012022-06-300000352825us-gaap:ServiceMember2023-04-012023-06-300000352825us-gaap:ServiceMember2022-04-012022-06-300000352825us-gaap:ServiceMember2023-01-012023-06-300000352825us-gaap:ServiceMember2022-01-012022-06-3000003528252023-04-012023-06-3000003528252022-04-012022-06-3000003528252022-01-012022-06-3000003528252021-12-3100003528252022-06-300000352825us-gaap:CommonStockMember2023-03-310000352825us-gaap:AdditionalPaidInCapitalMember2023-03-310000352825us-gaap:RetainedEarningsMember2023-03-310000352825us-gaap:TreasuryStockCommonMember2023-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-03-310000352825us-gaap:NoncontrollingInterestMember2023-03-3100003528252023-03-310000352825us-gaap:RetainedEarningsMember2023-04-012023-06-300000352825us-gaap:NoncontrollingInterestMember2023-04-012023-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-04-012023-06-300000352825us-gaap:TreasuryStockCommonMember2023-04-012023-06-300000352825us-gaap:AdditionalPaidInCapitalMember2023-04-012023-06-300000352825us-gaap:CommonStockMember2023-06-300000352825us-gaap:AdditionalPaidInCapitalMember2023-06-300000352825us-gaap:RetainedEarningsMember2023-06-300000352825us-gaap:TreasuryStockCommonMember2023-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-06-300000352825us-gaap:NoncontrollingInterestMember2023-06-300000352825us-gaap:CommonStockMember2022-03-310000352825us-gaap:AdditionalPaidInCapitalMember2022-03-310000352825us-gaap:RetainedEarningsMember2022-03-310000352825us-gaap:TreasuryStockCommonMember2022-03-310000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-03-310000352825us-gaap:NoncontrollingInterestMember2022-03-3100003528252022-03-310000352825us-gaap:RetainedEarningsMember2022-04-012022-06-300000352825us-gaap:NoncontrollingInterestMember2022-04-012022-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-04-012022-06-300000352825us-gaap:AdditionalPaidInCapitalMember2022-04-012022-06-300000352825us-gaap:TreasuryStockCommonMember2022-04-012022-06-300000352825us-gaap:CommonStockMember2022-06-300000352825us-gaap:AdditionalPaidInCapitalMember2022-06-300000352825us-gaap:RetainedEarningsMember2022-06-300000352825us-gaap:TreasuryStockCommonMember2022-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-06-300000352825us-gaap:NoncontrollingInterestMember2022-06-300000352825us-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-06-300000352825us-gaap:NoncontrollingInterestMember2023-01-012023-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-01-012023-06-300000352825us-gaap:TreasuryStockCommonMember2023-01-012023-06-300000352825us-gaap:AdditionalPaidInCapitalMember2023-01-012023-06-300000352825us-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-06-300000352825us-gaap:NoncontrollingInterestMember2022-01-012022-06-300000352825us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-06-300000352825us-gaap:AdditionalPaidInCapitalMember2022-01-012022-06-300000352825us-gaap:TreasuryStockCommonMember2022-01-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2023-04-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2022-04-012022-06-300000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2023-04-012023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2022-04-012022-06-300000352825us-gaap:OperatingSegmentsMember2023-04-012023-06-300000352825us-gaap:OperatingSegmentsMember2022-04-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2023-01-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2022-01-012022-06-300000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2023-01-012023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2022-01-012022-06-300000352825us-gaap:OperatingSegmentsMember2023-01-012023-06-300000352825us-gaap:OperatingSegmentsMember2022-01-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:OperatingSegmentsMember2022-12-310000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:PrecastConcreteProductsMember2022-12-310000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2023-06-300000352825us-gaap:OperatingSegmentsMemberfstr:SteelProductsAndMeasurementMember2022-12-310000352825us-gaap:CorporateNonSegmentMember2023-06-300000352825us-gaap:CorporateNonSegmentMember2022-12-310000352825fstr:RailProductsBusinessUnitMember2023-06-302023-06-300000352825fstr:CoatingsAndMeasurementMember2023-03-302023-03-300000352825fstr:RailProductsBusinessUnitMember2023-03-302023-03-300000352825fstr:RailProductsAndFrictionManagementMemberfstr:RailTechnologiesAndServicesSegmentMember2023-04-012023-06-300000352825fstr:RailProductsAndFrictionManagementMemberfstr:RailTechnologiesAndServicesSegmentMember2022-04-012022-06-300000352825fstr:RailProductsAndFrictionManagementMemberfstr:RailTechnologiesAndServicesSegmentMember2023-01-012023-06-300000352825fstr:RailProductsAndFrictionManagementMemberfstr:RailTechnologiesAndServicesSegmentMember2022-01-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2023-04-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2022-04-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2023-01-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:RailTechnologiesProductsMember2022-01-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2023-04-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2022-04-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2023-01-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2022-01-012022-06-300000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825fstr:PrecastConcreteBuildingsMemberfstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825fstr:PrecastInfrastructureProductsMemberfstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825fstr:PrecastInfrastructureProductsMemberfstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825fstr:PrecastInfrastructureProductsMemberfstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825fstr:PrecastInfrastructureProductsMemberfstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825fstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825fstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825fstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825fstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2023-04-012023-06-300000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2022-04-012022-06-300000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2023-01-012023-06-300000352825fstr:SteelProductsAndMeasurementMemberfstr:FabricatedSteelProductsMember2022-01-012022-06-300000352825fstr:CoatingsAndMeasurementMemberfstr:SteelProductsAndMeasurementMember2023-04-012023-06-300000352825fstr:CoatingsAndMeasurementMemberfstr:SteelProductsAndMeasurementMember2022-04-012022-06-300000352825fstr:CoatingsAndMeasurementMemberfstr:SteelProductsAndMeasurementMember2023-01-012023-06-300000352825fstr:CoatingsAndMeasurementMemberfstr:SteelProductsAndMeasurementMember2022-01-012022-06-300000352825fstr:SteelProductsAndMeasurementMember2023-04-012023-06-300000352825fstr:SteelProductsAndMeasurementMember2022-04-012022-06-300000352825fstr:SteelProductsAndMeasurementMember2023-01-012023-06-300000352825fstr:SteelProductsAndMeasurementMember2022-01-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2023-04-012023-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:SteelProductsAndMeasurementMember2023-04-012023-06-300000352825us-gaap:TransferredAtPointInTimeMember2023-04-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:RailTechnologiesAndServicesSegmentMember2023-04-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2023-04-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:SteelProductsAndMeasurementMember2023-04-012023-06-300000352825us-gaap:TransferredOverTimeMember2023-04-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2022-04-012022-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:SteelProductsAndMeasurementMember2022-04-012022-06-300000352825us-gaap:TransferredAtPointInTimeMember2022-04-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:RailTechnologiesAndServicesSegmentMember2022-04-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2022-04-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:SteelProductsAndMeasurementMember2022-04-012022-06-300000352825us-gaap:TransferredOverTimeMember2022-04-012022-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2023-01-012023-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:SteelProductsAndMeasurementMember2023-01-012023-06-300000352825us-gaap:TransferredAtPointInTimeMember2023-01-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:RailTechnologiesAndServicesSegmentMember2023-01-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2023-01-012023-06-300000352825us-gaap:TransferredOverTimeMemberfstr:SteelProductsAndMeasurementMember2023-01-012023-06-300000352825us-gaap:TransferredOverTimeMember2023-01-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMemberus-gaap:TransferredAtPointInTimeMember2022-01-012022-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825us-gaap:TransferredAtPointInTimeMemberfstr:SteelProductsAndMeasurementMember2022-01-012022-06-300000352825us-gaap:TransferredAtPointInTimeMember2022-01-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:RailTechnologiesAndServicesSegmentMember2022-01-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:PrecastConcreteProductsMember2022-01-012022-06-300000352825us-gaap:TransferredOverTimeMemberfstr:SteelProductsAndMeasurementMember2022-01-012022-06-300000352825us-gaap:TransferredOverTimeMember2022-01-012022-06-300000352825fstr:OverTimeInputMethodMember2023-04-012023-06-300000352825fstr:OverTimeInputMethodMember2022-04-012022-06-30xbrli:pure0000352825fstr:OverTimeOutputMethodMember2023-04-012023-06-300000352825fstr:OverTimeOutputMethodMember2022-04-012022-06-300000352825fstr:OverTimeInputMethodMember2023-01-012023-06-300000352825fstr:OverTimeInputMethodMember2022-01-012022-06-300000352825fstr:OverTimeOutputMethodMember2023-01-012023-06-300000352825fstr:OverTimeOutputMethodMember2022-01-012022-06-3000003528252023-07-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2022-12-310000352825fstr:PrecastConcreteProductsMember2022-12-310000352825fstr:SteelProductsAndMeasurementMember2022-12-310000352825fstr:RailTechnologiesAndServicesSegmentMemberfstr:VanHooseCoEnterprisesLtdMember2023-01-012023-06-300000352825fstr:PrecastConcreteProductsMemberfstr:VanHooseCoEnterprisesLtdMember2023-01-012023-06-300000352825fstr:SteelProductsAndMeasurementMemberfstr:VanHooseCoEnterprisesLtdMember2023-01-012023-06-300000352825fstr:VanHooseCoEnterprisesLtdMember2023-01-012023-06-300000352825fstr:RailTechnologiesAndServicesSegmentMember2023-06-300000352825fstr:PrecastConcreteProductsMember2023-06-300000352825fstr:SteelProductsAndMeasurementMember2023-06-300000352825us-gaap:PatentsMembersrt:WeightedAverageMember2023-06-300000352825us-gaap:PatentsMember2023-06-300000352825us-gaap:CustomerRelationshipsMembersrt:WeightedAverageMember2023-06-300000352825us-gaap:CustomerRelationshipsMember2023-06-300000352825us-gaap:TrademarksAndTradeNamesMembersrt:WeightedAverageMember2023-06-300000352825us-gaap:TrademarksAndTradeNamesMember2023-06-300000352825us-gaap:TechnologyBasedIntangibleAssetsMembersrt:WeightedAverageMember2023-06-300000352825us-gaap:TechnologyBasedIntangibleAssetsMember2023-06-300000352825us-gaap:OffMarketFavorableLeaseMembersrt:WeightedAverageMember2023-06-300000352825us-gaap:OffMarketFavorableLeaseMember2023-06-300000352825us-gaap:NoncompeteAgreementsMember2023-06-300000352825srt:WeightedAverageMemberus-gaap:NoncompeteAgreementsMember2022-12-310000352825us-gaap:NoncompeteAgreementsMember2022-12-310000352825us-gaap:PatentsMembersrt:WeightedAverageMember2022-12-310000352825us-gaap:PatentsMember2022-12-310000352825us-gaap:CustomerRelationshipsMembersrt:WeightedAverageMember2022-12-310000352825us-gaap:CustomerRelationshipsMember2022-12-310000352825us-gaap:TrademarksAndTradeNamesMembersrt:WeightedAverageMember2022-12-310000352825us-gaap:TrademarksAndTradeNamesMember2022-12-310000352825us-gaap:TechnologyBasedIntangibleAssetsMembersrt:WeightedAverageMember2022-12-310000352825us-gaap:TechnologyBasedIntangibleAssetsMember2022-12-310000352825us-gaap:OffMarketFavorableLeaseMembersrt:WeightedAverageMember2022-12-310000352825us-gaap:OffMarketFavorableLeaseMember2022-12-310000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-04-012023-06-300000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-04-012022-06-300000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2023-01-012023-06-300000352825us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-06-300000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberus-gaap:RevolvingCreditFacilityMemberfstr:FourthAmendedAndRestatedCreditAgreementMember2021-08-132021-08-130000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberus-gaap:RevolvingCreditFacilityMemberfstr:FourthAmendedAndRestatedCreditAgreementMember2021-08-130000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberfstr:FourthAmendedAndRestatedCreditAgreementMemberus-gaap:DebtInstrumentRedemptionPeriodOneMember2023-06-30fstr:covenant0000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberfstr:FourthAmendedAndRestatedCreditAgreementMemberus-gaap:DebtInstrumentRedemptionPeriodOneMember2021-08-130000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberus-gaap:DebtInstrumentRedemptionPeriodTwoMemberfstr:FourthAmendedAndRestatedCreditAgreementMember2021-08-130000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberfstr:FourthAmendedAndRestatedCreditAgreementMember2021-08-1300003528252022-08-120000352825fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMemberus-gaap:RevolvingCreditFacilityMember2023-06-300000352825us-gaap:PerformanceSharesMember2023-04-012023-06-300000352825us-gaap:PerformanceSharesMember2022-04-012022-06-300000352825us-gaap:PerformanceSharesMember2023-01-012023-06-300000352825us-gaap:PerformanceSharesMember2022-01-012022-06-300000352825us-gaap:RestrictedStockMember2022-01-012022-06-300000352825us-gaap:ShareBasedCompensationAwardTrancheOneMemberus-gaap:RestrictedStockMember2023-01-012023-06-300000352825srt:MinimumMemberus-gaap:ShareBasedCompensationAwardTrancheTwoMemberus-gaap:RestrictedStockMember2023-01-012023-06-300000352825srt:DirectorMember2023-01-012023-06-300000352825us-gaap:RestrictedStockMember2022-12-310000352825fstr:DeferredStockUnitsMember2022-12-310000352825us-gaap:PerformanceSharesMember2022-12-310000352825us-gaap:RestrictedStockMember2023-01-012023-06-300000352825fstr:DeferredStockUnitsMember2023-01-012023-06-300000352825us-gaap:RestrictedStockMember2023-06-300000352825fstr:DeferredStockUnitsMember2023-06-300000352825us-gaap:PerformanceSharesMember2023-06-300000352825us-gaap:SwapMember2022-08-120000352825fstr:Swap2Member2022-08-310000352825us-gaap:FairValueInputsLevel1Member2023-06-300000352825us-gaap:FairValueInputsLevel2Member2023-06-300000352825us-gaap:FairValueInputsLevel3Member2023-06-300000352825us-gaap:FairValueInputsLevel1Member2022-12-310000352825us-gaap:FairValueInputsLevel2Member2022-12-310000352825us-gaap:FairValueInputsLevel3Member2022-12-3100003528252022-01-012022-12-310000352825us-gaap:SwapMember2023-04-012023-06-300000352825us-gaap:SwapMember2022-04-012022-06-300000352825us-gaap:SwapMember2023-01-012023-06-300000352825us-gaap:SwapMember2022-01-012022-06-300000352825country:US2023-01-012023-06-30fstr:plan0000352825country:CA2023-01-012023-06-300000352825country:GB2023-01-012023-06-300000352825country:US2023-04-012023-06-300000352825country:US2022-04-012022-06-300000352825country:US2022-01-012022-06-300000352825country:US2023-06-300000352825country:GB2023-04-012023-06-300000352825country:GB2022-04-012022-06-300000352825country:GB2022-01-012022-06-300000352825country:GB2023-06-300000352825us-gaap:PensionPlansDefinedBenefitMember2023-01-012023-06-300000352825country:CA2023-04-012023-06-300000352825country:CA2022-04-012022-06-300000352825country:CA2022-01-012022-06-300000352825fstr:UPRRMember2019-03-132019-03-130000352825fstr:UPRRMember2019-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 June 30, 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 August 1, 2023, there were 11,091,020 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)
June 30,
2023
December 31,
2022
(Unaudited)
ASSETS
Current assets:
Cash and cash equivalents$3,880 $2,882 
Accounts receivable - net (Note 5)74,249 82,455 
Contract assets - net (Note 3)34,011 33,613 
Inventories - net (Note 6)79,451 75,721 
Other current assets12,182 11,061 
Total current assets203,773 205,732 
Property, plant, and equipment - net76,948 85,344 
Operating lease right-of-use assets - net15,770 17,291 
Other assets:
Goodwill (Note 4)31,404 30,733 
Other intangibles - net (Note 4)21,256 23,831 
Deferred tax assets (Note 9) 24 
Other assets2,417 2,355 
TOTAL ASSETS$351,568 $365,310 
LIABILITIES AND STOCKHOLDERS’ EQUITY
Current liabilities:
Accounts payable $43,933 $48,782 
Deferred revenue15,969 19,452 
Accrued payroll and employee benefits8,709 10,558 
Current portion of accrued settlement (Note 13)8,000 8,000 
Current maturities of long-term debt (Note 7)102 127 
Other accrued liabilities14,928 16,192 
Total current liabilities91,641 103,111 
Long-term debt (Note 7)89,403 91,752 
Deferred tax liabilities (Note 9)1,718 3,109 
Long-term portion of accrued settlement (Note 13)6,000 8,000 
Long-term operating lease liabilities12,669 14,163 
Other long-term liabilities7,545 7,577 
Stockholders’ equity:
Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at June 30, 2023 and December 31, 2022, 11,115,779; shares outstanding at June 30, 2023 and December 31, 2022, 10,816,902 and 10,776,827, respectively
111 111 
Paid-in capital40,919 41,303 
Retained earnings124,548 123,169 
Treasury stock - at cost, 298,877 and 338,952 common stock shares at June 30, 2023 and December 31, 2022, respectively
(4,846)(6,240)
Accumulated other comprehensive loss(18,536)(21,165)
Total L.B. Foster Company stockholders’ equity142,196 137,178 
Noncontrolling interest396 420 
Total stockholders’ equity142,592 137,598 
TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY$351,568 $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
June 30,
Six Months Ended
June 30,
2023202220232022
Sales of goods$132,167 $116,584 $230,705 $201,005 
Sales of services15,867 14,931 32,817 29,304 
Total net sales148,034 131,515 263,522 230,309 
Cost of goods sold101,069 95,331 179,134 165,176 
Cost of services sold14,713 12,891 28,845 25,393 
Total cost of sales115,782 108,222 207,979 190,569 
Gross profit32,252 23,293 55,543 39,740 
Selling and administrative expenses24,528 19,394 45,951 36,692 
Amortization expense1,375 1,419 2,740 2,855 
Operating profit6,349 2,480 6,852 193 
Interest expense - net1,574 384 2,962 754 
Other expense (income) - net719 (701)2,546 (1,264)
Income before income taxes4,056 2,797 1,344 703 
Income tax expense563 821 22 313 
Net income3,493 1,976 1,322 390 
Net loss attributable to noncontrolling interest(38)(34)(57)(54)
Net income attributable to L.B. Foster Company$3,531 $2,010 $1,379 $444 
Basic earnings per common share$0.32 $0.18 $0.12 $0.04 
Diluted earnings per common share$0.32 $0.18 $0.12 $0.04 


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 INCOME (LOSS)
(Unaudited)
(In thousands)
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Net income$3,493 $1,976 $1,322 $390 
Other comprehensive income (loss), net of tax:
Foreign currency translation adjustment1,252 (3,688)2,503 (4,568)
Unrealized gain on cash flow hedges, net of tax expense of $0, $50, $0, and $238, respectively
496 147 78 698 
Cash flow hedges reclassified to earnings, net of tax expense of $0, $0, $0, and $66, respectively
   93 
Reclassification of pension liability adjustments to earnings, net of tax expense of $2, $16, $4, and $32, respectively*
41 50 81 99 
Total comprehensive income (loss)5,282 (1,515)3,984 (3,288)
Less comprehensive (loss) income attributable to noncontrolling interest:
Net loss attributable to noncontrolling interest(38)(34)(57)(54)
Foreign currency translation adjustment29 (61)33 24 
Amounts attributable to noncontrolling interest(9)(95)(24)(30)
Comprehensive income (loss) attributable to L.B. Foster Company$5,291 $(1,420)$4,008 $(3,258)

 
*
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)
Six Months Ended
June 30,
20232022
CASH FLOWS FROM OPERATING ACTIVITIES:
Net income$1,322 $390 
Adjustments to reconcile net income to cash used in operating activities:
Deferred income taxes(1,710)(173)
Depreciation4,989 3,814 
Amortization2,740 2,855 
Equity in income of nonconsolidated investments(16)(87)
Gain on sales and disposals of property, plant, and equipment(366)(214)
Stock-based compensation1,829 1,183 
Loss (gain) on asset divestitures3,074 (491)
Change in operating assets and liabilities:
Accounts receivable6,584 (17,327)
Contract assets(3,033)2,190 
Inventories(13,068)(10,695)
Other current assets(1,251)(3,573)
Other noncurrent assets(865)1,715 
Accounts payable465 9,347 
Deferred revenue627 5,301 
Accrued payroll and employee benefits(1,885)(2,943)
Accrued settlement(2,000)(2,000)
Other current liabilities(941)(1,748)
Other long-term liabilities172 (926)
Net cash used in operating activities(3,333)(13,382)
CASH FLOWS FROM INVESTING ACTIVITIES:
Proceeds from the sale of property, plant, and equipment539 237 
Capital expenditures on property, plant, and equipment(1,495)(3,048)
Proceeds from business dispositions7,706 1,195 
Acquisitions, net of cash acquired966 (5,712)
Net cash provided by (used in) investing activities7,716 (7,328)
CASH FLOWS FROM FINANCING ACTIVITIES:
Repayments of debt(95,251)(78,093)
Proceeds from debt92,331 96,970 
Treasury stock acquisitions(977)(401)
Investment of noncontrolling interest334  
Net cash (used in) provided by financing activities(3,563)18,476 
Effect of exchange rate changes on cash and cash equivalents178 (477)
Net increase (decrease) in cash and cash equivalents998 (2,711)
Cash and cash equivalents at beginning of period2,882 10,372 
Cash and cash equivalents at end of period$3,880 $7,661 
Supplemental disclosure of cash flow information:
Interest paid$2,889 $662 
Income taxes (received) paid$(331)$389 


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 June 30, 2023
Common
Stock
Paid-in
Capital
Retained
Earnings
Treasury
Stock
Accumulated Other
Comprehensive Loss
Noncontrolling
Interest
Total Stockholders’
Equity
Balance, March 31, 2023$111 $40,951 $121,017 $(5,174)$(20,296)$405 $137,014 
Net income (loss)— — 3,531 — — (38)3,493 
Other comprehensive income, net of tax:
Pension liability adjustment— — — — 41 — 41 
Foreign currency translation adjustment— — — — 1,223 29 1,252 
Unrealized derivative gain on cash flow hedges— — — — 496 — 496 
Purchase of 51,241 common shares for treasury
— — — (662)— — (662)
Issuance of 58,432 common shares, net of shares withheld for taxes
— (977)— 990 — — 13 
Stock-based compensation— 945 — — — — 945 
Balance, June 30, 2023$111 $40,919 $124,548 $(4,846)$(18,536)$396 $142,592 

Three Months Ended June 30, 2022
Common
Stock
Paid-in
Capital
Retained
Earnings
Treasury
Stock
Accumulated Other
Comprehensive Loss
Noncontrolling
Interest
Total Stockholders’
Equity
Balance, March 31, 2022$111 $42,153 $167,167 $(9,200)$(19,117)$583 $181,697 
Net income (loss)— — 2,010 — — (34)1,976 
Other comprehensive loss, net of tax:
Pension liability adjustment— — — — 50 — 50 
Foreign currency translation adjustment— — — — (3,627)(61)(3,688)
Unrealized derivative gain on cash flow hedges— — — — 147 — 147 
Issuance of 26,167 common shares, net of shares withheld for taxes
— (877)— 809 — — (68)
Stock-based compensation— 925 — — — — 925 
Balance, June 30, 2022$111 $42,201 $169,177 $(8,391)$(22,547)$488 $181,039 

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


7

L.B. FOSTER COMPANY AND SUBSIDIARIES
CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS’ EQUITY
(Unaudited)
(Dollars in thousands)
Six Months Ended June 30, 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 income (loss)— — 1,379 — — (57)1,322 
Other comprehensive income, net of tax:
Pension liability adjustment— — — — 81 — 81 
Foreign currency translation adjustment— — — — 2,470 33 2,503 
Unrealized derivative gain on cash flow hedges— — — — 78 — 78 
Purchase of 51,241 common shares for treasury
— — — (662)— — (662)
Issuance of 91,316 common shares, net of shares withheld for taxes
— (2,213)— 2,056 — — (157)
Stock-based compensation— 1,829 — — — — 1,829 
Balance, June 30, 2023$111 $40,919 $124,548 $(4,846)$(18,536)$396 $142,592 

Six Months Ended June 30, 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 income (loss)— — 444 — — (54)390 
Other comprehensive (loss) income, net of tax:
Pension liability adjustment— — — — 99 — 99 
Foreign currency translation adjustment— — — — (4,592)24 (4,568)
Unrealized derivative gain on cash flow hedges— — — — 698 — 698 
Cash flow hedges reclassified to earnings— — — — 93 — 93 
Issuance of 60,607 common shares, net of shares withheld for taxes
— (2,254)— 1,788 — — (466)
Stock-based compensation— 1,183 — — — — 1,183 
Balance, June 30, 2022$111 $42,201 $169,177 $(8,391)$(22,547)$488 $181,039 
The accompanying notes are an integral part of these Condensed Consolidated Financial Statements.
8

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 and six months ended June 30, 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
June 30, 2023
Three Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$91,616 $6,627 $81,797 $3,998 
Precast Concrete Products33,865 1,296 23,611 (125)
Steel Products and Measurement22,553 1,456 26,107 762 
Total$148,034 $9,379 $131,515 $4,635 

Six Months Ended
June 30, 2023
Six Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$156,000 $9,015 $145,507 $5,037 
Precast Concrete Products58,153 948 38,621 (916)
Steel Products and Measurement49,369 1,448 46,181 (1,386)
Total$263,522 $11,411 $230,309 $2,735 

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.


9

A reconciliation of reportable segment net profit to the Company’s consolidated total for the periods presented:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Operating profit for reportable segments$9,379 $4,635 $11,411 $2,735 
Interest expense - net(1,574)(384)(2,962)(754)
Other (expense) income - net(719)701 (2,546)1,264 
Unallocated corporate expenses and other unallocated charges(3,030)(2,155)(4,559)(2,542)
Income before income taxes$4,056 $2,797 $1,344 $703 

The following table illustrates assets of the Company by reportable segment for the periods presented:
June 30,
2023
December 31,
2022
Rail, Technologies, and Services$177,515 $172,111 
Precast Concrete Products104,892 108,598 
Steel Products and Measurement38,492 54,516 
Unallocated corporate assets30,669 30,085 
Total$351,568 $365,310 

On June 30, 2023, the Company sold substantially all the operating assets of the prestressed concrete railroad tie business operated by its wholly-owned subsidiary, CXT Incorporated (“Ties”), located in Spokane, WA, for $2,368 in proceeds, subject to final working capital adjustments, generating a $1,009 loss on the sale, which was recorded in “Other expense (income) - net”. The Ties 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 business (“Chemtec”) for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,065 loss on the sale, which was 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
June 30,
Six Months Ended
June 30,
2023202220232022
Rail Products and Global Friction Management$81,926 $70,416 $137,974 $122,067 
Technology Services and Solutions9,690 11,381 18,026 23,440 
Rail, Technologies, and Services91,616 81,797 156,000 145,507 
Precast Concrete Buildings19,325 15,811 30,211 25,781 
Precast Infrastructure Products14,540 7,800 27,942 12,840 
Precast Concrete Products33,865 23,611 58,153 38,621 
Fabricated Steel Products14,854 17,967 25,371 30,571 
Coatings and Measurement7,699 8,140 23,998 15,610 
Steel Products and Measurement22,553 26,107 49,369 46,181 
Total net sales$148,034 $131,515 $263,522 $230,309 

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.





10

Net sales by the timing of the transfer of goods and services was as follows for the periods presented:
Three Months Ended June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$75,923 $14,540 $20,407 $110,870 
Over time15,693 19,325 2,146 37,164 
Total net sales$91,616 $33,865 $22,553 $148,034 
Three Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$65,872 $8,577 $20,964 $95,413 
Over time15,925 15,034 5,143 36,102 
Total net sales$81,797 $23,611 $26,107 $131,515 

Six Months Ended June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$129,757 $27,942 $36,133 $193,832 
Over time26,243 30,211 13,236 69,690 
Total net sales$156,000 $58,153 $49,369 $263,522 
Six Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$115,038 $12,840 $36,026 $163,904 
Over time30,469 25,781 10,155 66,405 
Total net sales$145,507 $38,621 $46,181 $230,309 

The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Revenue under long-term agreements is at times 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. The Company’s revenue recognized over time under long-term agreements is also at times recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements. The use of an input or an output measure to recognize revenue is determined based on what is most appropriate given the nature of the work performed and terms of the associated agreement.

Revenue recognized over time was as follows for the periods presented:
Three Months Ended
June 30,
Percentage of Total Net Sales
Three Months Ended June 30,
2023202220232022
Over time input method$15,724 $20,089 10.6 %15.3 %
Over time output method21,440 16,013 14.5 12.2 
Total over time sales$37,164 $36,102 25.1 %27.5 %

Six Months Ended
June 30,
Percentage of Total Net Sales
Six Months Ended June 30,
2023202220232022
Over time input method$31,935 $39,411 12.1 %17.1 %
Over time output method37,755 26,994 14.3 11.7 
Total over time sales$69,690 $66,405 26.4 %28.8 %

11

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 assets4,797 
Transfers from contract asset balance to accounts receivable (4,399)
Balance as of June 30, 2023$34,011 

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(4,049)
Increase in billings in excess of cost, excluding revenue recognized 3,525 
Other adjustments, including business divestiture(1,938)
Balance as of June 30, 2023$4,319 

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 June 30, 2023, the Company had approximately $290,076 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 12.0% of the June 30, 2023 backlog was related to projects that are anticipated to extend beyond June 30, 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 
VanHooseCo acquisition 242  242 
Foreign currency translation impact429   429 
Balance as of June 30, 2023$20,377 $11,027 $ $31,404 
    
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 June 30, 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.








12

As of June 30, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:
June 30, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Patents10$338 $(197)$141 
Customer relationships1627,656 (15,828)11,828 
Trademarks and trade names167,983 (4,299)3,684 
Technology1432,306 (26,978)5,328 
Favorable lease6327 (52)275 
$68,610 $(47,354)$21,256 

During the six months ended June 30, 2023, certain fully amortized intangible assets of $28 related to non-compete agreements were eliminated from gross intangible assets and accumulated amortization.

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 

On June 21, 2022, the Company acquired the stock of Skratch Enterprises Ltd. (“Skratch”). On August 12, 2022, the Company acquired the operating assets of VanHooseCo Precast LLC (“VanHooseCo”). As of June 30, 2023, the purchase accounting for these transactions is final.
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 $256 and $150 for the three months ended June 30, 2023 and 2022, respectively, and an expense of $411 and $211 for the six months ended June 30, 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 provision411 
Write-off against allowance(197)
Balance as of June 30, 2023$1,027 
13

Note 6. Inventory
Inventory is valued at average cost or net realizable value, whichever is lower. The Company’s components of inventory as of June 30, 2023 and December 31, 2022 are summarized in the following table:
June 30,
2023
December 31,
2022
Finished goods$48,237 $41,431 
Work-in-process5,304 9,693 
Raw materials25,910 24,597 
Inventories - net$79,451 $75,721 

Note 7. Long-Term Debt and Related Matters
Long-term debt consisted of the following:
June 30,
2023
December 31,
2022
Revolving credit facility$89,280 $91,567 
Finance leases and financing agreements225 312 
Total89,505 91,879 
Less current maturities(102)(127)
Long-term portion$89,403 $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 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 acquisition of VanHooseCo Precast, LLC (“VanHooseCo”) 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.50 through June 30, 2023 to accommodate the transaction.

As of June 30, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,173.
14

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

The following table sets forth the computation of basic and diluted earnings per common share for the periods indicated:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Numerator for basic and diluted earnings per common share:
Net income$3,493 $1,976 $1,322 $390 
Denominator:
Weighted average shares outstanding10,807 10,715 10,800 10,700 
Denominator for basic earnings per common share10,807 10,715 10,800 10,700 
Effect of dilutive securities:
Stock compensation plans71 99 66 109 
Dilutive potential common shares71 99 66 109 
Denominator for diluted earnings per common share - adjusted weighted average shares outstanding10,878 10,814 10,866 10,809 
Basic earnings per common share$0.32 $0.18 $0.12 $0.04 
Diluted earnings per common share$0.32 $0.18 $0.12 $0.04 
Note 9. Income Taxes
For the three months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $563 and $821, respectively, on pre-tax income of $4,056 and $2,797, respectively, for an effective income tax rate of 13.9% and 29.4%, respectively. For the six months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $22 and $313, respectively, on pre-tax income of $1,344 and $703, respectively, for an effective income tax rate of 1.6% and 44.5%, respectively. The Company's effective income tax rate for the three and six months ended June 30, 2023 differed from the federal statutory rate of 21% primarily due to the realization of a portion of its U.S. deferred tax assets previously offset by a valuation allowance. The Company continues 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 $945 and $925 for the three months ended June 30, 2023 and 2022, respectively, and $1,829 and $1,183 for the six months ended June 30, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of June 30, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,026. The Company will recognize this unrecognized compensation expense over the upcoming 2.7 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
15

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 six months ended June 30, 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 
Granted181,914  367,558 11.78 
Vested(88,367)(33,864) 15.97 
Adjustment for incentive awards expected to vest  20,104 15.36 
Outstanding as of June 30, 2023267,720 12,404 496,140 $14.44 
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.

Cash equivalents - Included in “Cash and cash equivalents” within the Condensed Consolidated Balance Sheets are investments in non-domestic term deposits. The carrying amounts approximate fair value because of the short maturity of the instruments.

SOFR-based interest rate swaps - To reduce the impact of interest rate changes on outstanding variable-rate debt, the Company amended and entered into forward-starting SOFR-based interest rate swaps with notional values totaling $20,000 and $20,000 effective August 12, 2022 and August 31, 2022, respectively. The fair value of the interest rate swaps are based on market-observable forward interest rates and represents the estimated amount that the Company would pay to terminate the agreements. As such, the swap agreements are classified as Level 2 within the fair value hierarchy. As of June 30, 2023 and December 31, 2022, the interest rate swaps were recorded in “Other current assets” when the interest rate swaps’ fair market value are in an asset position, and "Other accrued liabilities" when in a liability position within our Condensed Consolidated Balance Sheets.
Fair Value Measurements at Reporting DateFair Value Measurements at Reporting Date
June 30,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $ $ $17 $17 $ $ 
Interest rate swaps2,008  2,008  1,930  1,930  
Total assets$2,025 $17 $2,008 $ $1,947 $17 $1,930 $ 

The $20,000 interest rate swap agreements that became effective August 2022 are accounted for as cash flow hedges and the objective of the hedges is to offset the expected interest variability on payments associated with the interest rate on our debt. The gains and losses related to the interest rate swaps are reclassified from “Accumulated other comprehensive loss” in our Condensed Consolidated Balance Sheets and included in “Interest expense - net” in our Condensed Consolidated Statements of Operations as the interest expense from our debt is recognized.

For the three months ended June 30, 2023 and 2022, the Company recognized interest income of $295 and $19, respectively, from interest rate swaps. For the six months ended June 30, 2023 and 2022, the Company recognized interest income and interest expense of $540 and $78, respectively, from interest rate swaps.

16

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.


United States Defined Benefit Plan
Net periodic pension costs for the United States defined benefit pension plan for the three and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$71 $49 $143 $97 
Expected return on plan assets(64)(66)(128)(132)
Recognized net actuarial loss16 18 31 35 
Net periodic pension cost$23 $1 $46 $ 

The Company has made contributions to its United States defined benefit plan of $176 during the six months ended June 30, 2023 and expects to make total contributions of $400 during 2023.

United Kingdom Defined Benefit Plan
Net periodic pension costs for the United Kingdom defined benefit pension plan for the three and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$56 $43 $112 $86 
Expected return on plan assets(84)(76)(168)(152)
Amortization of prior service costs and transition amount6 6 12 12 
Recognized net actuarial loss3 40 6 80 
Net periodic pension (income) cost$(19)$13 $(38)$26 

United Kingdom regulations require trustees to adopt a prudent approach to funding required contributions to defined benefit pension plans. For the six months ended June 30, 2023, the Company contributed approximately $170 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
June 30,
Six Months Ended
June 30,
2023202220232022
United States$793 $390 $1,407 $695 
Canada32 45 94 105 
United Kingdom315 379 576 379 
$1,140 $814 $2,077 $1,179 
17

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 then-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$6,000 
20248,000 
Total$14,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 June 30, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,447 and $2,472, respectively.

18

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 June 30, 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 June 30, 2023, no such disclosures were considered necessary.
19

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: 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; a continuation or worsening of the adverse economic conditions in the markets we serve, including recession, 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 decrease in freight or transit rail traffic; 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 Track Components, Chemtec, and Ties 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; the timeliness and availability of materials from our major suppliers, 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.

20

General Overview and Business Update
Results of the Quarter
Three Months Ended
June 30,
Percent
Change
Percent of Total Net Sales
Three Months Ended
June 30,
202320222023 vs. 202220232022
Net sales$148,034 $131,515 12.6 %100.0 %100.0 %
Gross profit32,252 23,293 38.5 21.8 17.7 
Expenses:
Selling and administrative expenses24,528 19,394 26.5 16.6 14.7 
Amortization expense1,375 1,419 (3.1)0.9 1.1 
Operating profit6,349 2,480 156.0 4.3 1.9 
Interest expense - net1,574 384 **1.1 0.3 
Other expense (income) - net719 (701)202.6 0.5 (0.5)
Income before income taxes4,056 2,797 45.0 2.7 2.1 
Income tax expense563 821 (31.4)0.4 0.6 
Net income3,493 1,976 76.8 2.4 1.5 
Net loss attributable to noncontrolling interest(38)(34)11.8 (0.0)(0.0)
Net income attributable to L.B. Foster Company$3,531 $2,010 75.7 %2.4 %1.5 %
Diluted earnings per common share$0.32 $0.18 
** 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 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 sold substantially all the operating 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 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 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,065 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.

On June 30, 2023, the Company sold substantially all the operating assets of the prestressed concrete railroad tie business operated by its wholly-owned subsidiary, CXT Incorporated (“Ties”), located in Spokane, WA, for $2,368 in proceeds, subject to final working capital adjustments, generating a $1,009 loss on the sale, which was recorded in “Other expense (income) - net”. The Ties business was reported in the Rail Products business unit within the Rail, Technologies, and Services segment.


21

Results Summary

Net sales of $148,034 for the three months ended June 30, 2023 increased by $16,519, or 12.6%, 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 and Chemtec businesses. Organic growth and acquisitions drove a 13.3% and 6.0% increase in sales over the prior year quarter, respectively, with an offsetting 6.8% decline from divestitures.

Gross profit for the three months ended June 30, 2023, was $32,252, an increase of $8,959 over the prior year quarter, or 38.5%, and gross profit margins expanded by 410 basis points to 21.8%. The improvement in gross profit is due to the portfolio changes that are a part of the Company’s strategic transformation plan along with increased sales volumes, product mix, and pricing.

Selling and administrative expenses for the three months ended June 30, 2023 increased by $5,134, or 26.5%, from the prior year quarter, due primarily to increased personnel costs as well as the net impact from business portfolio actions. Selling and administrative expenses as a percent of net sales were 16.6% versus 14.7% in the prior year quarter.

Other expense - net for the three months ended June 30, 2023 was $719 while other income - net was $701 in the prior year quarter. Other expense - net for the three months ended June 30, 2023 was due to the $1,041 loss on the divestitures of Ties and Chemtec, and other income - net for the three months ended June 30, 2022 was due to a $489 divestiture gain and $318 in insurance proceeds.

The Company’s effective income tax rate for the three months ended June 30, 2023 was 13.9%, compared to 29.4% in the prior year quarter. The Company’s effective income tax rate for the three months ended June 30, 2023 differed from the federal statutory of 21% primarily due to the realization of a portion of its U.S. deferred tax assets previously offset by a valuation allowance. The Company continues 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.

Net income for the three months ended June 30, 2023 attributable to the Company was $3,531, or $0.32 per diluted share, favorable by $1,521, or $0.14 per diluted share, from the prior year quarter. Net income for the three months ended June 30, 2023 was primarily driven by stronger comparable operating profit stemming from margin expansion despite the $1,041 loss on divestitures.

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 Ties, which further reduces the Company’s commoditized offering to allow for increased focus on its core growth platforms, Rail Technologies and Precast Concrete, as well as organic growth initiatives, debt reduction, and improving shareholder value.

Results of Operations - Segment Analysis

Second Quarter 2023 Compared to Second Quarter 2022

Rail, Technologies, and Services
Three Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$91,616 $81,797 $9,819 12.0 %
Gross profit$19,847 $15,661 $4,186 26.7 %
Gross profit percentage21.7 %19.1 %2.6 %13.1 %
Segment operating profit$6,627 $3,998 $2,629 65.8 %
Segment operating profit percentage7.2 %4.9 %2.3 %46.9 %

The Rail, Technologies, and Services segment sales for the three months ended June 30, 2023 increased by $9,819, or 12.0%, compared to the prior year quarter. Net sales increased by 17.0% organically and by 0.8% from the acquisition of Skratch, offset by a 5.8% decrease from the divestiture of Track Components. The Rail Products and Global Friction Management business units increase in sales was offset by sales decreases in the Technology Services and Solutions business unit. The Rail Products and Global 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 weak economic conditions in the Company’s U.K. based businesses.

The Rail, Technologies, and Services segment gross profit increased by $4,186, or 26.7% over the prior year quarter, and gross profit margins expanded 260 basis points to 21.7%. Gross profit increases in Rail Products and Global Friction Management were commensurate with higher sales levels, while weaker sales in Technology Services and Solutions partially offset the increased gross
22

profit. 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 $6,627, a $2,629 increase over the prior year quarter, due primarily to higher gross profit levels.

During the current quarter, the Rail, Technologies, and Services segment had an increase in new orders of $23,048, or 24.8%, compared to the prior year period. The increase is due to tailwinds from government infrastructure investment programs, despite a $3,114 decrease due to the divested Track Components business. Backlog as of June 30, 2023 was $132,451, an increase of $434, or 0.3%, versus the prior year quarter, despite a $6,960 and $832 reduction due to the Ties and Track Components divestitures, respectively.

Precast Concrete Products
Three Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$33,865 $23,611 $10,254 43.4 %
Gross profit$7,676 $3,347 $4,329 129.3 %
Gross profit percentage22.7 %14.2 %8.5 %59.9 %
Segment operating profit (loss)$1,296 $(125)$1,421 **
Segment operating profit (loss) percentage3.8 %(0.5 %)4.3 %**
** Results of the calculation are not considered meaningful for presentation purposes.

The Precast Concrete Products segment sales for the three months ended June 30, 2023 increased by $10,254, or 43.4%, compared to the prior year quarter. The VanHooseCo acquisition contributed $7,230, or 30.6%, of the increase in sales over the prior year quarter. Organic sales increased by $3,024, or 12.8%, 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 June 30, 2023 increased by $4,329, and gross profit margins expanded by 850 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 profit for the second quarter of 2023 was $1,296, a $1,421 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 65.0% and 28.2%, respectively, compared to the prior year quarter. The increase in new orders and backlog is due primarily to the VanHooseCo acquisition.

Steel Products and Measurement
Three Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$22,553 $26,107 $(3,554)(13.6)%
Gross profit$4,729 $4,285 $444 10.4 %
Gross profit percentage21.0 %16.4 %4.6 %27.8 %
Segment operating profit$1,456 $762 $694 91.1 %
Segment operating profit percentage6.5 %2.9 %3.6 %124.1 %

The Steel Products and Measurement segment sales for the three months ended June 30, 2023 decreased by $3,554, or 13.6%, compared to the prior year quarter. The decrease in sales for the second quarter of 2023 was attributable to the $4,176 decrease due to the divestiture of the Chemtec business during the first quarter of 2023 and a decline in the Fabricated Steel Products business, driven by soft demand for bridge grid decking. This decline was offset by increased activity in both traditional and adjacent market applications in the Protective Coatings business unit within Coatings and Measurement.

Steel Products and Measurement gross profit for the three months ended June 30, 2023 increased by $444, and gross profit margins increased 460 basis points to 21.0%. The increase in gross profit is primarily due to stronger margins in the Protective Coatings division attributable to higher volumes. The segment operating profit increased by $694 from the prior year quarter, due to higher gross profit levels.
23


During the quarter, the Steel Products and Measurement segment had an increase in new orders and backlog of $4,360, or 17.0%, and $18,635, or 39.4%, respectively, compared to the prior year quarter. The increase is a result of improved order levels in the Protective Coatings division due to strong demand in both traditional and adjacent market applications which was offset by a $6,023 decline from the Chemtec divestiture. The backlog increase was partially offset by a $7,503 decrease due to the Chemtec divestiture.

Six Month Results
Six Months Ended
June 30,
Percent
Change
Percent of Total Net Sales
Six Months Ended
June 30,
202320222023 vs. 202220232022
Net sales$263,522 $230,309 14.4 %100.0 %100.0 %
Gross profit55,543 39,740 39.8 21.1 17.3 
Expenses:
Selling and administrative expenses45,951 36,692 25.2 17.4 15.9 
Amortization expense2,740 2,855 (4.0)1.0 1.2 
Operating profit6,852 193 **2.6 0.1 
Interest expense - net2,962 754 **1.1 0.3 
Other expense (income) - net2,546 (1,264)**1.0 (0.5)
Income before income taxes$1,344 $703 91.2 %0.5 %0.3 %
Income tax expense22 313 (93.0)— 0.1 
Net income1,322 390 239.0 0.5 0.2 
Net loss attributable to noncontrolling interest(57)(54)5.6 — — 
Net income attributable to L.B. Foster Company1,379 444 210.6 0.5 0.2 
Diluted earnings per common share$0.12 $0.04 
** Results of the calculation are not considered meaningful for presentation purposes.

Results Summary

Net sales of $263,522 for the six months ended June 30, 2023 increased by $33,213, or 14.4%, over the prior year quarter. The change in sales is due in part to the acquisitions of Skratch and VanHooseCo offset by the divestitures of the Track Components and Chemtec businesses. Organic growth and acquisitions drove a 10.8% and 7.4% increase in sales over the prior year quarter, respectively, with an offsetting 3.7% decline from divestitures.

Gross profit for the six months ended June 30, 2023 was $55,543, an increase of $15,803 over the prior year quarter, or 39.8%, and gross profit margins expanded by 380 basis points to 21.1%. The improvement in gross profit is due to the portfolio changes that are a part of the Company’s strategic transformation plan along with higher sales volume, improved product mix, input costs, and pricing.

Selling and administrative expenses for the six months ended June 30, 2023 increased by $9,259, or 25.2%, from the prior year quarter, due in part to the acquisitions of VanHooseCo and Skratch, as well as higher personnel expenses. Selling and administrative expenses as a percent of net sales were 17.4 % versus 15.9 % in the prior year quarter, a 150 basis point increase.

Other expense - net for the six months ended June 30, 2023 was $2,546 while other income - net was $1,264 in the prior year quarter. Other expense - net for the six months ended June 30, 2023 was due primarily to the $3,074 loss on the divestitures of Ties and Chemtec, and other income - net for the six months ended June 30, 2022 was due to a $489 divestiture gain and $790 in insurance proceeds.

The Company’s effective income tax rate for the six months ended June 30, 2023 was 1.6%, compared to 44.5% in the prior year quarter. The Company’s effective tax rate for the six months ended June 30, 2023 differed from the federal statutory rate of 21% primarily due to the realization of a portion of its U.S. deferred tax assets previously offset by a valuation allowance. The Company continues 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.

Net income for the six months ended June 30, 2023 attributable to the Company was $1,379, or $0.12 per diluted share, favorable by $935, or $0.08 per diluted share, from the prior year quarter. Net income was primarily driven stronger operating profit stemming
24

from margin expansion during the six months ended June 30, 2023, which was offset by a $3,074 loss on the divestitures of the Chemtec and Ties.

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 Ties, which further reduces the Company’s commoditized offering to allow for increased focus on its core growth platforms, Rail Technologies and Precast Concrete, as well as organic growth initiatives, debt reduction, and improving shareholder value.

Results of Operations - Segment Analysis

First Six Months 2023 Compared to First Six Months 2022

Rail, Technologies, and Services
Six Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$156,000 $145,507 $10,493 7.2 %
Gross profit$34,131 $28,188 $5,943 21.1 %
Gross profit percentage21.9 %19.4 %2.5 %12.9 %
Segment operating profit$9,015 $5,037 $3,978 79.0 %
Segment operating profit percentage5.8 %3.5 %2.3 %66.9 %

The Rail, Technologies, and Services segment sales for the six months ended June 30, 2023 increased by $10,493, or 7.2%, compared to the prior year quarter. Net sales increased by 12.1% organically and by 1.0% from the acquisition of Skratch, offset by a 5.9% decrease from the divestiture of Track Components. The Rail Products and Global Friction Management business unit increase in sales were offset by sales decreases in the Technology Services and Solutions business unit. The Rail Products and Global Friction Management sales increases were 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 and weak economic conditions in the United Kingdom.

The Rail, Technologies, and Services segment gross profit increased by $5,943, or 21.1% over the prior year quarter, and gross profit margins expanded 250 basis points to 21.9%. Gross profit increases in Rail Products and Global Friction Management were commensurate with higher sales levels, while weaker sales in Technology Services and Solutions partially offset the gross profit. 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 $9,015, a $3,978 increase over the prior year quarter, due primarily to higher gross profit levels.

During the current quarter, the Rail, Technologies, and Services segment had an increase in new orders of $5,385, or 2.9%, compared to the prior year period. The increase is due primarily to increases in the Global Friction Management business unit, which was offset by an unfavorable impact of $7,918 due to the Track Components divestiture. Backlog as of June 30, 2023 was $132,451, an increase of $434, or 0.3%, versus the prior year quarter, despite a $6,960 and $832 reduction due to the Ties and Track Components sales, respectively.

Precast Concrete Products
Six Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net sales$58,153 $38,621 $19,532 50.6 %
Gross profit$13,197 $5,792 $7,405 127.8 %
Gross profit percentage22.7 %15.0 %7.7 %51.3 %
Segment operating profit (loss)$948 $(916)$1,864 203.5 %
Segment operating profit (loss) percentage1.6 %(2.4)%4.0 %168.7 %

The Precast Concrete Products segment sales for the six months ended June 30, 2023 increased by $19,532, or 50.6%, compared to the prior year quarter. The VanHooseCo acquisition contributed $15,530, or 40.2% of the increase in sales over the prior year quarter.
25

Organic sales increased by $4,002, or 10.4%, 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 six months ended June 30, 2023 increased by $7,405, and gross profit margins expanded by 770 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 profit for the six months ended June 30, 2023 was $948, a $1,864 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 76.0% and 28.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
Six Months Ended
June 30,
ChangePercent
Change
202320222023 vs. 20222023 vs. 2022
Net Sales$49,369 $46,181 $3,188 6.9 %
Gross profit$8,215 $5,760 $2,455 42.6 %
Gross profit percentage16.6 %12.5 %4.1 %33.4 %
Segment operating profit (loss)$1,448 $(1,386)$2,834 204.5 %
Segment operating profit (loss) percentage2.9 %(3.0)%5.9 %197.7 %

The Steel Products and Measurement segment sales for the six months ended June 30, 2023 increased by $3,188, or 6.9%, compared to the prior year quarter. The increase in sales for the second quarter of 2023 was attributable to the 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, driven by soft demand for bridge grid decking.

Steel Products and Measurement gross profit for the six months ended June 30, 2023 increased by $2,455, and gross profit margins increased 410 basis points to 16.6%. The increase in gross profit is primarily due to stronger margins in the Protective Coatings division attributable to higher volumes. The segment operating profit increased by $2,834 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 $9,057, or 17.9%, and $18,635, or 39.4%, 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 which was offset by a decrease of $6,982 due to the divestiture of Chemtec. The backlog increase was partially offset by a $7,503 decrease due to the Chemtec divestiture.

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 $39,547 was available for borrowing as of June 30, 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 $89,505 and $91,879 as of June 30, 2023 and December 31, 2022, respectively, and was primarily comprised of borrowings under its revolving credit facility.


26

The following table reflects available funding capacity, subject to covenant restrictions, as of June 30, 2023:
June 30, 2023
Cash and cash equivalents$3,880 
Credit agreement:
Total availability under the credit agreement130,000 
Outstanding borrowings on revolving credit facility(89,280)
Letters of credit outstanding(1,173)
Net availability under the revolving credit facility39,547 
Total available funding capacity$43,427 

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 June 30, 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 six months ended June 30, 2023 and 2022 were as follows:
Six Months Ended June 30,
20232022
Net cash used in operating activities$(3,333)$(13,382)
Net cash provided by (used in) investing activities7,716 (7,328)
Net cash (used in) provided by financing activities(3,563)18,476 
Effect of exchange rate changes on cash and cash equivalents178 (477)
Net increase (decrease) in cash and cash equivalents$998 $(2,711)

Cash Flow from Operating Activities
During the six months ended June 30, 2023, net cash used by operating activities was $3,333, compared to cash used by operating activities of $13,382 during the prior year period. For the six months ended June 30, 2023, net income and adjustments to reconcile net income from operating activities provided $11,862, compared to $7,277 in the prior year period. Working capital and other assets and liabilities used $15,195 in the current period, compared to using $20,659 in the prior year period. The Company received $2,973 during the six months ended June 30, 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 six months ended June 30, 2023 and 2022 were $1,495 and $3,048, respectively. The current period expenditures primarily relate to general plant and operational improvements throughout the Company, including corporate system and facility improvements and organic growth initiatives. Expenditures for the six months ended June 30, 2022 primarily related to general plant and operational improvements throughout the Company, as well as organic growth initiatives. During the six months ended June 30, 2023, the Company divested the assets of its Chemtec and Ties businesses, generating a cash inflow of $7,706. During the six months ended June 30, 2023 the Company received proceeds of $966 from final working capital adjustments related to prior year acquisitions. During the six months ended June 30, 2022 the Company had $5,712 in cash outflows for the acquisition of Skratch.

Cash Flow from Financing Activities
During the six months ended June 30, 2023 and 2022, the Company had a decrease in outstanding debt of $2,920 and an increase of $18,877, respectively. The decrease in debt for the six months ended June 30, 2023 was primarily due to the proceeds received from the Ties and Chemtec divestiture during the period, which were used to pay down debt, partially offset by increased working capital needs. The increase in debt for the 2022 period was the result of funding working capital and other assets and liabilities. Treasury stock acquisitions of $977 and $401 for the six months ended June 30, 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
27

to the Company’s liquidity, including availability of borrowings and covenant compliance under its revolving credit facility, and other capital needs of the business. In connection with the stock repurchase program, 51,241 shares valued at $662 were repurchased during the six months ended June 30, 2023.

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 June 30, 2023, the Company had $3,880 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 June 30, 2023, approximately $2,418 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 June 30, 2023, the Company's revolving credit facility had $39,547 of net availability, while the Company had $89,505 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, 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.50 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.

Segment Backlog
Total Company backlog is summarized by business segment in the following table for the periods indicated:
Backlog
June 30,
2023
December 31,
2022
June 30,
2022
Rail, Technologies, and Services$132,451 $105,241 $132,017 
Precast Concrete Products91,669 80,501 71,507 
Steel Products and Measurement65,956 86,509 47,321 
Total backlog $290,076 $272,251 $250,845 

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.
28

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 June 30, 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 six months ended June 30, 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.

29

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 June 30, 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
April 1, 2023 - April 30, 2023— $— — $15,000 
May 1, 2023 - May 31, 2023— — 30,03514,632 
June 1, 2023 - June 30, 2023441 14.02 21,20614,338 
Total441 $14.02 51,241$14,338 

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
Trading Arrangements
None of the Company’s directors or “officers,” as defined in Rule 16a-1(f) of the Securities Exchange Act of 1934, as amended (the “Exchange Act”), adopted, modified, or terminated a “Rule 10b5-1 trading arrangement” or a “non-Rule 10b5-1 trading arrangement,” as each term is defined in Item 408 of Regulation S-K, during the Company’s fiscal quarter ended June 30, 2023.
Amended and Restated Bylaws
On August 7, 2023, the Company’s Board of Directors (the “Board”) approved the Amended and Restated Bylaws, effective as of such date (the “Amended and Restated Bylaws”). The Amended and Restated Bylaws include certain changes to the procedures by which shareholders may recommend nominees to the Board, among other updates, including to:

implement certain revisions to the Amended and Restated Bylaws in line with Pennsylvania law, including (i) clarifying the requirements and procedures relating to virtual shareholder meetings and the notice procedures applicable to shareholder meetings, (ii) describing the role and authority of the presiding officer at any meeting of shareholders, (iii) specifying the procedures for a shareholder to authorize a proxy, (iv) clarifying who has the authority to fill vacancies on the Board, and (v) clarifying the indemnification rights of directors, officers and other persons under the Amended and Restated Bylaws;

address matters relating to Rule 14a-19 (the “Universal Proxy Rule”) under the Exchange Act, including (i) requiring that any shareholder submitting a nomination notice make a representation as to whether such shareholder intends to solicit proxies in support of director nominees other than the Company’s nominees in accordance with the Universal Proxy Rule, and if so, agree in writing that such shareholder will comply with the requirements of the Universal Proxy Rule; (ii) providing the Company a remedy if a shareholder fails to satisfy the Universal Proxy Rule requirements; (iii) requiring that a shareholder inform the Company if such shareholder no longer plans to solicit proxies in accordance with the Universal Proxy Rule; and (iv) requiring shareholders intending to use the Universal Proxy Rule to provide reasonable evidence of the satisfaction of the requirements under the Universal Proxy Rule at least five business days before the meeting upon request by the Company;

30

revise and enhance the procedures and disclosure requirements set forth in the advance notice bylaw provisions for director nominations made and business proposals submitted by shareholders (other than proposals submitted pursuant to Rule 14a-8 under the Exchange Act), including (i) requiring additional information, representations, and disclosures regarding proposing shareholders, proposed nominees, proposed business, and other persons related to, and acting in concert with, a shareholder and the shareholder’s solicitation of proxies; (ii) requiring a shareholder to be present in person to present its nomination or proposal at a shareholder meeting; (iii) clarifying that shareholders are not entitled to make additional or substitute nominations or proposals after the submission deadline and may only nominate a number of candidates to the Board that does not exceed the number of directors to be elected at such meeting; (iv) requiring that if requested by the Secretary of the Company, the Board or any committee of the Board proposed nominees make themselves available for interviews by the Board and any committee of the Board within five business days following the date of such request; and (v) clarifying the authority of the Secretary of the Company, the Board, or any committee of the Board to request additional information or written verification to demonstrate the accuracy of previously-provided information with respect to proposing shareholders, proposed nominees, and proposed business;

require any shareholders directly or indirectly soliciting proxies from other shareholders to use a proxy card color other than white, with the white proxy card being reserved for exclusive use by the Board;

provide that, unless the Company consents in writing to the selection of an alternative forum, (i) the state and federal courts sitting in the judicial district of the Commonwealth of Pennsylvania in the county of the Company’s registered office, will be the sole and exclusive forum for any (A) derivative action or proceeding brought on behalf of the Company, (B) action asserting a claim of breach of a fiduciary duty owed by any current or former director, officer or other employee of the Company to the Company or the Company’s shareholders, (C) action asserting a claim arising pursuant to any provision of the Pennsylvania Business Corporation Law, the Company’s articles of incorporation or the Amended and Restated Bylaws, or (D) action asserting a claim governed by the internal affairs doctrine; and (ii) the federal district courts of the United States of America will be the sole and exclusive forum for any action asserting a claim arising under the Securities Act of 1933, as amended; and

incorporate certain administrative, modernizing, and conforming changes to provide clarification and consistency, including those regarding meetings of the Board and of the shareholders.

The foregoing description of the Amended and Restated Bylaws does not purport to be complete and is qualified in its entirety by reference to the full text of the Amended and Restated Bylaws, which is filed as Exhibit 3.1 to this Quarterly Report on Form 10-Q and incorporated herein by reference.
31

Item 6. Exhibits
See Exhibit Index below.

Exhibit Index
Exhibit NumberDescription
*3.1
*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.

32

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:August 8, 2023By: /s/ William M. Thalman
William M. Thalman
Executive Vice President
and Chief Financial Officer
(Duly Authorized Officer of Registrant)

33
EX-3.1 2 ex-31q22023.htm EX-3.1 Document
Exhibit 3.1
AMENDED AND RESTATED
BYLAWS
OF
L.B. Foster Company
(a Pennsylvania corporation)
ARTICLE I
Notice - Waivers - Meetings Generally
Section 1.01    Manner of giving notice. -
(a)General rule. - Whenever notice in record form is required to be given to any person under the provisions of the Pennsylvania Business Corporation Law (“BCL”) or by the Articles of Incorporation (the “Articles”) of L.B. Foster Company, a Pennsylvania corporation (the “Corporation”), or these Bylaws, it may be given to the person either personally or by delivering a copy thereof (1) subject to Section 1.03, by first class or express mail, postage prepaid, or courier service, charges prepaid, to the address of the person appearing on the books of the Corporation or, in the case of directors, supplied by the director to the Corporation for the purpose of notice or (2) by facsimile transmission, e-mail or other electronic communication to the facsimile number or address for e-mail or other electronic communications supplied by the person to the Corporation for purposes of notice. If the notice is sent by mail or courier service, it shall be deemed to have been given to the person entitled thereto when deposited in the United States mail or with a courier service for delivery to that person or, in the case of facsimile transmission, e-mail or other electronic communication, when sent. A notice of meeting shall specify the place, if any, day and hour of the meeting and any other information required by any provision of the BCL, the Articles or these Bylaws.
(b)Adjourned shareholder meetings. - When a meeting of shareholders is adjourned, it shall not be necessary to give any notice of the adjourned meeting or of the business to be transacted at an adjourned meeting, other than by announcement at the meeting at which the adjournment is taken, unless the Board of Directors of the Corporation (the “Board of Directors” or “Board”) fixes a new record date for the adjourned meeting or the BCL, the Articles or these Bylaws require notice of the business to be transacted and such notice has not previously been given.
Section 1.02 Notice of meetings of the Board of Directors. - Notice of a regular meeting of the Board of Directors need not be given. Notice of every special meeting of the Board of Directors shall be given to each director at least 24 hours (in the case of notice by telephone, e-mail or other electronic communication) or 48 hours (in the case of notice by courier service or express mail) or 5 days (in the case of notice by first class mail) before the time at which the meeting is to be held. Every such notice shall state the time and place, if any, of the meeting. Neither the business to be transacted at, nor the purpose of, any regular or special meeting of the Board need be specified in a notice of the meeting, except as otherwise required by the BCL, the Articles or these Bylaws.
Section 1.03 Notice of meetings of shareholders. - Notice in record form of every meeting of shareholders shall be given by, or at the direction of, the secretary or other authorized person to each shareholder of record entitled to vote at the meeting at least 20 days



prior to the day named for the meeting. If the secretary or other authorized person does not give notice of a meeting within a reasonable time, the person or persons calling the meeting may do so. In the case of a special meeting of shareholders, the notice shall specify the general nature of the business to be transacted. If the Corporation has given a shareholder notice of the internet availability of proxy materials in a manner conforming with the rules of the Securities and Exchange Commission, the Corporation may give notice of the meeting to the shareholder by posting the notice on the internet website to which the proxy materials are posted.
Section 1.04 Use of conference telephone or other electronic communication technology. - Any director may participate in a meeting of the Board of Directors by means of conference telephone or other electronic communication technology such that persons participating in the meeting can hear each other. One or more persons may participate in a meeting of shareholders by means of conference telephone or other electronic communication technology such that persons participating in the meeting can hear each other. Participation in a meeting pursuant to this Section 1.04 shall constitute presence in person at the meeting.
Section 1.05 Waiver of notice. - Whenever any notice is required to be given under the provisions of the BCL, the Articles, these Bylaws or other applicable law, a waiver thereof filed with the secretary of the Corporation in record form, signed by the person or persons entitled to the notice, whether before or after the time stated therein, shall be deemed equivalent to the giving of the notice. Except as otherwise required by the BCL, the Articles or these Bylaws, neither the business to be transacted at, nor the purpose of, a regular meeting need be specified in the waiver of notice of the meeting. Attendance of a person at any meeting shall constitute a waiver of notice of the meeting except where a person attends a meeting for the express purpose of objecting, at the beginning of the meeting, to the transaction of any business because the meeting was not lawfully called or convened.
ARTICLE II
Shareholders
Section 2.01    Place of meeting. - Subject to Section 1.04, all meetings of shareholders
of the Corporation shall be held at such place as designated by the Board of Directors in the notice of the meeting. Notwithstanding the foregoing sentence, a meeting of shareholders does not need to be held at a place if the meeting is held by means of electronic technology (as defined for purposes of the BCL) in a fashion pursuant to which the shareholders have a reasonable opportunity to participate in the meeting, read or hear the proceedings substantially concurrently with their occurrence, vote on matters submitted to the shareholders and, subject to such guidelines and procedures as the Board of Directors may adopt in accordance with the Articles, these Bylaws and applicable law, make appropriate motions and comment on the business of the meeting.
Section 2.02 Annual and special meetings. - Annual meetings of shareholders shall be held at a date, time and place, if any, fixed by the Board of Directors and stated in the notice of meeting, to elect the Board of Directors and to transact such other business as may properly come before the meeting. Special meetings of shareholders may be called by the president for any purpose and shall be called by the president or secretary if directed by the Board of Directors.
2


Section 2.03 Quorum, adjournment and postponement. -
(a)General rule. - A meeting of shareholders of the Corporation duly called shall not be organized for the transaction of business unless a quorum is present. The presence of shareholders entitled to cast at least a majority of the votes that all shareholders are entitled to cast on a particular matter to be acted upon at the meeting shall constitute a quorum for the purposes of consideration and action on the matter. Shares of the Corporation owned, directly or indirectly, by it and controlled, directly or indirectly, by the Board of Directors, as such, shall not be counted in determining the total number of outstanding shares for quorum purposes at any given time.
(b)Withdrawal of a quorum. - The shareholders present at a duly organized meeting can continue to do business until adjournment notwithstanding the withdrawal of enough shareholders to leave less than a quorum.
(c)Adjournments generally. - Any regular or special meeting of the shareholders, including one at which directors are to be elected and one which cannot be organized because a quorum has not attended, may be adjourned for such period and to such place as the shareholders present and entitled to vote shall direct.
(d)Notice of adjourned virtual meeting. - Subject to applicable law, if notice of an adjourned meeting of shareholders held exclusively by means of electronic technology cannot be given by announcement at the meeting at which the adjournment is taken, notice may be given by means solely of a publicly available filing with the Securities and Exchange Commission.
(e)Electing directors at adjourned meeting. - Those shareholders entitled to vote who attend a meeting called for the election of directors that has been previously adjourned for lack of a quorum, although less than a quorum as fixed in this Section 2.03, shall nevertheless constitute a quorum for the purpose of electing directors.
(f)Other action in absence of quorum. - Those shareholders entitled to vote who attend a meeting of shareholders that has been previously adjourned for one or more periods aggregating at least 15 days because of an absence of a quorum, although less than a quorum as fixed in this Section 2.03, shall nevertheless constitute a quorum for the purpose of acting upon any matter set forth in the notice of the meeting if the notice states that those shareholders who attend the adjourned meeting shall nevertheless constitute a quorum for the purpose of acting upon the matter.
(g)Postponement of virtual meeting. - If a meeting of shareholders is to be held exclusively by means of electronic technology, as provided in Section 1708(c) of the BCL, and the presiding officer decides in his or her reasonable judgment on the day of the meeting that the meeting cannot be convened because of a reason outside the control of the Corporation, the presiding officer may postpone the meeting to a specified time later that day or the following day. Notice of the postponed meeting may be given by means solely of a publicly available filing with the Securities and Exchange Commission.
Section 2.04 Action by shareholders. - Except as otherwise provided in the BCL or the Articles or these Bylaws, whenever any corporate action is to be taken by vote of the shareholders of the Corporation, it shall be authorized upon receiving the affirmative vote of a majority of the votes cast by all shareholders entitled to vote thereon and, if any shareholders

3


are entitled to vote thereon as a class, upon receiving the affirmative vote of a majority of the votes cast by the shareholders entitled to vote as a class.
Section 2.05 Advance notice of nominations and proposals. -
(a)    Annual meetings of shareholders. -
(1)Nominations of persons for election to the Board of Directors and the proposal of business to be considered by the shareholders may be made at an annual meeting of shareholders (A) by or at the direction of the Board of Directors, including pursuant to the Corporation’s notice of meeting or any supplement thereto, or (B) by any shareholder of the Corporation present in person (as defined below) who was a shareholder of record at the time of giving of notice provided for in this Section 2.05, on the record date(s) for the determination of shareholders entitled to notice of and to vote at the annual meeting and at the time of the annual meeting, who is entitled to vote at the meeting, who nominates (in the case of a nomination) a number of candidates that does not exceed the number of directors to be elected at the meeting and who complies with the notice procedures set forth in this Section 2.05(a). Section 2.05(a)(1)(B) shall be the exclusive means for a shareholder to make nominations or submit other business before an annual meeting of shareholders (other than matters properly brought under Rule 14a-8 promulgated under the Exchange Act and included in the Corporation’s notice of meeting). If a shareholder is not present in person to present its nomination or proposal, such proposal will be disregarded (notwithstanding that proxies in respect of such proposal may have been solicited, obtained or delivered). A shareholder is not entitled to have its nomination or proposal included in the Corporation’s proxy materials as a result of such shareholder’s compliance with the provisions of this Section 2.05, except if such nominees are also submitted in accordance and in compliance with Rule 14a-19 promulgated under the Exchange Act and other applicable requirements of state and federal law. For purposes of these Bylaws, “present in person” shall mean that the shareholder proposing that the business or nomination be brought before the meeting, or, if the proposing shareholder is not an individual, a qualified representative of such proposing shareholder, is in attendance at such meeting. For purposes of these Bylaws, to be a “qualified representative” of a shareholder, a person must be a duly authorized officer, manager or partner of such shareholder or authorized by a writing executed by such shareholder (or a reliable reproduction or electronic transmission of the writing) delivered to the Corporation prior to the meeting stating that such person is authorized to act for such shareholder as proxy at the meeting of shareholders.
(2)Subject to Section 2.05(d)(3) of these Bylaws, for nominations or other business to be properly brought before an annual meeting by a shareholder pursuant to Section 2.05(a)(1)(B), the shareholder must have given timely notice thereof in proper written form to the secretary and such other business must be a proper matter for shareholder action under the Articles, these Bylaws and applicable law and must not be expressly reserved for action by the Board of Directors under the Articles, these Bylaws or applicable law. To be timely, a shareholder’s notice shall be delivered to the secretary at the principal executive offices of the Corporation not later than the close of business on the 90th day nor earlier than the close of business on the 120th day prior to the first anniversary of the preceding year’s annual meeting; provided, however, that in the event that the date of the annual meeting is more than 30 days before or more than 60 days after such anniversary date, notice by the shareholder to be timely must be so delivered not earlier than the close of business on the 120th day prior to such annual meeting and not later than the close of business on the later of the 90th day prior to such annual meeting or the 7th day following the day on which public announcement of the date of such meeting is first made. In no event shall an adjournment, recess or postponement of an

4


annual meeting (or the public announcement thereof) commence a new time period (or extend any time period) for the giving of a shareholder’s notice as described above. For the avoidance of doubt, a shareholder shall not be entitled to make additional or substitute nominations or proposals following the expiration of the time periods set forth in this Section 2.05(a)(2). To be in proper written form, such shareholder’s notice shall set forth:
(A)as to each person whom the shareholder proposes to nominate for election or reelection as a director (i) all information relating to such person that would be required to be disclosed in a proxy statement or other filings required to be made in connection with solicitations of proxies for the election of directors in an election contest, or is otherwise required, in each case pursuant to Section 14 of the Exchange Act and the rules and regulations promulgated thereunder (including such person’s written consent to being named in proxy materials as a nominee and to serving as a director if elected), (ii) a reasonably detailed description of all direct and indirect compensation, reimbursement, indemnification, benefits and other agreements, arrangements and understandings (written or oral and formal or informal and whether monetary or non-monetary) during the past 3 years, and any other relationships, between or among any Proposing Person (as defined in Section 2.05(d)(2)), on the one hand, and each proposed nominee, and his or her respective affiliates and associates or any other participants in such solicitation, or others acting in concert (as defined in Section 2.05(d)(2)) therewith, on the other hand, including, without limitation, all information that would be required to be disclosed pursuant to Item 404 promulgated under Regulation S-K if the Proposing Person were the “registrant” for purposes of such Item and the nominee were a director or executive officer of such registrant, (iii) with respect to each nominee for election or reelection to the Board of Directors, a completed and signed questionnaire, representation and agreement required by Section 2.05(c), and (iv) such other information as may reasonably be required by the Corporation to determine the eligibility and qualifications of such proposed nominee to serve as an independent director of the Corporation or that could be material to a reasonable shareholder’s understanding of the independence, or lack thereof, of such nominee;
(B)as to any other business that the shareholder proposes to bring before the meeting, a brief description of the business desired to be brought before the meeting, the text of the proposal or business (including the text of any resolutions proposed for consideration and in the event that such business includes a proposal to amend these Bylaws, the language of the proposed amendment), the reasons for conducting such business at the meeting, the reasons why such shareholder or any other Proposing Person believes that the taking of the action or actions proposed to be taken would be in the best interests of the Corporation, any material interest in such business of each Proposing Person, including any anticipated benefit to the shareholder or any other Proposing Person therefrom and a description of all agreements, arrangements and understandings between any Proposing Person and any other person or persons (including their names) in connection with the proposal of such business by such shareholder and any other information relating to such business that would be required to be disclosed in a proxy statement or other filing required pursuant to Section 14(a) of the Exchange Act to be made in connection with the
5


solicitations of proxies in support of the business proposed to be brought before the meeting; and
(C)    as to each Proposing Person, (i) the name and address of such Proposing Person (including, if applicable, the name and address as they appear on the Corporation’s books), (ii) the class and number of shares of the Corporation which are, directly or indirectly, owned beneficially and of record by such Proposing Person, except that such Proposing Person shall in all events be deemed to beneficially own any shares of any class or series as to which such Proposing Person has a right to acquire beneficial ownership at any time in the future, (iii) any “derivative security” (as such term is defined in Rule 16a-1(c) under the Exchange Act) that constitutes a “call equivalent position” (as such term is defined in Rule 16a-1(b) under the Exchange Act) and that is, directly or indirectly, held or maintained by such shareholder with respect to any shares of any class or series of shares of the Corporation, including, without limitation, any option, warrant, convertible security, stock appreciation right or similar right or interest (including any derivative securities, as defined under Rule 16a-1 under the Exchange Act or other synthetic arrangement having characteristics of a long position) which, assuming for purposes of these Bylaws, are presently exercisable, with an exercise or conversion privilege or a settlement or payment mechanism at a price related to any class or series of securities of the Corporation or with a value derived in whole or in part from the price, value, dividend or amount of dividend or volatility of any class or series of securities of the Corporation, whether or not such instrument or right is subject to settlement in whole or in part in the underlying class or series of securities of the Corporation or otherwise, directly or indirectly held of record or owned beneficially by such Proposing Person and whether or not such Proposing Person may have entered into transactions that hedge or mitigate the economic effects of such security or instrument and other direct or indirect right or interest that may enable such Proposing Person to profit or share in any profit derived from, or to manage the risk or benefit from, any increase or decrease in the price, value, dividend or amount of dividend or volatility of the Corporation’s securities, in each case regardless of whether (x) such right or interest conveys any voting rights in such security to such Proposing Person, (y) such right or interest is required to be, or is capable of being, settled through delivery of such security, or (z) such Proposing Person may have entered into other transactions that hedge the economic effect of any such right or interest (any such right or interest referred to in this clause (iii) being a “Derivative Interest”); provided, however, that for the purpose of the term “Derivative Interest,” the term “derivative security” shall also include any security or instrument that would not otherwise constitute a “derivative security” (as such term is defined in Rule 16a-1(c) under the Exchange Act) as a result of any feature that would make any conversion, exercise or similar right or privilege of such security or instrument becoming determinable only at some future date or upon the happening of a future occurrence, in which case the determination of the amount of securities into which such security or instrument would be convertible or exercisable shall be made assuming that such security or instrument is immediately convertible or exercisable at the time of such determination, or otherwise include rights with an exercise or conversion privilege that is not fixed; and, provided, further, that any shareholder satisfying the requirements of Rule 13d-1(b)(1) under the Exchange Act (other than a shareholder that so satisfies Rule 13d-1(b)(1) under the

6


Exchange Act solely by reason of Rule 13d-1(b)(1)(ii)(E)) shall not be required to disclose a Derivative Interest held by such shareholder as a hedge with respect to a bona fide derivatives trade or position of such shareholder arising in the ordinary course of such shareholder’s business as a derivatives dealer, (iv) any proxy, contract, arrangement, understanding, or relationship pursuant to which any Proposing Person has a right to vote any shares of any security of the Corporation, (v) any contract, agreement, arrangement, understanding or relationship, including any repurchase or similar so-called “stock borrowing” agreement or arrangement (including any short position or any borrowing or lending of shares of stock), the purpose or effect of which is to mitigate loss, reduce economic risk (of ownership or otherwise) or increase or decrease voting power with respect to any capital stock of the Corporation or which provides any party, directly or indirectly, the opportunity to profit from any decrease in the price or value of the capital stock of the Corporation, including, without limitation, any “put equivalent position” (as such term is defined in Rule 16a-1(h) under the Exchange Act) related to any shares of any class or series of shares of the Corporation (any of the foregoing, a “Short Interest”), (vi) any rights to dividends on the shares of the Corporation owned beneficially by such Proposing Person that are separated or separable from the underlying shares of the Corporation, (vii) any proportionate interest in shares of the Corporation or Derivative Interests held, directly or indirectly, by a general or limited partnership in which such Proposing Person is a general partner or, directly or indirectly, beneficially owns an interest in a general partner and (viii) any performance-related fees (other than an asset-based fee) that such shareholder is entitled to, based on any increase or decrease in the value of shares of the Corporation, Derivative Interests, or Short Interests, if any, as of the date of such notice, including, without limitation, any such interests held by members of such Proposing Person’s immediate family sharing the same household, (ix) any material pending or threatened legal proceeding in which such Proposing Person is a party, material participant or has an interest (other than an interest that is substantially the same as all shareholders) involving the Corporation or any of its officers or directors, or any affiliate of the Corporation, (x) any direct or indirect interest (including a Derivative Interest or Short Interest, provided that, solely for purposes of this clause (x), references to the words “Corporation” within the definitions of “Derivative Interest” or “Short Interests” shall be replaced with the words “such affiliate” or “such competitor,” as applicable) of such Proposing Person in any contract or agreement with the Corporation, any affiliate of the Corporation or any significant competitor of the Corporation (including, in any such case, any employment agreement, collective bargaining agreement or consulting agreement), (xi) any other material relationship between such Proposing Person, on the one hand, and the Corporation, any affiliate of the Corporation or any significant competitor of the Corporation, on the other hand, (xii) any other information relating to such Proposing Person that would be required to be disclosed in a proxy statement or other filings required to be made in connection with solicitations of proxies for, as applicable, the proposal and/or for the election of directors in a contested election pursuant to Section 14 of the Exchange Act and the rules and regulations promulgated thereunder, (xiii) any other information that would be required to be set forth in a Schedule 13D filed pursuant to Rule 13d-1(a) or an amendment pursuant to Rule 13d-2(a) if such a statement were required to be filed under the Exchange Act and the rules and regulations promulgated thereunder by such Proposing Person, (xiv) a

7


representation whether the shareholder intends to be present in person at the meeting to propose such business or nomination, (xv) a representation whether the Proposing Person intends or is part of a group which intends (y) to deliver a proxy statement and/or form of proxy to holders of at least the percentage of the Corporation’s outstanding capital stock required to approve or adopt the proposal or elect the nominee and/or (z) otherwise to engage in or be a participant in a solicitation (within the meaning of Rule 14a-1(l) under the Exchange Act) of proxies in support of such proposal or nomination, and (xvi) a representation regarding whether a Proposing Person or any other person with whom the Proposing Person is acting in concert intends to or will submit, or is part of a group that intends to or will submit, any other proposal at the meeting, and (xvii) a representation regarding whether the Proposing Person intends, or is part of a group that intends, to solicit proxies in support of director nominees other than the Corporation’s nominees in accordance with Rule 14a-19 promulgated under the Exchange Act, and, in the event that a Proposing Person so intends, or is part of a group that so intends, a written agreement (in the form provided by the secretary upon written request), on behalf of such Proposing Person and any group of which it is a member, in which such Proposing Person acknowledges and agrees (w) that it, or the group of which it is a part, intends to solicit the holders of shares representing at least 67% of the voting power of the Corporation’s shares entitled to vote on the election of directors in support of such director nominees other than the Corporation’s nominees in accordance with Rule 14a-19(a)(3) promulgated under the Exchange Act, (x) that it shall notify the secretary promptly if any change occurs with respect to the intent of such Proposing Person or the group of which such Proposing Person is a part to solicit the holders of shares representing at least 67% of the voting power of shares entitled to vote on the election of directors in support of director nominees other than the Corporation’s nominees or with respect to the names of such Proposing Person’s nominees, (y) that if such Proposing Person or the group of which it is a part (1) provides notice pursuant to Rule 14a-19(a)(1) promulgated under the Exchange Act and (2) subsequently fails to comply with the requirements of Rule 14a-19(a)(2) and Rule 14a-19(a)(3) promulgated under the Exchange Act (including with respect to special meetings, if applicable), then the Corporation shall disregard any proxies or votes solicited for such Proposing Person’s nominees, and (z) that, upon request by the Corporation, if such Proposing Person or the group of which it is a part provides notice pursuant to Rule 14a-19(a)(1) promulgated under the Exchange Act, such Proposing Person shall deliver to the Corporation, no later than 5 business days prior to the applicable meeting, reasonable documentary evidence (as determined by the Corporation or one of its representatives, acting in good faith) that it has met the requirements of Rule 14a-19(a)(3) promulgated under the Exchange Act.1
(3)    In addition, to be timely, a shareholder shall update and supplement its notice to the Corporation, if necessary, so that the information provided or required to be provided in such notice (including any information regarding any Proposing Person or candidate whom a Proposing Person proposes to nominate for election as a director) shall be true and correct as of (i) the record date(s) for the determination of persons entitled to receive notice of and to vote at the meeting and (ii) the date that is 5 business days prior to the meeting and, in
————————————
1 NTD: Reflects market practice; this update relates to the universal proxy rule and requires the nominating shareholder to make representations about its solicitation plans.

8


the event of any adjournment or postponement thereof, 5 business days prior to such adjourned or postponed meeting. In the case of an update and supplement pursuant to clause (i) above, such update and supplement shall be delivered to the secretary at the principal executive offices of the Corporation no later than 2 business days after the record date. In the case of the update and supplement pursuant to clause (ii) above, such update and supplement shall be delivered to the secretary at the principal executive offices of the Corporation no later than 2 business days prior to the date for the meeting, and, in the event of any adjournment or postponement thereof, 2 business days prior to such adjourned or postponed meeting. For the avoidance of doubt, the obligation to update and supplement as set forth in this paragraph or any other section of these Bylaws shall not cure or limit the Corporation’s rights with respect to any deficiencies in any notice provided by a shareholder, extend any applicable deadlines hereunder or under any other provision of these Bylaws or enable or be deemed to permit a shareholder who has previously submitted notice hereunder, or under any other provision of these Bylaws, to amend or update any proposal or nomination or to submit any new proposal or nomination, including, without limitation, by changing or adding nominees, matters, business and/or resolutions proposed to be brought before a meeting of shareholders.
(4)Upon written request by the secretary, the Board of Directors or any duly authorized committee thereof, a shareholder submitting a notice pursuant to this Section 2.05 proposing business or a nomination to be brought before a meeting shall provide, within 5 business days of delivery of such request (or such other period as may be specified in such request), (A) written verification, satisfactory in the reasonable discretion of the Board of Directors, to any duly authorized committee thereof or any duly authorized officer of the Corporation, to demonstrate the accuracy of any information submitted by the shareholder (including any information submitted regarding any Proposing Person or any candidate whom a Proposing Person proposes to nominate for election as a director) in the notice delivered pursuant to the requirements of these Bylaws (including, if requested, written confirmation by such shareholder that it continues to intend to bring the business or nomination proposed in the notice before the meeting) and (B) such other information reasonably required by the secretary, the Board of Directors or any duly authorized committee thereof, acting in good faith, to determine compliance with these Bylaws by each Proposing Person or candidate whom a Proposing Person proposes to nominate for election as a director or the accuracy and completeness of any notice or solicitation given or made on behalf of a Proposing Person. If a shareholder fails to provide such written verification or other information within such period, the information as to which written verification or other information was requested may be deemed not to have been provided in accordance with the requirements of these Bylaws.
(5)Upon written request by the secretary, the Board of Directors or any duly authorized committee thereof, a shareholder submitting a notice pursuant to this Section 2.05 proposing business or a nomination to be brought before a meeting shall provide, within 5 business days of delivery of such request (or such other period as may be specified in such request), a written supplement, satisfactory in the reasonable discretion of the Board of Directors, to any duly authorized committee thereof or any duly authorized officer of the Corporation, to update the information (including any information submitted regarding any Proposing Person) contained in any previously submitted shareholder notice and provide the disclosures required by Section 2.05 such that they are current and true, correct and complete as of the date that such supplement is submitted to the secretary. If a shareholder fails to provide such written supplement within such period, the information as to which a written supplement was requested may be deemed not to have been provided in accordance with the requirements of these Bylaws.
9


(6)Upon written request by the secretary, the Board of Directors or any duly authorized committee thereof, each candidate whom a shareholder proposes to nominate for election as a director shall, and such shareholder shall cause such nominee to, make himself or herself available for interviews with the Board of Directors and any duly authorized committee thereof within 5 business days of delivery of such request (or such other period as may be specified in such request).
(7)For a notice pursuant to this Section 2.05 to comply with the requirements of this Section 2.05, each of the requirements of this Section 2.05 shall be directly and expressly responded to in a manner that clearly indicates and expressly references to which provisions of this Section 2.05 the information disclosed is intended to be responsive. Information disclosed in one section of the notice in response to one provision of this Section 2.05 shall not be deemed responsive to any other provision of this Section 2.05 unless it is expressly cross-referenced to such other provision and it is clearly apparent how the information included in one section of the notice is directly and expressly responsive to the information required to be included in another section of the notice pursuant to this Section 2.05. For the avoidance of doubt, statements purporting to provide global cross-references that purport to provide that all information provided shall be deemed to be responsive to all requirements of this Section 2.05 shall be disregarded and shall not satisfy the requirements of this Section 2.05.
(8)For a notice pursuant to this Section 2.05 to comply with the requirements of this Section 2.05, it must set forth in writing directly within the body of the notice (as opposed to being incorporated by reference from any other document or writing not prepared solely in response to the requirements of these Bylaws) all the information required to be included therein as set forth in this Section 2.05. A notice shall not be deemed to be in compliance with this Section 2.05 if it attempts to include the required information by incorporating by reference into the body of the notice any other document, writing or part thereof, including, but not limited to, any documents publicly filed with the Securities and Exchange Commission not prepared solely in response to the requirements of these Bylaws. For the further avoidance of doubt, the body of the notice shall not include any documents that are not prepared solely in response to the requirements of these Bylaws.
(9)A shareholder submitting a notice pursuant to this Section 2.05, by its delivery to the Corporation, represents and warrants that all information contained therein (including any information regarding any Proposing Person or candidate whom a Proposing Person proposes to nominate for election as a director), as of the deadline for submitting the notice, is true, correct and complete in all respects, contains no false or misleading statements and such shareholder acknowledges that it intends for the Corporation and the Board of Directors to rely on such information as (A) being true, correct and complete in all respects and (B) not containing any false or misleading statements. If the information submitted pursuant to this Section 2.05 by any shareholder proposing business or a nomination to be brought before a meeting shall not be true, correct and complete in all respects prior to the deadline for submitting the notice, such information may be deemed not to have been provided in accordance with this Section 2.05.
(10)Notwithstanding anything in the second sentence of paragraph Section 2.05(a)(2) to the contrary, in the event that the number of directors to be elected to the Board of Directors is increased and there is no public announcement naming all of the nominees for director or specifying the size of the increased Board of Directors made by the Corporation at least 100 days prior to the first anniversary of the preceding year’s annual meeting, a shareholder’s notice required by this Section 2.05 shall also be considered timely, but only with
10


respect to nominees for any new positions created by such increase, and only with respect to a shareholder who had, prior to such increase in the size of the Board of Directors, previously submitted, on a timely basis and in proper written form, a shareholder notice relating to nominees for such meeting, if it shall be delivered to the secretary at the principal executive offices of the Corporation not later than the close of business on the 7th day following the day on which such public announcement is first made by the Corporation.
(b)Special meetings of shareholders. - Only such business shall be conducted at a special meeting of shareholders as shall have been brought before the meeting pursuant to the Corporation’s notice of meeting. Nominations of persons for election to the Board of Directors may be made at a special meeting of shareholders at which directors are to be elected (1) by or at the direction of the Board of Directors, including pursuant to the Corporation’s notice of meeting or any supplement thereto or (2) provided that the Board of Directors has determined that directors shall be elected at such meeting, by any shareholder of the Corporation present in person who is a shareholder of record at the time of giving of notice provided for in this Section 2.05(b), on the record date(s) for the determination of shareholders entitled to notice of and to vote at the special meeting and at the time of the special meeting, who is entitled to vote at the meeting, who nominates a number of candidates that does not exceed the number of directors to be elected at the meeting and who complies with the notice procedures set forth in this Section 2.05(b). In the event the Corporation calls a special meeting of shareholders for the purpose of electing one or more directors to the Board of Directors, any such shareholder may nominate a person or persons (as the case may be), for election to such position(s) as specified in the Corporation’s notice of meeting, if the shareholder’s notice provided pursuant to this Section 2.05(b) includes the information required by Section 2.05(a) with respect to any nomination (including the completed and signed questionnaire, representation and agreement referenced in Section 2.05(c)) and such notice is delivered to the secretary at the principal executive offices of the Corporation not earlier than the close of business on the 7th day following the day on which public announcement is first made of the date of the special meeting and of the nominees proposed by the Board of Directors to be elected at such meeting. For the avoidance of doubt, a shareholder shall not be entitled to make additional or substitute nominations or proposals following the expiration of the time periods set forth in this Section 2.05(b). In no event shall the adjournment, recess or postponement of a special meeting (or the public announcement thereof) commence a new time period (or extend any time period) for the giving of a shareholder’s notice as described above. This Section 2.05(b) shall be the exclusive means for a shareholder to make nominations or submit other business before a special meeting of shareholders. If a shareholder is not present in person to present its nomination, such nomination will be disregarded (notwithstanding that proxies in respect of such nomination may have been solicited, obtained or delivered). A shareholder is not entitled to have its nomination included in the Corporation’s proxy materials as a result of such shareholder’s compliance with the provisions of this Section 2.05(b), except if such nominees are also submitted in accordance and in compliance with Rule 14a-19 promulgated under the Exchange Act and other applicable requirements of state and federal law.
(c)Submission of questionnaire, representation and agreement. - To be eligible to be a nominee for election or reelection as a director of the Corporation, a person must deliver (in accordance with the time periods prescribed for delivery of notice under this Section 2.05) to the secretary at the principal executive offices of the Corporation a written questionnaire with respect to the background and qualifications of such person and the background of any other person or entity on whose behalf the nomination is being made (which questionnaire shall be provided by the secretary upon written request) and a written representation and agreement (in the form provided by the secretary upon written request) that such person (1) is not and will not

11


become a party to (A) any agreement, arrangement or understanding with, and has not given any commitment or assurance to, any person or entity as to how such person, if elected as a director of the Corporation, will act or vote on any issue or question (a “Voting Commitment”) that has not been disclosed to the Corporation or (B) any Voting Commitment that could limit or interfere with such person’s ability to comply, if elected as a director of the Corporation, with such person’s fiduciary duties under applicable law, (2) is not and will not become a party to any agreement, arrangement or understanding with any person or entity other than the Corporation with respect to any direct or indirect compensation, reimbursement or indemnification in connection with service or action as a director of the Corporation that has not been disclosed therein, (3) has disclosed to the Corporation any and all potential and actual conflicts of interest of such nominee with the Corporation and (4) in such person’s individual capacity and on behalf of any person or entity on whose behalf the nomination is being made, would be in compliance, if elected as a director of the Corporation, and will comply with all applicable corporate governance, conflict of interest, confidentiality and stock ownership and trading policies and guidelines of the Corporation.
(d)    General. -
(1)Only such persons who are nominated in accordance with the procedures set forth in this Section 2.05 shall be eligible to be elected at an annual meeting of shareholders or special meeting of shareholders, as applicable, to serve as directors and only such business shall be conducted at a meeting of shareholders as shall have been brought before the meeting in accordance with the procedures set forth in this Section 2.05. Except as otherwise provided by law, the Articles or these Bylaws, the presiding officer of the meeting shall have the power and duty to determine whether a nomination or any business proposed to be brought before the meeting was made, or proposed, as the case may be, in accordance with the procedures set forth in this Section 2.05 and, if any proposed nomination or business is not in compliance with this Section 2.05, to declare that such defective proposal or nomination shall be disregarded. In addition, a nomination or business proposed to be brought by a shareholder pursuant to Section 2.05 may not be brought before a meeting if such shareholder or any Proposing Person takes action contrary to the representations made in the shareholder notice applicable to such nomination or business or if such shareholder notice contains an untrue statement of a material fact or omits to state a material fact necessary to make the statements therein not misleading, or if after being submitted to the Corporation, the shareholder notice was not updated in accordance with these Bylaws to cause the information provided therein to be true, correct and complete in all respects.
(2)For purposes of this Section 2.05, (A) “public announcement” shall mean disclosure in a press release reported by the Dow Jones News Service, Associated Press or comparable national news service or in a document publicly filed by the Corporation with the Securities and Exchange Commission pursuant to Section 13, 14 or 15(d) of the Exchange Act; (B) “Proposing Person” shall mean (i) the shareholder providing the notice of the nomination or business proposed to be brought before the meeting, (ii) the beneficial owner or beneficial owners, if any, on whose behalf such notice is made, (iii) any participant (as defined in paragraphs (a)(ii)-(vi) of Instruction 3 to Item 4 of Schedule 14A of the Exchange Act, or any successor instructions) with such shareholder or beneficial owner in such solicitation of proxies in respect of any such proposed nomination or business, (iv) any Affiliate (within the meaning of Rule 12b-2 under the Exchange Act) of such shareholder or beneficial owner, (v) any person controlling, controlled by or under common control with such shareholder or beneficial owner and (vi) any person acting in concert with such shareholder or beneficial owner; and (C) a person shall be deemed to be “acting in concert” with another person if such person knowingly
12


acts (whether or not pursuant to an express agreement, arrangement or understanding) in concert with, or towards a common goal relating to the management, governance or control of the Corporation in parallel with, such other person where (i) each person is conscious of the other person’s conduct or intent and this awareness is an element in their decision-making processes and (ii) at least one additional factor suggests that such persons intend to act in concert or in parallel, which such additional factors may include, without limitation, exchanging information (whether publicly or privately), attending meetings, conducting discussions or making or soliciting invitations to act in concert or in parallel; provided, however, that a person shall not be deemed to be “acting in concert” with any other person solely as a result of the solicitation or receipt of revocable proxies, from such other person in response to a solicitation made pursuant to, and in accordance with, Section 14(a) of the Exchange Act by way of a proxy statement filed on Schedule 14A, and a person deemed to be “acting in concert” with another person shall be deemed to be “acting in concert” with any third party who is also “acting in concert” with such other person.
(3)Notwithstanding the foregoing provisions of this Section 2.05, a shareholder shall also comply with all applicable requirements of the Exchange Act and the rules and regulations thereunder (including Rule 14a-19) and the BCL with respect to the matters set forth in this Section 2.05. Nothing in this Section 2.05 shall be deemed to affect any rights of a shareholder to request inclusion of proposals in the Corporation’s proxy statement pursuant to Rule 14a-8 under the Exchange Act. Subject to Rule 14a-8 under the Exchange Act, nothing in these Bylaws shall be construed to permit any shareholder, or give any shareholder the right, to include or have disseminated or described in the Corporation’s proxy statement any nomination of director or directors or any other business proposal.
(4)Without limiting the other provisions and requirements of this Section 2.05, unless otherwise required by applicable law, if any shareholder (A) provides notice pursuant to Rule 14a-19(a)(1) promulgated under the Exchange Act and (B) subsequently fails to comply with the requirements of Rule 14a-19(a)(2) and Rule 14a-19(a)(3) promulgated under the Exchange Act (including with respect to special meetings, if applicable), then the Corporation shall disregard any proxies or votes solicited for such shareholder’s nominees. Upon request by the Corporation, if any shareholder provides notice pursuant to Rule 14a-19(a)(1) promulgated under the Exchange Act, such shareholder shall deliver to the Corporation, no later than 5 business days prior to the applicable meeting, reasonable documentary evidence (as determined by the Corporation or one of its representatives, acting in good faith) that it has met the requirements of Rule 14a-19(a)(3) promulgated under the Exchange Act.
Section 2.06 Organization. - At every meeting of shareholders, the chairman of the Board, if there be one, or, in the case of a vacancy in office or absence of the chairman of the Board, one of the following officers present in the order stated: the president, the vice presidents in their order of rank and seniority, or a person chosen by majority vote of the Board of Directors, shall act as presiding officer of the meeting. Unless otherwise determined by the Board prior to the meeting and subject to applicable law, the presiding officer of any meeting of shareholders will determine the order of business and have the authority in his or her sole discretion to determine the rules of procedure and regulate the conduct of the meeting, including, without limitation, by: (a) imposing restrictions on the persons (other than shareholders of the Corporation, their duly appointed proxy holders and their qualified representatives) that may attend the meeting; (b) ascertaining whether any shareholder, proxy holder or qualified representative may be excluded from the meeting based upon any determination by the presiding officer of the meeting, in his or her sole discretion, that any such

13


person has disrupted the proceedings thereat; (c) determining the circumstances in which any person may make a statement or ask questions at the meeting; (d) ruling on all procedural questions that may arise during or in connection with the meeting; (e) determining whether any nomination or business proposed to be brought before the meeting has been properly brought before the meeting; and (f) determining the date and times at which the polls for voting at the meeting will be opened and closed. The secretary or, in the absence of the secretary, an assistant secretary, or, in the absence of the secretary and assistant secretaries, a person appointed by the presiding officer of the meeting, shall act as secretary.
Section 2.07 Proxies. -
(a)    General rule. -
(1)Every shareholder entitled to vote at a meeting of shareholders may authorize another person to act for the shareholder by proxy.
(2)The presence of, or vote or other action on behalf of, a shareholder at a meeting of shareholders by a proxy of a shareholder shall constitute the presence of, or vote or action by, the shareholder.
(3)Where two or more proxies of a shareholder are present, the Corporation shall, unless otherwise expressly provided in the proxy, accept as the vote or other action of all shares represented thereby the vote cast or other action taken by a majority of them and, if a majority of the proxies cannot agree whether the shares represented shall be voted, or upon the manner of voting the shares or taking the other action, the voting of the shares or right to take other action shall be divided equally among those persons.
(b)    Execution and Process. - Every proxy shall be executed or authenticated by the shareholder or by his duly authorized attorney-in-fact and filed with or transmitted to the secretary of the Corporation or its designated agent. A shareholder or his duly authorized attorney-in-fact may execute or authenticate a writing or transmit an electronic message authorizing another person to act for him by proxy. A telegram, telex, cablegram, datagram, email, Internet communication or other means of electronic transmission from a shareholder or attorney-in-fact, or a photographic, facsimile or similar reproduction of a writing executed by a shareholder or attorney-in-fact (1) may be treated as properly executed or authenticated for purposes of this subsection; and (2) shall be so treated if it sets forth or utilizes a confidential and unique identification number or other mark furnished by the corporation to the shareholder for the purposes of a particular meeting or transaction.
(c)    Revocation. - A proxy, unless coupled with an interest (as defined in Section 1759(d) of the BCL), shall be revocable at will, notwithstanding any other agreement or any provision in the proxy to the contrary, but the revocation of a proxy shall not be effective until notice thereof has been given to the secretary or his or her designated agent in writing or by electronic transmission. An unrevoked proxy shall not be valid after 3 years from the date of its execution unless a longer time is expressly provided therein. A proxy shall not be revoked by the death or incapacity of the maker unless, before the vote is counted or the authority is exercised, notice of the death or incapacity is given to the secretary or his or her designated agent in writing or by electronic transmission.
(d)    Proxy expenses. - The Corporation shall pay the reasonable expenses of solicitation of votes, proxies or consents of shareholders by or on behalf of the Board of

14


Directors or its nominees for election to the Board, including solicitation by professional proxy solicitors and otherwise.
(e)    Proxy card. - Any shareholder directly or indirectly soliciting proxies from other shareholders must use a proxy card color other than white, which shall be reserved for the exclusive use by the Board of Directors.
Section 2.08 Voting list. - The officer or agent having charge of the transfer books for shares of the Corporation shall make a complete list of the shareholders entitled to vote at any meeting of shareholders, arranged in alphabetical order, with the address of and the number of shares held by each shareholder; provided, however, that this Section 2.08 does not require the Corporation to include electronic mail addresses or other electronic contact information of the shareholders on such list. The list shall be produced and kept open at the date, time and place of the meeting and shall be subject to the inspection of any shareholder during the whole time of the meeting for the purposes thereof except that the Corporation shall not be required to produce the list at a meeting of shareholders for which a judge or judges of election are appointed but instead shall furnish the list to the judge or judges of election. A shareholder and any agent or attorney who inspects this list may use the information on the list only for purposes related to the meeting and must keep the information on the list confidential in accordance with Section 1764 of the BCL.
Section 2.09 Consent of shareholders in lieu of meeting. - Any action required or permitted to be taken at a meeting of shareholders or of a class of shareholders may be taken without a meeting only upon the unanimous written consent of all shareholders who would have been entitled to vote thereon at a meeting of shareholders called to consider the matter.
ARTICLE III
Board of Directors
Section 3.01    Personal liability of directors. -
(a)    General rule. - A director shall not be personally liable, as such, for monetary damages for any action taken, or any failure to take any action, unless:
(1)the director has breached or failed to perform the duties of his or her office under 15 Pa.C.S. Subch. 17B (or any successor statute);
(2)the breach or failure to perform constitutes self-dealing, willful misconduct or recklessness.
(b)    Exceptions. - Subsection (a) shall not apply to:
(1)the responsibility or liability of a director pursuant to any criminal statute, or
(2)the liability of a director for the payment of taxes pursuant to federal, state or local law.
15


Section 3.02 Qualifications and selection of directors. -
(a)Qualifications. - Each director of the Corporation shall be a natural person of full age who need not be a resident of Pennsylvania or a shareholder of the Corporation.
(b)Election of directors. - Except as otherwise provided in these Bylaws or Pennsylvania law, directors of the Corporation shall be elected by the shareholders. In elections for directors, voting need not be by ballot unless required by vote of the shareholders before the voting for election of directors begins. The candidates receiving the highest number of votes from each class or group of classes, if any, entitled to elect directors separately up to the number of directors to be elected by the class or group of classes shall be elected. If at any meeting of shareholders, directors of more than one class are to be elected, each class of directors shall be elected in a separate election.
Section 3.03 Number and term of office. -
(a)Number. - The Board of Directors shall consist of such number of directors, not less than 1 nor more than 15, as may be determined from time to time by action of the Board of Directors.
(b)Term of office. - Each director shall hold office until the expiration of the term for which he or she was elected and until a successor has been elected and qualified or until his or her earlier death, resignation or removal. A decrease in the number of directors shall not have the effect of shortening the term of any incumbent director.
(c)Resignation. - Any director may resign at any time upon notice in record form to the Corporation. The resignation shall be effective upon receipt thereof by the Corporation or at such subsequent time as shall be specified in the notice of resignation.
(d)Vacancies. - Vacancies in the Board of Directors, including vacancies resulting from an increase in the number of directors, shall be filled only by a majority vote of the remaining directors then in office, though less than a quorum, or by a sole remaining director, except that vacancies resulting from removal from office by a vote of the shareholders may be filled by the shareholders at the same meeting at which such removal occurs. All directors elected to fill vacancies shall hold office for the balance of the unexpired term and until a successor has been selected and qualified or until his or her earlier death, resignation or removal. When one or more directors resign from the Board of Directors effective at a future date, the directors then in office, including those who have so resigned, shall have power by the applicable vote to fill the vacancies, the vote thereon to take effect when the resignations become effective.
Section 3.04 Place of meetings. - Subject to Section 1.04, all meetings of the Board of Directors may be held at such place within or without Pennsylvania as the Board of Directors may from time to time appoint or as may be designated in the notice of the meeting.
Section 3.05 Organization of meetings. - At every meeting of the Board of Directors, the chairman of the Board, if there be one, or, in the case of a vacancy in the office or absence of the chairman of the Board, one of the following officers present in the order stated: the president, the vice presidents in their order of rank and seniority, or a person chosen by a majority of the directors present, shall act as chairman of the meeting. The secretary or, in the absence of the secretary, an assistant secretary, or, in the absence of the secretary and the

16


assistant secretaries, any person appointed by the chairman of the meeting, shall act as secretary of the meeting.
Section 3.06 Regular meetings. - Subject to Section 1.04, regular meetings of the Board of Directors shall be held at such time and place as shall be designated from time to time by action of the Board of Directors.
Section 3.07 Special meetings. - Special meetings of the Board of Directors shall be held whenever called by the chairman or by two or more of the directors.
Section 3.08 Quorum of and action by directors. -
(a)General rule. - A majority of the directors in office of the Corporation shall be necessary to constitute a quorum for the transaction of business and the acts of a majority of the directors present and voting at a meeting at which a quorum is present shall be the acts of the Board of Directors.
(b)Action by written consent. - Any action required or permitted to be taken at a meeting of the directors may be taken without a meeting by a consent or consents thereto in record form signed before, on or after the effective time by all of the directors in office at the effective time. A consent may provide, or a person signing a consent, whether or not then a director, may instruct in record form that the consent will be effective at a future time, including a time determined upon the happening of an event. In the case of a consent signed by a person not a director at the time of signing, the consent is effective at the stated effective time if the person who signed the consent is a director at the effective time and did not revoke the consent in record form prior to the effective time. A consent is effective at the stated effective time even if one or more signers are no longer directors at the effective time unless the consent has been revoked by a signer who is a director at the effective time. A signer of a consent may revoke the signer’s consent in record form until the consent becomes effective.
Section 3.09 Executive and other committees. -
(a)    Establishment and powers. - The Board of Directors may, by action adopted by a majority of the directors in office, establish one or more committees to consist of one or more directors of the Corporation. Any committee, to the extent provided in the action of the Board of Directors, shall have and may exercise all of the powers and authority of the Board of Directors except that a committee shall not have any power or authority as to the following:
(1)The submission to shareholders of any action or matter, other than the election or removal of directors, requiring approval of shareholders under the BCL.
(2)The creation or filling of vacancies in the Board of Directors.
(3)The adoption, amendment or repeal of these Bylaws.
(4)The amendment or repeal of any action of the Board that by its terms is amendable or repealable only by the Board.
(5)Action on matters committed by these Bylaws or an action of the Board of Directors to another committee of the Board.
17


(b)Alternate committee members. - The Board of Directors may designate one or more directors as alternate members of any committee who may replace any absent or disqualified member at any meeting of the committee or for the purposes of any action in record form by the committee. In the absence or disqualification of a member and alternate member or members of a committee, the member or members thereof present at any meeting and not disqualified from voting, whether or not constituting a quorum, may unanimously appoint another director to act at the meeting in the place of the absent or disqualified member.
(c)Term. - Each committee of the Board of Directors shall serve at the pleasure of the Board of Directors.
(d)Committee procedures. - The term “Board of Directors” or “Board,” when used in any provision of these Bylaws relating to the organization or procedures of or the manner of taking action by the Board of Directors, shall be construed to include and refer to any executive or other committee of the Board.
Section 3.10 Compensation. - The Board of Directors has the authority to fix the compensation of directors for their services as directors, regardless of the personal interest of the directors, and if the Board of Directors establishes the compensation of directors in accordance with this Section 3.10, that action is presumed to be fair to the Corporation. A director may be a salaried officer of the Corporation. Directors shall be reimbursed for their expenses of attendance at any meeting of the Board of Directors or any committee thereof.
ARTICLE IV
Officers
Section 4.01    Officers generally. -
(a)Number, qualifications and designation. - The officers of the Corporation shall be a president, a secretary and a treasurer, and such other officers as may be elected in accordance with the provisions of Section 4.03. Officers may but need not be directors or shareholders of the Corporation. Each officer shall be a natural person of full age. The Board of Directors may elect from among the members of the Board a chairman of the Board. Any number of offices may be held by the same person.
(b)Resignations. - Any officer may resign at any time upon notice in record form to the Corporation. The resignation shall be effective upon receipt thereof by the Corporation or at such subsequent time as may be specified in the notice of resignation.
(c)Bonding. - The Corporation may secure the fidelity of any or all of its officers by bond or otherwise.
Section 4.02 Election and term of office. - The officers of the Corporation, except those elected by delegated authority pursuant to Section 4.03, shall be elected annually by the Board of Directors, and each such officer shall hold office until a successor has been selected and qualified or until his or her earlier death, resignation or removal.
Section 4.03 Subordinate officers, committees and agents. - The Board of Directors may from time to time elect such other officers and appoint such committees, employees or other agents as the business of the Corporation may require, including one or more assistant secretaries, and one or more assistant treasurers, each of whom shall hold office for such
18


period, have such authority, and perform such duties as are provided in these Bylaws or as the Board of Directors may from time to time determine. The Board of Directors may delegate to any officer or committee the power to elect subordinate officers and to retain or appoint employees or other agents, or committees thereof and to prescribe the authority and duties of such subordinate officers, committees, employees or other agents.
Section 4.04 Removal of officers and agents. - Any officer or agent of the Corporation may be removed by the Board of Directors with or without cause. The removal shall be without prejudice to the contract rights, if any, of any person so removed. Election or appointment of an officer or agent shall not of itself create contract rights.
Section 4.05 Vacancies. - A vacancy in any office because of death, resignation, removal, disqualification or any other cause, shall be filled by the Board of Directors or by the officer or committee to which the power to fill such office has been delegated pursuant to Section 4.03, as the case may be, and if the office is one for which these Bylaws prescribe a term, shall be filled for the unexpired portion of the term.
Section 4.06 Authority. - All officers of the Corporation, as between themselves and the Corporation, shall have such authority and perform such duties in the management of the Corporation as may be provided by or pursuant to actions or orders of the Board of Directors or in the absence of controlling provisions in the actions or orders of the Board of Directors, as may be determined by or pursuant to these Bylaws.
Section 4.07 The chairman of the Board. Subject to Section 2.06, the chairman of the Board shall preside at all meetings of shareholders and of the Board of Directors and shall perform such other duties as may from time to time be requested by the Board of Directors.
Section 4.08 The president. - The president shall be the chief executive officer of the Corporation and shall have general supervision over the business and operations of the Corporation, subject however, to the control of the Board of Directors. The president shall sign, execute and acknowledge, in the name of the Corporation, deeds, mortgages, bonds, contracts or other instruments authorized by the Board of Directors, except in cases where the signing and execution thereof shall be expressly delegated by the Board of Directors, or by these Bylaws, to some other officer or agent of the Corporation; and, in general, shall perform all duties incident to the office of president and such other duties as from time to time may be assigned by the Board of Directors.
Section 4.09 The vice presidents. - The vice presidents, if any, shall perform the duties of the president in the absence of the president and such other duties as may from time to time be assigned to them by the Board of Directors or the president.
Section 4.10 The secretary. - The secretary or an assistant secretary shall attend all meetings of shareholders and of the Board of Directors and shall record all the votes of shareholders and of the directors and the minutes of the meetings of shareholders and of the Board of Directors and of committees of the Board in a book or books to be kept for that purpose; shall see that notices are given and records and reports properly kept and filed by the Corporation as required by law; shall be the custodian of the seal of the Corporation and see that it is affixed to documents executed on behalf of the Corporation under its seal; and, in general, shall perform all duties incident to the office of secretary, and such other duties as may from time to time be assigned by the Board of Directors or the president.
19


Section 4.11 The treasurer. - The treasurer or an assistant treasurer shall have or provide for the custody of the funds or other property of the Corporation; shall collect and receive or provide for the collection and receipt of moneys earned by or in any manner due to or received by the Corporation; shall deposit all funds in his or her custody as treasurer in such banks or other places of deposit as the Board of Directors may from time to time designate; shall, whenever so required by the Board of Directors, render an account showing all transactions as treasurer and the financial condition of the Corporation; and, in general, shall discharge such other duties as may from time to time be assigned by the Board of Directors or the president.
Section 4.12 Salaries. - The salaries of the officers elected by the Board of Directors shall be fixed from time to time by the Board of Directors or by such officer as may be designated by action of the Board of Directors. The salaries or other compensation of any other officers, employees and other agents shall be fixed from time to time by the officer or committee to which the power to elect such officers or to retain or appoint such employees or other agents has been delegated pursuant to Section 4.03. No officer shall be prevented from receiving such salary or other compensation by reason of the fact that the officer is also a director of the Corporation.
ARTICLE V
Shares
Section 5.01 Certificated and uncertificated shares. - The interest of each shareholder of the Corporation may be uncertificated or may be evidenced by certificates for shares of stock in such form as the appropriate officers of the Corporation may from time to time prescribe.
Section 5.02 Record holder of shares. - The Corporation shall be entitled to treat the person in whose name any share or shares of the Corporation stand on the books of the Corporation as the absolute owner thereof and shall not be bound to recognize any equitable or other claim to, or interest in, such share or shares on the part of any other person.
Section 5.03 Lost, destroyed or mutilated certificates. - The holder of any shares of the Corporation shall immediately notify the Corporation of any loss, destruction or mutilation of the certificate therefor, and the Board of Directors may, in its discretion, cause a new certificate or certificates to be issued to the holder, in case of mutilation of the certificate, upon the surrender of the mutilated certificate or, in case of loss or destruction of the certificate, upon satisfactory proof of the loss or destruction and, if the Board of Directors shall so determine, the deposit of a bond in such form and in such sum, and with such surety or sureties, as it may direct.
ARTICLE VI
Indemnification of Directors, Officers and
Other Authorized Representatives
Section 6.01    Indemnification and insurance. -
(a)    Indemnification of directors and officers. -
(1)    Each Indemnitee (as defined below) shall be indemnified and held harmless by the Corporation to the fullest extent permitted by Pennsylvania law against all expense, liability and loss (including, without limitation, attorneys’ fees, judgments, fines, taxes,
20


penalties and amounts paid or to be paid in settlement) reasonably incurred or suffered by the Indemnitee in connection with any Proceeding (as defined below) arising out of or related to Indemnitee’s service at any time in a Covered Capacity (as defined below). No indemnification pursuant to this Section 6.01 shall be made, however: (A) in any case where the act or failure to act giving rise to the claim for indemnification is determined by a court to have constituted willful misconduct or recklessness; or (B) in connection with a Proceeding (or part thereof) initiated by an Indemnitee (except in connection with a Proceeding to enforce a right to indemnification or advancement of expenses under this Article VI), unless the Proceeding (or part thereof) was authorized by the Board of Directors.
(2)    The right to indemnification provided in this Section 6.01 shall include the
right to have the expenses incurred by the Indemnitee in participating in any Proceeding paid by the Corporation in advance of the final disposition of the Proceeding arising out of or related to Indemnitee’s service at any time in a Covered Capacity automatically and without any action or approval required by the Board of Directors; provided that, if Pennsylvania law continues so to require, the payment of such expenses incurred by the Indemnitee in advance of the final disposition of a Proceeding shall be made only upon delivery to the Corporation of an undertaking, by or on behalf of the Indemnitee, to repay all amounts so advanced without interest if it shall ultimately be determined that the Indemnitee is not entitled to be indemnified under this Section 6.01 or otherwise.
(3)For purposes of this Article VI, (A) “Indemnitee” shall mean each director and each officer of the Corporation (including directors and officers who have ceased serving in any such capacity) who was or is a party to, or is threatened to be made a party to, or is a witness or other participant in, any Proceeding, by reason of the fact that he or she is or was a director or officer of the Corporation or is or was serving in any capacity at the request or for the benefit of the Corporation as a director, officer, employee, agent, partner, or fiduciary of, or in any other capacity for, another corporation or any limited liability company, partnership, joint venture, trust, employee benefit plan or other entity; (B) “Proceeding” shall mean any threatened, pending or completed action, suit, claim, counterclaim, cross claim, arbitration, alternate dispute resolution mechanism, investigation, inquiry, administrative hearing or any other actual, threatened or completed proceeding, whether civil, criminal, administrative or investigative, including any appeal therefrom, and whether instituted by or on behalf of the Corporation or any other party; and (C) “Covered Capacity” shall mean service as a director or officer of the Corporation or in any other capacity of the type referred to in Section 6.01(a)(3).
(4)The provisions of this Article VI shall inure to the benefit of and be enforceable by an Indemnitee’s heirs, executors, administrators and legal representatives.
(b)    Indemnification of employees and other persons. - The Corporation may, by action of its Board of Directors and to the extent provided in such action, indemnify employees and other persons, and provide for advancement of expenses to such persons in the manner set forth in Section 6.01(a)(2), above, as though they were Indemnitees, except that, if Pennsylvania law continues to so require, to the extent that an employee or agent of the Corporation has been successful on the merits or otherwise in defense of any Proceeding or in defense of any claim, issue or matter therein, the Corporation shall indemnify such person against expenses (including attorneys’ fees) actually and reasonably incurred by such person in connection therewith. Directors and officers of entities that have merged into, or have been consolidated with, or have been liquidated into, the Corporation shall not be Indemnitees with respect to Proceedings involving any action or failure to act of such director or officer prior to the
21


date of such merger, consolidation or liquidation, but such persons may be indemnified by the Board of Directors pursuant to the first sentence of this Section 6.01(b).
(c)Non-exclusivity of rights. - The rights to indemnification and to the advancement of expenses provided in or pursuant to this Section 6.01 shall not be exclusive of any other rights that any person may have or hereafter acquire under any statute, provision of the Articles, these Bylaws, agreement, vote of shareholders or directors or otherwise.
(d)Insurance. - The Corporation may purchase and maintain insurance, at its expense, for the benefit of any person on behalf of whom insurance is permitted to be purchased by Pennsylvania law against any expense, liability or loss, whether or not the Corporation would have the power to indemnify such person under Pennsylvania or other law. The Corporation may also purchase and maintain insurance to insure its indemnification obligations whether arising hereunder or otherwise.
(e)Fund for payment of expenses. - The Corporation may create a fund of any nature, which may, but need not be, under the control of a trustee, or otherwise may secure in any manner its indemnification obligations, whether arising hereunder, under the, by agreement, vote of shareholders or directors or otherwise.
Section 6.02 Interpretation. - The provisions of this Article VI are intended to constitute Bylaws authorized by Section 1746 of the BCL.
ARTICLE VII
Miscellaneous
Section 7.01 Fiscal year. - The fiscal year of the Corporation shall be fixed by the Board of Directors.
Section 7.02 Amendment of Bylaws. -
(a)General rule. - Except as provided in this Section 7.02 with respect to this Section 7.02 and Section 2.05, these Bylaws may be amended either (1) by vote of the shareholders at any duly organized annual or special meeting of shareholders, or (2) regardless of whether the shareholders have previously adopted or approved the bylaw being amended, by action of the Board of Directors; provided, however, that the Board of Directors shall not have the power to amend these Bylaws on any subject that is expressly committed to the shareholders by the express terms hereof, by the BCL or otherwise. The shareholders may amend Section 2.05 or this Section 7.02 only by the affirmative vote of not less than two-thirds of the votes that all shareholders, voting as a single class, are entitled to cast thereon. The authority, powers and functions of the Board of Directors may not be varied, and a committee of the Board of Directors may not be established, by a bylaw adopted by the shareholders unless such bylaw has been adopted with the approval of the Board of Directors.
(b)Notification by shareholders. - The notice of a meeting of shareholders that will act on an amendment to these Bylaws shall state that the purpose, or one of the purposes, of the meeting is to consider an amendment of these Bylaws and there shall be included in, or enclosed with, the notice a copy of the proposed amendment or a summary of the changes to be effected thereby.
Section 7.03 Forum Provision.

22


(a)Unless the Corporation consents in writing to the selection of an alternative forum, the sole and exclusive forum for (i) any derivative action or proceeding brought on behalf of the Corporation, (ii) any action asserting a claim of breach of a fiduciary duty owed by any director or officer or other employee of the Corporation to the Corporation or the Corporation’s shareholders, (iii) any action asserting a claim against the Corporation or any director or officer or other employee of the Corporation arising pursuant to any provision of the BCL or the Corporation’s Articles or these Bylaws (as either may be amended from time to time), or (iv) any action asserting a claim against the Corporation or any director or officer or other employee of the Corporation governed by the internal affairs doctrine shall be the state and federal courts sitting in the judicial district of the Commonwealth of Pennsylvania embracing the county in which the registered office of the Corporation is located.
(b)Unless the Corporation consents in writing to the selection of an alternative forum, the federal district courts of the United States of America shall be, to the fullest extent permitted by law, the sole and exclusive forum for any action asserting a claim arising under the Securities Act of 1933.
23
EX-31.1 3 ex-311q22023.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:August 8, 2023 /s/ John F. Kasel
Name: John F. Kasel
Title: President and Chief Executive Officer


EX-31.2 4 ex-312q22023.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:August 8, 2023 /s/ William M. Thalman
Name: William M. Thalman
Title: Executive Vice President
and Chief Financial Officer


EX-32.0 5 ex-320q22023.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 June 30, 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:August 8, 2023 /s/ John F. Kasel
Name: John F. Kasel
Title: President and Chief Executive Officer
 
Date:August 8, 2023 /s/ William M. Thalman
Name: William M. Thalman
Title: Executive Vice President
and Chief Financial Officer


EX-101.SCH 6 fstr-20230630.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 Income (Loss) link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - Condensed Consolidated Statements of Comprehensive Income (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 9954701 - Disclosure - Financial Statements (Policies) link:presentationLink link:calculationLink link:definitionLink 9954702 - Disclosure - Business Segments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954703 - Disclosure - Revenue (Tables) link:presentationLink link:calculationLink link:definitionLink 9954704 - Disclosure - Goodwill and Other Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 9954705 - Disclosure - Accounts Receivable (Tables) link:presentationLink link:calculationLink link:definitionLink 9954706 - Disclosure - Inventory (Tables) link:presentationLink link:calculationLink link:definitionLink 9954707 - Disclosure - Long-Term Debt and Related Matters (Tables) link:presentationLink link:calculationLink link:definitionLink 9954708 - Disclosure - Earnings Per Common Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954709 - Disclosure - Stock-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954710 - Disclosure - Fair Value Measurements (Tables) link:presentationLink link:calculationLink link:definitionLink 9954711 - Disclosure - Retirement Plans (Tables) link:presentationLink link:calculationLink link:definitionLink 9954712 - Disclosure - Commitments and Contingent Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954713 - Disclosure - Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 9954714 - Disclosure - Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 9954715 - Disclosure - Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) link:presentationLink link:calculationLink link:definitionLink 9954716 - Disclosure - Business Segments - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954717 - Disclosure - Revenue - Sales by Major Product Line (Details) link:presentationLink link:calculationLink link:definitionLink 9954718 - Disclosure - Revenue - Timing of Transfer (Details) link:presentationLink link:calculationLink link:definitionLink 9954719 - Disclosure - Revenue - Over Time Sales (Details) link:presentationLink link:calculationLink link:definitionLink 9954720 - Disclosure - Revenue - Contract with Customer (Details) link:presentationLink link:calculationLink link:definitionLink 9954721 - Disclosure - Revenue - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9954721 - Disclosure - Revenue - Remaining Performance Obligation (Details) link:presentationLink link:calculationLink link:definitionLink 9954722 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Goodwill (Details) link:presentationLink link:calculationLink link:definitionLink 9954723 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) link:presentationLink link:calculationLink link:definitionLink 9954724 - Disclosure - Goodwill and Other Intangible Assets - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954725 - Disclosure - Accounts Receivable - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954726 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 9954727 - Disclosure - Inventory (Details) link:presentationLink link:calculationLink link:definitionLink 9954728 - Disclosure - Long-Term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9954728 - Disclosure - Long-Term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9954729 - Disclosure - Long-Term Debt and Related Matters - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954730 - Disclosure - Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details) link:presentationLink link:calculationLink link:definitionLink 9954731 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 9954732 - Disclosure - Stock-Based Compensation - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954733 - Disclosure - Stock-Based Compensation - Restricted Stock and Performance Share Units (Details) link:presentationLink link:calculationLink link:definitionLink 9954734 - Disclosure - Fair Value Measurements - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954735 - Disclosure - Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) link:presentationLink link:calculationLink link:definitionLink 9954736 - Disclosure - Retirement Plans - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954737 - Disclosure - Retirement Plans - Schedule of Net Benefit Costs (Details) link:presentationLink link:calculationLink link:definitionLink 9954738 - Disclosure - Retirement Plans - Schedule of Costs of Retirement Plans (Details) link:presentationLink link:calculationLink link:definitionLink 9954739 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details) link:presentationLink link:calculationLink link:definitionLink 9954740 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 fstr-20230630_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 fstr-20230630_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 fstr-20230630_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Net loss attributable to noncontrolling interest Net Income (Loss) Attributable to Noncontrolling Interest Pay vs Performance Disclosure [Line Items] Other accrued liabilities Accrued Liabilities, Current Range [Domain] Statistical Measurement [Domain] Line of credit facility, maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Change in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Underlying Security Market Price Change Underlying Security Market Price Change, Percent Award Type [Domain] Award Type [Domain] Fair Value as of Grant Date Award Grant Date Fair Value Revenue, remaining performance obligation, expected timing of satisfaction, period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period 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 Long-Term Debt and Related Matters Debt Disclosure [Text Block] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Revolving credit facility Revolving Credit Facility [Member] Contract With Customer Liability [Roll Forward] Contract With Customer Liability [Roll Forward] Contract With Customer Liability Deferred tax liabilities (Note 9) Deferred Income Tax Liabilities, Net MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] Performance-Based Stock and Share Units Performance Shares [Member] Segment Reporting [Abstract] Accounts payable Accounts Payable, Current Restatement Determination Date: Restatement Determination Date [Axis] Other long-term liabilities Increase (Decrease) in Other Noncurrent Liabilities Insider Trading Policies and Procedures [Line Items] Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] 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 Disaggregation of Revenue Disaggregation of Revenue [Line Items] Purchase commitment Long-Term Purchase Commitment, Amount Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] Other noncurrent assets Increase (Decrease) in Other Noncurrent Assets Schedule of Goodwill [Table] Schedule of Goodwill [Table] Line of Credit Facility Line of Credit Facility [Line Items] Foreign Plan Foreign Plan [Member] Income Taxes Income Tax Disclosure [Text Block] Deferred revenue Increase (Decrease) in Contract with Customer, Liability Reporting Unit [Domain] Reporting Unit [Domain] Director Director [Member] Swap 2 Swap 2 [Member] Swap 2 Customer [Axis] Customer [Axis] Current liabilities: Liabilities, Current [Abstract] Payment period Litigation Settlement Installment Payment Term Litigation Settlement Installment Payment Term 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] Proceeds from business dispositions Proceeds from Divestiture of Businesses Diluted earnings per common share (usd per share) Earnings Per Share, Diluted PEO Total Compensation Amount PEO Total Compensation Amount Goodwill Goodwill [Roll Forward] Cash flow hedges reclassified to earnings, net of tax expense of $0, $0, $0, and $66, respectively Cash flow hedges reclassified to earnings Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, after Tax Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Level 3 Fair Value, Inputs, Level 3 [Member] Treasury stock shares - at cost, common stock (in shares) Treasury Stock, Common, Shares Schedule of Net Benefit Costs Schedule of Net Benefit Costs [Table Text Block] Trading Symbol Trading Symbol Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Non-compete agreements Noncompete Agreements [Member] Swap Swap [Member] Net income attributable to L.B. Foster Company Net Income (Loss) Net Income (Loss) Total current liabilities Liabilities, Current Derivative Contract [Domain] Derivative Contract [Domain] 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 Fair Value Disclosures [Abstract] Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Company Selected Measure Name Company Selected Measure Name Property, plant, and equipment - net Property, Plant, and Equipment and Finance Lease Right-of-Use Asset, after Accumulated Depreciation and Amortization Total Debt and Lease Obligation LIABILITIES AND STOCKHOLDERS’ EQUITY Liabilities and Equity [Abstract] Finite-Lived Intangible Assets Finite-Lived Intangible Assets [Line Items] Purchase of common shares for treasury Stock Repurchased During Period, Value Debt Instrument, Redemption, Period [Axis] Debt Instrument, Redemption, Period [Axis] Stockholders’ equity: Equity, Attributable to Parent [Abstract] Balance as of December 31, 2022 Balance as of June 30, 2023 Contract with Customer, Liability Schedule of Earnings Per Share, Basic and Diluted Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Derivative Liability, Statement of Financial Position [Extensible Enumeration] Derivative Liability, Statement of Financial Position [Extensible Enumeration] Vesting period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Other adjustments, including business divestiture Contract With Customer, Liability, Other Adjustments Contract With Customer, Liability, Other Adjustments Executive Category: Executive Category [Axis] 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 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] Level 1 Fair Value, Inputs, Level 1 [Member] Pension liability adjustment Other Comprehensive (Income) Loss, Defined Benefit Plan, after Tax and Reclassification Adjustment, Attributable to Parent Name Measure Name Patents Patents [Member] Name Forgone Recovery, Individual Name Goodwill (Note 4) Goodwill, beginning balance Goodwill, ending balance Goodwill Equity Components [Axis] Equity Components [Axis] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Schedule of Reconciliation of Revenue from Segments to Consolidated Reconciliation of Revenue from Segments to Consolidated [Table Text Block] Underlying Securities Award Underlying Securities Amount Entity Small Business Entity Small Business Denominator: Weighted Average Number of Shares Outstanding, Basic [Abstract] Local Phone Number Local Phone Number Recovery of Erroneously Awarded Compensation Disclosure [Line Items] Derivative, notional amount Derivative, Notional Amount Selling, General and Administrative Expenses Selling, General and Administrative Expenses [Member] Point in time Transferred at Point in Time [Member] Litigation settlement amount, non-current Litigation Settlement, Amount Awarded to Other Party, Non-Current Litigation Settlement, Amount Awarded to Other Party, Non-Current Long-term operating lease liabilities Operating Lease, Liability, Noncurrent Retirement Plan Type [Domain] Retirement Plan Type [Domain] Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Debt instrument term Debt Instrument, Term Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Depreciation Depreciation Anticipated clean period Remedial Work Anticipated Clean Up Period Remedial Work Anticipated Clean Up Period Line of Credit Facility [Table] Line of Credit Facility [Table] Income Statement Location [Axis] Income Statement Location [Axis] Schedule of Long-term Debt Instruments Schedule of Long-Term Debt Instruments [Table Text Block] Share-Based Payment Arrangement, Noncash Expense [Abstract] Dilutive potential common shares (in shares) Weighted Average Number of Shares Outstanding, Diluted, Adjustment Defined Contribution Plan [Table] Defined Contribution Plan [Table] Other assets: Other Assets, Noncurrent [Abstract] UPRR UPRR [Member] The UPRR Repayments of debt Repayments of Other Long-Term Debt Products and Services [Domain] Product and Service [Domain] Other Performance Measure, Amount Other Performance Measure, Amount Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Inventories Increase (Decrease) in Inventories Domestic Plan Domestic Plan [Member] CASH FLOWS FROM INVESTING ACTIVITIES: Net Cash Provided by (Used in) Investing Activities [Abstract] Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] Over time input method Over Time Input Method [Member] Over Time Input Method Stock compensation plans (in shares) Incremental Common Shares Attributable to Dilutive Effect of Nonvested Shares with Forfeitable Dividends Award Type [Axis] Award Type [Axis] Granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Document Quarterly Report Document Quarterly Report Interest expense - net Interest expense Interest Expense Fair Value, Measurements, Fair Value Hierarchy [Domain] Fair Value Hierarchy and NAV [Domain] Goodwill [Line Items] Goodwill [Line Items] Allowance for Doubtful Accounts Accounts Receivable, Allowance for Credit Loss [Roll Forward] Trading Arrangement: Trading Arrangement [Axis] Defined benefit plan, contributions by employer Defined Benefit Plan, Plan Assets, Contributions by Employer PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Expected return on plan assets Defined Benefit Plan, Expected Return (Loss) on Plan Assets Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Commission File Number Entity File Number Number of financial covenants Debt Instrument, Number Of Financial Covenants Debt Instrument, Number Of Financial Covenants Favorable lease Off-Market Favorable Lease [Member] Amortization expense Amortization of Intangible Assets Entity Shell Company Entity Shell Company Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Other intangibles - net (Note 4) Net Carrying Amount Finite-Lived Intangible Assets, Net Restatement Determination Date Restatement Determination Date Financing Receivable, Allowance for Credit Loss [Table] Financing Receivable, Allowance for Credit Loss [Table] Schedule of Future Payments of Legal Settlements Schedule Of Future Payments Of Legal Settlements [Table Text Block] Schedule Of Future Payments Of Legal Settlements Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] 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 Accumulated Amortization Accumulated amortization Finite-Lived Intangible Assets, Accumulated Amortization 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 Interest income Investment Income, Interest Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Common stock, shares issued (in shares) Common Stock, Shares, Issued Vested (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period Gross profit Gross Profit Current maturities of long-term debt (Note 7) Less current maturities Long-Term Debt and Lease Obligation, Current Deferred revenue Contract with Customer, Liability, Current Treasury stock - at cost, 298,877 and 338,952 common stock shares at June 30, 2023 and December 31, 2022, respectively Treasury Stock, Common, Value Security Exchange Name Security Exchange Name Total assets Assets, Fair Value Disclosure Defined contribution plan number Number of Defined Contribution Plans Number of Defined Contribution Plans Selling and administrative expenses Selling, General and Administrative Expense Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Minimum leverage ratio Debt Instrument, Covenant, Leverage Ratio, Maximum Debt Instrument, Covenant, Leverage Ratio, Maximum Employee Stock Option Employee Stock Option [Member] Recognition period for compensation expense not yet recognized Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Comprehensive income (loss) attributable to L.B. Foster Company Comprehensive Income (Loss), Net of Tax, Attributable to Parent Expected cost on shares expected to vest Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Amount Document Type Document Type Minimum fixed charge coverage ratio Debt Instrument, Covenant, Interest Coverage Ratio, Minimum Debt Instrument, Covenant, Interest Coverage Ratio, Minimum VanHooseCo acquisition Goodwill, Acquired During Period Tabular List, Table Tabular List [Table Text Block] Entity Address, Street Name Entity Address, Address Line One Entity Address, Suite Entity Address, Address Line Two Number of retirement plans NumberOfRetirementPlans Over time sales, amount Over Time Sales, Amount Over Time Sales, Amount Stock-Based Compensation Share-Based Payment Arrangement [Text Block] Basis of Presentation Basis of Accounting, Policy [Policy Text Block] Unallocated corporate expenses and other unallocated charges Corporate Expense And Other Unallocated Charges Corporate Expense And Other Unallocated Charges Business Acquisition [Axis] Business Acquisition [Axis] Fair Value, Balance Sheet Grouping, Financial Statement Captions Fair Value, Balance Sheet Grouping, Financial Statement Captions [Line Items] VanHooseCo acquisition VanHooseCo Enterprises Ltd [Member] VanHooseCo Enterprises Ltd Revenue remaining performance obligation (percentage) Revenue, Remaining Performance Obligation, Percentage Trademarks and trade names Trademarks and Trade Names [Member] Schedule of Finite-Lived Intangible Assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Income Statement [Abstract] Raw materials Inventory, Raw Materials, Net of Reserves Total net sales Net Sales Revenue from Contract with Customer, Including Assessed Tax Common shares issues net of shares withheld (in shares) Stock Issued During Period, Shares, New Issues Contract assets Increase (Decrease) in Contract with Customer, Asset Title of 12(b) Security Title of 12(b) Security Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Term deposits Cash and Cash Equivalents, Fair Value Disclosure Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Operating Segments Operating Segments [Member] 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 Numerator for basic and diluted earnings per common share: Net Income (Loss) Attributable to Parent [Abstract] Other current assets Other Assets, Current Income Tax Disclosure [Abstract] Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Undiscovered remedial work Undiscovered Remedial Work Undiscovered Remedial Work Entity Tax Identification Number Entity Tax Identification Number Foreign currency translation impact Goodwill, Foreign Currency Translation Gain (Loss) 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 Inventories - net (Note 6) Inventories - net Inventory, Net Range [Axis] Statistical Measurement [Axis] Other current assets Increase (Decrease) in Other Current Assets Entity Interactive Data Current Entity Interactive Data Current Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Noncontrolling Interest Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Total Shareholder Return Amount Total Shareholder Return Amount Treasury stock acquisitions Payments for Repurchase of Common Stock Sales of goods Product [Member] Entity Common Stock, Shares Outstanding (in shares) Entity Common Stock, Shares Outstanding Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Inventory Disclosure [Abstract] Segments [Domain] Segments [Domain] Fair Value, Hierarchy [Axis] Fair Value Hierarchy and NAV [Axis] Share-based Compensation Arrangement by Share-based Payment Award Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Consolidation Items [Domain] Consolidation Items [Domain] Retained earnings Retained Earnings (Accumulated Deficit) Measure: Measure [Axis] Commitments and Contingencies Disclosure [Abstract] Name Outstanding Recovery, Individual Name Deferred Stock Units Deferred Stock Units [Member] Deferred Stock Units Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Current assets: Assets, Current [Abstract] Entity Address, State Entity Address, State or Province Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] CASH FLOWS FROM OPERATING ACTIVITIES: Net Cash Provided by (Used in) Operating Activities [Abstract] Common stock, shares outstanding (in shares) Common Stock, Shares, Outstanding Accrued settlement Increase (Decrease) in Accrued Settlement Increase (Decrease) in Accrued Settlement Interest cost Defined Benefit Plan, Interest Cost Technology Services and Solutions Rail Technologies Products [Member] Rail Technologies Products Accounts receivable Increase (Decrease) in Accounts and Other Receivables PEO PEO [Member] Defined Benefit Plan Disclosure Defined Benefit Plan Disclosure [Line Items] Retirement Plans Retirement Benefits [Text Block] Net income Net income Net income Net income Income (Loss) from Continuing Operations, Net of Tax, Including Portion Attributable to Noncontrolling Interest 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 Defined Contribution Plan Disclosure Defined Contribution Plan Disclosure [Line Items] Common stock, par value (usd per share) Common Stock, Par or Stated Value Per Share Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax, Portion Attributable to Parent Net cash provided by (used in) investing activities Net Cash Provided by (Used in) Investing Activities Customer [Domain] Customer [Domain] Schedule of Inventory Schedule of Inventory, Current [Table Text Block] Debt Instrument [Axis] Debt Instrument [Axis] Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount Effective income tax rate (percent) Effective Income Tax Rate Reconciliation, Percent Credit Facility [Axis] Credit Facility [Axis] Sales of services Service [Member] Financial Statements Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Vesting [Domain] Vesting [Domain] Accumulated Other Comprehensive Loss AOCI Attributable to Parent [Member] Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Expenses associated with contributions made Defined Contribution Plan, Cost All Executive Categories All Executive Categories [Member] Less comprehensive (loss) income attributable to noncontrolling interest: Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest [Abstract] Title of Individual [Axis] Title of Individual [Axis] Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Debt Disclosure [Abstract] Canada CANADA Earnings Per Share [Abstract] Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at June 30, 2023 and December 31, 2022, 11,115,779; shares outstanding at June 30, 2023 and December 31, 2022, 10,816,902 and 10,776,827, respectively Common Stock, Value, Issued Retirement Plan Sponsor Location [Domain] Retirement Plan Sponsor Location [Domain] Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] Total current assets Assets, Current Schedule of Defined Benefit Plans Disclosures [Table] Schedule of Defined Benefit Plans Disclosures [Table] 2024 Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One Litigation Settlement, Amount Awarded to Other Party, Scheduled Payment Year One Net periodic pension (income) cost Defined Benefit Plan, Net Periodic Benefit Cost (Credit) Fourth Amended And Restated Credit Agreement Fourth Amended And Restated Credit Agreement [Member] Fourth Amended And Restated Credit Agreement Revenue from Contract with Customer [Abstract] All Individuals All Individuals [Member] Supplemental disclosure of cash flow information: Supplemental Cash Flow Information [Abstract] Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table] Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table] Amortization Amortization Other expense (income) - net Other (expense) income - net Other Nonoperating Income (Expense) Entity Filer Category Entity Filer Category 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. Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Statement [Table] Statement [Table] Current Fiscal Year End Date Current Fiscal Year End Date Goodwill and Other Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] Purchase of common shares for treasury (in shares) Stock Repurchased During Period, Shares Transfers from contract asset balance to accounts receivable Contract with Customer, Asset, Reclassified to Receivable Precast Concrete Products Precast Concrete Products [Member] Precast Concrete Products PEO Name PEO Name Fair Value, by Balance Sheet Grouping [Table] Fair Value, by Balance Sheet Grouping [Table] 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 Goodwill Schedule of Goodwill [Table Text Block] Net cash used in operating activities Net Cash Provided by (Used in) Operating Activities Annual commitment amount Long-term Purchase Commitment, Annual Commitment Amount Long-term Purchase Commitment, Annual Commitment Amount Financing Receivable, Allowance for Credit Loss [Line Items] Financing Receivable, Allowance for Credit Loss [Line Items] Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Amortization of prior service costs and transition amount Defined Benefit Plan, Amortization of Prior Service Cost (Credit) Unallocated corporate assets Corporate, Non-Segment [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 Litigation settlement amount Total Litigation Settlement, Amount Awarded to Other Party Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Over time Transferred over Time [Member] Accrued payroll and employee benefits Increase (Decrease) in Employee Related Liabilities Statement of Financial Position [Abstract] Loss (gain) on asset divestitures Gain (Loss) on Disposition of Business Total L.B. Foster Company stockholders’ equity Equity, Attributable to Parent Consolidation Items [Axis] Consolidation Items [Axis] Schedule of Finite-Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Present value of remedial work Present Value of Proposed Remedial Work Present Value of Proposed Remedial Work Restricted Stock Restricted Stock [Member] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Reporting Unit [Axis] Reporting Unit [Axis] Revenue recognized from contract liabilities Contract with Customer, Liability, Revenue Recognized Finite-Lived Intangible Assets, Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Foreign currency translation adjustment Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax Precast Infrastructure Products Precast Infrastructure Products [Member] Precast Infrastructure Products Income before income taxes Income before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Long-term debt (Note 7) Long-term portion Long-Term Debt and Lease Obligation 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 Reclassification of pension liability adjustments to earnings, tax Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, Tax Level 2 Fair Value, Inputs, Level 2 [Member] Fabricated Steel Products Fabricated Steel Products [Member] Fabricated Steel Products Entity Emerging Growth Company Entity Emerging Growth Company United Kingdom UNITED KINGDOM Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Proceeds from debt Proceeds from Issuance of Other Long-Term Debt Increase (Decrease) in Stockholders' Equity Increase (Decrease) in Stockholders' Equity [Roll Forward] Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Net loss attributable to noncontrolling interest Income (Loss) from Continuing Operations, Net of Tax, Attributable to Noncontrolling Interest Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Document Fiscal Period Focus Document Fiscal Period Focus Weighted Average Amortization Period In Years Finite-Lived Intangible Asset, Useful Life Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Title Trading Arrangement, Individual Title Stock-based compensation Share-Based Payment Arrangement, Noncash Expense Weighted Average Weighted Average [Member] Common Stock Common Stock [Member] Individual: Individual [Axis] City Area Code City Area Code Entity Address, Postal Zip Code Entity Address, Postal Zip Code Earnings Per Common Share Earnings Per Share [Text Block] Products and Services [Axis] Product and Service [Axis] Income Statement Location [Domain] Income Statement Location [Domain] Schedule of Nonvested Share Activity Schedule of Nonvested Share Activity [Table Text Block] Document Fiscal Year Focus Document Fiscal Year Focus Total stockholders’ equity Beginning balance Ending balance Equity, Including Portion Attributable to Noncontrolling Interest Unrealized gain on cash flow hedge, tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, Tax Minimum Minimum [Member] Exercise Price Award Exercise Price Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Statement of Cash Flows [Abstract] ASSETS Assets [Abstract] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Goodwill and Intangible Assets Disclosure [Abstract] Accounts Receivable Additional Disclosures [Abstract] Net income (loss) Net Income (Loss), Including Portion Attributable to Noncontrolling Interest Income taxes (received) paid Income Taxes Paid, Net Net cash (used in) provided by financing activities Net Cash Provided by (Used in) Financing Activities Deferred tax assets (Note 9) Deferred Income Tax Assets, Net Retirement Plan Type [Axis] Retirement Plan Type [Axis] Commitments and Contingent Liabilities Commitments and Contingencies Disclosure [Text Block] Retained Earnings Retained Earnings [Member] Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Schedule of Reconciliation of Operating Profit (Loss) from Segments to Consolidated Reconciliation of Operating Profit (Loss) from Segments to Consolidated [Table Text Block] TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY Liabilities and Equity Other assets Other Assets, Noncurrent Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Basic earnings per common share (usd per share) Earnings Per Share, Basic Operating lease right-of-use assets - net Operating Lease, Right-of-Use Asset Accounting Policies [Abstract] Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Arrangement Duration Trading Arrangement Duration Entity Address, City Entity Address, City or Town Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Reclassification of pension liability adjustments to earnings, net of tax expense of $2, $16, $4 and $32, respectively Other Comprehensive (Income) Loss, Defined Benefit Plan, Reclassification Adjustment from AOCI, after Tax Other current liabilities Increase (Decrease) in Other Accrued Liabilities Document Transition Report Document Transition Report Award Timing Predetermined Award Timing Predetermined [Flag] Technology Technology-Based Intangible Assets [Member] Termination Date Trading Arrangement Termination Date Accounts payable Increase (Decrease) in Accounts Payable Common stock, shares authorized (in shares) Common Stock, Shares Authorized Cash flow hedges reclassified to earnings, tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), Reclassification, Tax Current portion of accrued settlement (Note 13) Accrued Legal Settlement Current Accrued Legal Settlement Current Investment of noncontrolling interest Proceeds from Noncontrolling Interests 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 Line of Credit Facility, Lender [Domain] Line of Credit Facility, Lender [Domain] Steel Products and Measurement Steel Products And Measurement [Member] Steel Products And Measurement Over time sales, percentage Over Time Sales, Percent Over Time Sales, Percent Derivative Instrument [Axis] Derivative Instrument [Axis] Adjustments to reconcile net income to cash used in operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Product Liability Contingency [Table] Product Liability Contingency [Table] All Trading Arrangements All Trading Arrangements [Member] All Adjustments to Compensation All Adjustments to Compensation [Member] Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Award Timing Disclosures [Line Items] Title of Individual [Domain] Title of Individual [Domain] Rail Products and Global Friction Management Rail Products And Friction Management [Member] Rail Products And Friction Management Compensation Amount Outstanding Recovery Compensation Amount Long-term portion of accrued settlement (Note 13) Accrued Legal Settlement Non Current Accrued Legal Settlement Non Current Schedule of Reconciliation of Assets from Segment to Consolidated Reconciliation of Assets from Segment to Consolidated [Table Text Block] Amounts attributable to noncontrolling interest Comprehensive Income (Loss), Net of Tax, Attributable to Noncontrolling Interest Reserve for uncollectible accounts, expense Current period provision Accounts Receivable, Credit Loss Expense (Reversal) Paid-in capital Additional Paid in Capital Other comprehensive income (loss), net of tax: Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Interest rate swaps Derivative Asset Deferred income taxes Deferred Income Tax Expense (Benefit) Statement of Comprehensive Income [Abstract] Finance leases and financing agreements Finance Lease, Liability Debt Instrument, Redemption, Period [Domain] Debt Instrument, Redemption, Period [Domain] Insider Trading Arrangements [Line Items] Allowance for doubtful accounts, beginning balance Allowance for doubtful accounts, ending balance Accounts Receivable, Allowance for Credit Loss Defined benefit plan, expected future employer contributions, current fiscal year Defined Benefit Plan, Expected Future Employer Contributions, Current Fiscal Year 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] 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 Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Debt Instrument, Redemption, Period One Debt Instrument, Redemption, Period One [Member] Line of credit facility, maximum increase in commitments Line Of Credit Facility, Maximum Increase In Commitments Line Of Credit Facility, Maximum Increase In Commitments Entity Registrant Name Entity Registrant Name Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] Award Timing Method Award Timing Method [Text Block] Accrual for environmental loss Accrual for Environmental Loss Contingencies Adjustment to Compensation, Amount Adjustment to Compensation Amount 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 Schedule of Costs of Retirement Plans Schedule of Costs of Retirement Plans [Table Text Block] Noncontrolling interest Equity, Attributable to Noncontrolling Interest Document Period End Date Document Period End Date Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Adoption Date Trading Arrangement Adoption Date Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] 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] Employee-related Liabilities [Abstract] Schedule of Accounts Receivable, Allowance for Credit Loss Accounts Receivable, Allowance for Credit Loss [Table Text Block] Treasury Stock Treasury Stock, Common [Member] Entity Central Index Key Entity Central Index Key Segment Reporting Information Segment Reporting Information Segment Reporting Information [Line Items] 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 Number of defined benefit plans DefinedBenefitPlanNumber Gain on sales and disposals of property, plant, and equipment Gain (Loss) on Disposition of Property Plant Equipment Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Gross Carrying Value Finite-Lived Intangible Assets, Gross Income tax expense Income tax expense (benefit) Income Tax Expense (Benefit) Finished goods Inventory, Finished Goods, Net of Reserves Write-off against allowance Accounts Receivable, Allowance for Credit Loss, Writeoff Product Liability Contingency Product Liability Contingency [Line Items] Accrued payroll and employee benefits Employee-related Liabilities, Current Vesting [Axis] Vesting [Axis] Coatings and Measurement Coatings and Measurement [Member] Coatings and Measurement Fair Value Measurements Fair Value Disclosures [Text Block] Name Trading Arrangement, Individual Name UPRR UprrMember Schedule of Disaggregation of Revenue Disaggregation of Revenue [Table Text Block] Lender Name [Axis] Lender Name [Axis] Issuance of common shares, net of share withheld for taxes Stock Issued During Period, Value, New Issues Inventory Inventory Disclosure [Text Block] Entity [Domain] Entity [Domain] Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Amendment Flag Amendment Flag Legal Entity [Axis] Legal Entity [Axis] 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 Recognized net actuarial loss Defined Benefit Plan, Amortization of Gain (Loss) Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Acquisitions, net of cash acquired Payments to Acquire Businesses, Net of Cash Acquired Interest expense - net Interest Income (Expense), Net Interest paid Interest Paid, Excluding Capitalized Interest, Operating Activities Total comprehensive income (loss) Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest Credit Facility [Domain] Credit Facility [Domain] Rail Products Rail Products Business Unit [Member] Rail Products Business Unit Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Over time output method Over Time Output Method [Member] Over Time Output Method Denominator for diluted earnings per common share - adjusted weighted average shares outstanding (in shares) Weighted Average Number of Shares Outstanding, Diluted Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Retirement Plan Sponsor Location [Axis] Retirement Plan Sponsor Location [Axis] Schedule of Contract with Customer, Contract Asset, Contract Liability Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Precast Concrete Buildings Precast Concrete Buildings [Member] Precast Concrete Buildings Revenue Revenue from Contract with Customer [Text Block] Equity in income of nonconsolidated investments Equity Loss Income and Remeasurement Gain Equity Loss Income and Remeasurement Gain Weighted average shares outstanding (in shares) Weighted Average Number of Shares Issued, Basic Capital expenditures on property, plant, and equipment Payments to Acquire Property, Plant, and Equipment Company Selected Measure Amount Company Selected Measure Amount Paid-in Capital Additional Paid-in Capital [Member] Unrealized gain on cash flow hedges, net of tax expense of $0, $50, $0, and $238, respectively Unrealized derivative gain on cash flow hedges Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), before Reclassification, after Tax Effect of dilutive securities: Weighted Average Number of Shares Outstanding, Diluted, Adjustment [Abstract] TOTAL ASSETS Assets Assets Name Awards Close in Time to MNPI Disclosures, Individual Name Cover [Abstract] Accounts Receivable Loans, Notes, Trade and Other Receivables Disclosure [Text Block] Stock-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition United States UNITED STATES Other long-term liabilities Other Liabilities, Noncurrent 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 Non-NEOs Non-NEOs [Member] Revenue remaining performance obligation Revenue, Remaining Performance Obligation, Amount Pension Plan Pension Plan [Member] Business Segments Segment Reporting Disclosure [Text Block] Net increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect CASH FLOWS FROM FINANCING ACTIVITIES: Net Cash Provided by (Used in) Financing Activities [Abstract] Litigation settlement amount, current Litigation Settlement, Amount Awarded to Other Party, Current Litigation Settlement, Amount Awarded to Other Party, Current Non-PEO NEO Non-PEO NEO [Member] Equity Component [Domain] Equity Component [Domain] Adjustment to Compensation: Adjustment to Compensation [Axis] Work-in-process Inventory, Work in Process, Net of Reserves Accounts receivable - net (Note 5) Accounts and Financing Receivable, after Allowance for Credit Loss, Current Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Denominator for basic earnings per common share (in shares) Weighted Average Number of Shares Outstanding, Basic Contract assets - net (Note 3) Balance as of December 31, 2022 Balance as of June 30, 2023 Contract with Customer, Asset, after Allowance for Credit Loss Entity Current Reporting Status Entity Current Reporting Status Operating profit Segment Operating Profit Operating profit for reportable segments Operating Income (Loss) Debt Instrument, Redemption, Period Two Debt Instrument, Redemption, Period Two [Member] 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 Total cost of sales Cost of Revenue Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Segments [Axis] Segments [Axis] Statement Statement [Line Items] Other comprehensive income, net of tax: Other Comprehensive Income (Loss), Net of Tax [Abstract] Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Revolving credit facility Line of credit facility, amount outstanding Long-Term Line of Credit Customer relationships Customer Relationships [Member] Vesting period one Share-Based Payment Arrangement, Tranche One [Member] Noncontrolling Interest Noncontrolling Interest [Member] EX-101.PRE 10 fstr-20230630_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT GRAPHIC 11 fstr-20230630_g1.gif GRAPHIC begin 644 fstr-20230630_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 12 R1.htm IDEA: XBRL DOCUMENT v3.23.2
Cover - shares
6 Months Ended
Jun. 30, 2023
Aug. 01, 2023
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Jun. 30, 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,091,020
Amendment Flag false  
Document Fiscal Year Focus 2023  
Document Fiscal Period Focus Q2  
Entity Central Index Key 0000352825  
Current Fiscal Year End Date --12-31  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Balance Sheets - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Current assets:    
Cash and cash equivalents $ 3,880 $ 2,882
Accounts receivable - net (Note 5) 74,249 82,455
Contract assets - net (Note 3) 34,011 33,613
Inventories - net (Note 6) 79,451 75,721
Other current assets 12,182 11,061
Total current assets 203,773 205,732
Property, plant, and equipment - net 76,948 85,344
Operating lease right-of-use assets - net 15,770 17,291
Other assets:    
Goodwill (Note 4) 31,404 30,733
Other intangibles - net (Note 4) 21,256 23,831
Deferred tax assets (Note 9) 0 24
Other assets 2,417 2,355
TOTAL ASSETS 351,568 365,310
Current liabilities:    
Accounts payable 43,933 48,782
Deferred revenue 15,969 19,452
Accrued payroll and employee benefits 8,709 10,558
Current portion of accrued settlement (Note 13) 8,000 8,000
Current maturities of long-term debt (Note 7) 102 127
Other accrued liabilities 14,928 16,192
Total current liabilities 91,641 103,111
Long-term debt (Note 7) 89,403 91,752
Deferred tax liabilities (Note 9) 1,718 3,109
Long-term portion of accrued settlement (Note 13) 6,000 8,000
Long-term operating lease liabilities 12,669 14,163
Other long-term liabilities 7,545 7,577
Stockholders’ equity:    
Common stock, par value $0.01, authorized 20,000,000 shares; shares issued at June 30, 2023 and December 31, 2022, 11,115,779; shares outstanding at June 30, 2023 and December 31, 2022, 10,816,902 and 10,776,827, respectively 111 111
Paid-in capital 40,919 41,303
Retained earnings 124,548 123,169
Treasury stock - at cost, 298,877 and 338,952 common stock shares at June 30, 2023 and December 31, 2022, respectively (4,846) (6,240)
Accumulated other comprehensive loss (18,536) (21,165)
Total L.B. Foster Company stockholders’ equity 142,196 137,178
Noncontrolling interest 396 420
Total stockholders’ equity 142,592 137,598
TOTAL LIABILITIES AND STOCKHOLDERS’ EQUITY $ 351,568 $ 365,310
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Balance Sheets (Parenthetical) - $ / shares
Jun. 30, 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,816,902 10,776,827
Treasury stock shares - at cost, common stock (in shares) 298,877 338,952
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Operations - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Total net sales $ 148,034 $ 131,515 $ 263,522 $ 230,309
Total cost of sales 115,782 108,222 207,979 190,569
Gross profit 32,252 23,293 55,543 39,740
Selling and administrative expenses 24,528 19,394 45,951 36,692
Amortization expense 1,375 1,419 2,740 2,855
Operating profit 6,349 2,480 6,852 193
Interest expense - net 1,574 384 2,962 754
Other expense (income) - net 719 (701) 2,546 (1,264)
Income before income taxes 4,056 2,797 1,344 703
Income tax expense 563 821 22 313
Net income 3,493 1,976 1,322 390
Net loss attributable to noncontrolling interest (38) (34) (57) (54)
Net income attributable to L.B. Foster Company $ 3,531 $ 2,010 $ 1,379 $ 444
Basic earnings per common share (usd per share) $ 0.32 $ 0.18 $ 0.12 $ 0.04
Diluted earnings per common share (usd per share) $ 0.32 $ 0.18 $ 0.12 $ 0.04
Sales of goods        
Total net sales $ 132,167 $ 116,584 $ 230,705 $ 201,005
Total cost of sales 101,069 95,331 179,134 165,176
Sales of services        
Total net sales 15,867 14,931 32,817 29,304
Total cost of sales $ 14,713 $ 12,891 $ 28,845 $ 25,393
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Comprehensive Income (Loss) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Statement of Comprehensive Income [Abstract]        
Net income $ 3,493 $ 1,976 $ 1,322 $ 390
Other comprehensive income (loss), net of tax:        
Foreign currency translation adjustment 1,252 (3,688) 2,503 (4,568)
Unrealized gain on cash flow hedges, net of tax expense of $0, $50, $0, and $238, respectively 496 147 78 698
Cash flow hedges reclassified to earnings, net of tax expense of $0, $0, $0, and $66, respectively 0 0 0 93
Reclassification of pension liability adjustments to earnings, net of tax expense of $2, $16, $4 and $32, respectively [1] 41 50 81 99
Total comprehensive income (loss) 5,282 (1,515) 3,984 (3,288)
Less comprehensive (loss) income attributable to noncontrolling interest:        
Net loss attributable to noncontrolling interest (38) (34) (57) (54)
Foreign currency translation adjustment 29 (61) 33 24
Amounts attributable to noncontrolling interest (9) (95) (24) (30)
Comprehensive income (loss) attributable to L.B. Foster Company $ 5,291 $ (1,420) $ 4,008 $ (3,258)
[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 17 R6.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Comprehensive Income (Loss) (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Statement of Comprehensive Income [Abstract]        
Unrealized gain on cash flow hedge, tax $ 0 $ 50 $ 0 $ 238
Cash flow hedges reclassified to earnings, tax 0 0 0 66
Reclassification of pension liability adjustments to earnings, tax $ 2 $ 16 $ 4 $ 32
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Cash Flows - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
CASH FLOWS FROM OPERATING ACTIVITIES:    
Net income $ 1,322 $ 390
Adjustments to reconcile net income to cash used in operating activities:    
Deferred income taxes (1,710) (173)
Depreciation 4,989 3,814
Amortization 2,740 2,855
Equity in income of nonconsolidated investments (16) (87)
Gain on sales and disposals of property, plant, and equipment (366) (214)
Stock-based compensation 1,829 1,183
Loss (gain) on asset divestitures 3,074 (491)
Change in operating assets and liabilities:    
Accounts receivable 6,584 (17,327)
Contract assets (3,033) 2,190
Inventories (13,068) (10,695)
Other current assets (1,251) (3,573)
Other noncurrent assets (865) 1,715
Accounts payable 465 9,347
Deferred revenue 627 5,301
Accrued payroll and employee benefits (1,885) (2,943)
Accrued settlement (2,000) (2,000)
Other current liabilities (941) (1,748)
Other long-term liabilities 172 (926)
Net cash used in operating activities (3,333) (13,382)
CASH FLOWS FROM INVESTING ACTIVITIES:    
Proceeds from the sale of property, plant, and equipment 539 237
Capital expenditures on property, plant, and equipment (1,495) (3,048)
Proceeds from business dispositions 7,706 1,195
Acquisitions, net of cash acquired 966 (5,712)
Net cash provided by (used in) investing activities 7,716 (7,328)
CASH FLOWS FROM FINANCING ACTIVITIES:    
Repayments of debt (95,251) (78,093)
Proceeds from debt 92,331 96,970
Treasury stock acquisitions (977) (401)
Investment of noncontrolling interest 334 0
Net cash (used in) provided by financing activities (3,563) 18,476
Effect of exchange rate changes on cash and cash equivalents 178 (477)
Net increase (decrease) in cash and cash equivalents 998 (2,711)
Cash and cash equivalents at beginning of period 2,882 10,372
Cash and cash equivalents at end of period 3,880 7,661
Supplemental disclosure of cash flow information:    
Interest paid 2,889 662
Income taxes (received) paid $ (331) $ 389
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.23.2
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 income (loss) 390     444     (54)
Other comprehensive income, net of tax:              
Pension liability adjustment 99         99  
Foreign currency translation adjustment (4,568)         (4,592) 24
Unrealized derivative gain on cash flow hedges 698         698  
Cash flow hedges reclassified to earnings 93         93  
Issuance of common shares, net of share withheld for taxes (466)   (2,254)   1,788    
Stock-based compensation 1,183   1,183        
Ending balance at Jun. 30, 2022 181,039 111 42,201 169,177 (8,391) (22,547) 488
Beginning balance at Mar. 31, 2022 181,697 111 42,153 167,167 (9,200) (19,117) 583
Increase (Decrease) in Stockholders' Equity              
Net income (loss) 1,976     2,010     (34)
Other comprehensive income, net of tax:              
Pension liability adjustment 50         50  
Foreign currency translation adjustment (3,688)         (3,627) (61)
Unrealized derivative gain on cash flow hedges 147         147  
Cash flow hedges reclassified to earnings 0            
Issuance of common shares, net of share withheld for taxes (68)   (877)   809    
Stock-based compensation 925   925        
Ending balance at Jun. 30, 2022 181,039 111 42,201 169,177 (8,391) (22,547) 488
Beginning balance at Dec. 31, 2022 137,598 111 41,303 123,169 (6,240) (21,165) 420
Increase (Decrease) in Stockholders' Equity              
Net income (loss) 1,322     1,379     (57)
Other comprehensive income, net of tax:              
Pension liability adjustment 81         81  
Foreign currency translation adjustment 2,503         2,470 33
Unrealized derivative gain on cash flow hedges 78         78  
Cash flow hedges reclassified to earnings 0            
Purchase of common shares for treasury (662)       (662)    
Issuance of common shares, net of share withheld for taxes (157)   (2,213)   2,056    
Stock-based compensation 1,829   1,829        
Ending balance at Jun. 30, 2023 142,592 111 40,919 124,548 (4,846) (18,536) 396
Beginning balance at Mar. 31, 2023 137,014 111 40,951 121,017 (5,174) (20,296) 405
Increase (Decrease) in Stockholders' Equity              
Net income (loss) 3,493     3,531     (38)
Other comprehensive income, net of tax:              
Pension liability adjustment 41         41  
Foreign currency translation adjustment 1,252         1,223 29
Unrealized derivative gain on cash flow hedges 496         496  
Cash flow hedges reclassified to earnings 0            
Purchase of common shares for treasury (662)       (662)    
Issuance of common shares, net of share withheld for taxes 13   (977)   990    
Stock-based compensation 945   945        
Ending balance at Jun. 30, 2023 $ 142,592 $ 111 $ 40,919 $ 124,548 $ (4,846) $ (18,536) $ 396
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.23.2
Condensed Consolidated Statements of Stockholders' Equity (Parenthetical) - shares
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Statement of Stockholders' Equity [Abstract]        
Purchase of common shares for treasury (in shares) 51,241   51,241  
Common shares issues net of shares withheld (in shares) 58,432 26,167 91,316 60,607
XML 21 R10.htm IDEA: XBRL DOCUMENT v3.23.2
Financial Statements
6 Months Ended
Jun. 30, 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 and six months ended June 30, 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 22 R11.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments
6 Months Ended
Jun. 30, 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
June 30, 2023
Three Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$91,616 $6,627 $81,797 $3,998 
Precast Concrete Products33,865 1,296 23,611 (125)
Steel Products and Measurement22,553 1,456 26,107 762 
Total$148,034 $9,379 $131,515 $4,635 

Six Months Ended
June 30, 2023
Six Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$156,000 $9,015 $145,507 $5,037 
Precast Concrete Products58,153 948 38,621 (916)
Steel Products and Measurement49,369 1,448 46,181 (1,386)
Total$263,522 $11,411 $230,309 $2,735 

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 to the Company’s consolidated total for the periods presented:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Operating profit for reportable segments$9,379 $4,635 $11,411 $2,735 
Interest expense - net(1,574)(384)(2,962)(754)
Other (expense) income - net(719)701 (2,546)1,264 
Unallocated corporate expenses and other unallocated charges(3,030)(2,155)(4,559)(2,542)
Income before income taxes$4,056 $2,797 $1,344 $703 

The following table illustrates assets of the Company by reportable segment for the periods presented:
June 30,
2023
December 31,
2022
Rail, Technologies, and Services$177,515 $172,111 
Precast Concrete Products104,892 108,598 
Steel Products and Measurement38,492 54,516 
Unallocated corporate assets30,669 30,085 
Total$351,568 $365,310 

On June 30, 2023, the Company sold substantially all the operating assets of the prestressed concrete railroad tie business operated by its wholly-owned subsidiary, CXT Incorporated (“Ties”), located in Spokane, WA, for $2,368 in proceeds, subject to final working capital adjustments, generating a $1,009 loss on the sale, which was recorded in “Other expense (income) - net”. The Ties 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 business (“Chemtec”) for $5,344 in proceeds, subject to final working capital adjustments, generating a $2,065 loss on the sale, which was 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 23 R12.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue
6 Months Ended
Jun. 30, 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
June 30,
Six Months Ended
June 30,
2023202220232022
Rail Products and Global Friction Management$81,926 $70,416 $137,974 $122,067 
Technology Services and Solutions9,690 11,381 18,026 23,440 
Rail, Technologies, and Services91,616 81,797 156,000 145,507 
Precast Concrete Buildings19,325 15,811 30,211 25,781 
Precast Infrastructure Products14,540 7,800 27,942 12,840 
Precast Concrete Products33,865 23,611 58,153 38,621 
Fabricated Steel Products14,854 17,967 25,371 30,571 
Coatings and Measurement7,699 8,140 23,998 15,610 
Steel Products and Measurement22,553 26,107 49,369 46,181 
Total net sales$148,034 $131,515 $263,522 $230,309 

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 June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$75,923 $14,540 $20,407 $110,870 
Over time15,693 19,325 2,146 37,164 
Total net sales$91,616 $33,865 $22,553 $148,034 
Three Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$65,872 $8,577 $20,964 $95,413 
Over time15,925 15,034 5,143 36,102 
Total net sales$81,797 $23,611 $26,107 $131,515 

Six Months Ended June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$129,757 $27,942 $36,133 $193,832 
Over time26,243 30,211 13,236 69,690 
Total net sales$156,000 $58,153 $49,369 $263,522 
Six Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$115,038 $12,840 $36,026 $163,904 
Over time30,469 25,781 10,155 66,405 
Total net sales$145,507 $38,621 $46,181 $230,309 

The Company’s performance obligations under long-term agreements with its customers are generally satisfied over time. Revenue under long-term agreements is at times 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. The Company’s revenue recognized over time under long-term agreements is also at times recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements. The use of an input or an output measure to recognize revenue is determined based on what is most appropriate given the nature of the work performed and terms of the associated agreement.

Revenue recognized over time was as follows for the periods presented:
Three Months Ended
June 30,
Percentage of Total Net Sales
Three Months Ended June 30,
2023202220232022
Over time input method$15,724 $20,089 10.6 %15.3 %
Over time output method21,440 16,013 14.5 12.2 
Total over time sales$37,164 $36,102 25.1 %27.5 %

Six Months Ended
June 30,
Percentage of Total Net Sales
Six Months Ended June 30,
2023202220232022
Over time input method$31,935 $39,411 12.1 %17.1 %
Over time output method37,755 26,994 14.3 11.7 
Total over time sales$69,690 $66,405 26.4 %28.8 %
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 assets4,797 
Transfers from contract asset balance to accounts receivable (4,399)
Balance as of June 30, 2023$34,011 

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(4,049)
Increase in billings in excess of cost, excluding revenue recognized 3,525 
Other adjustments, including business divestiture(1,938)
Balance as of June 30, 2023$4,319 

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 June 30, 2023, the Company had approximately $290,076 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 12.0% of the June 30, 2023 backlog was related to projects that are anticipated to extend beyond June 30, 2024.
XML 24 R13.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Other Intangible Assets
6 Months Ended
Jun. 30, 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 
VanHooseCo acquisition— 242 — 242 
Foreign currency translation impact429 — — 429 
Balance as of June 30, 2023$20,377 $11,027 $— $31,404 
    
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 June 30, 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 June 30, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:
June 30, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Patents10$338 $(197)$141 
Customer relationships1627,656 (15,828)11,828 
Trademarks and trade names167,983 (4,299)3,684 
Technology1432,306 (26,978)5,328 
Favorable lease6327 (52)275 
$68,610 $(47,354)$21,256 

During the six months ended June 30, 2023, certain fully amortized intangible assets of $28 related to non-compete agreements were eliminated from gross intangible assets and accumulated amortization.

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 
On June 21, 2022, the Company acquired the stock of Skratch Enterprises Ltd. (“Skratch”). On August 12, 2022, the Company acquired the operating assets of VanHooseCo Precast LLC (“VanHooseCo”). As of June 30, 2023, the purchase accounting for these transactions is final.
XML 25 R14.htm IDEA: XBRL DOCUMENT v3.23.2
Accounts Receivable
6 Months Ended
Jun. 30, 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 $256 and $150 for the three months ended June 30, 2023 and 2022, respectively, and an expense of $411 and $211 for the six months ended June 30, 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 provision411 
Write-off against allowance(197)
Balance as of June 30, 2023$1,027 
XML 26 R15.htm IDEA: XBRL DOCUMENT v3.23.2
Inventory
6 Months Ended
Jun. 30, 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 June 30, 2023 and December 31, 2022 are summarized in the following table:
June 30,
2023
December 31,
2022
Finished goods$48,237 $41,431 
Work-in-process5,304 9,693 
Raw materials25,910 24,597 
Inventories - net$79,451 $75,721 
XML 27 R16.htm IDEA: XBRL DOCUMENT v3.23.2
Long-Term Debt and Related Matters
6 Months Ended
Jun. 30, 2023
Debt Disclosure [Abstract]  
Long-Term Debt and Related Matters Long-Term Debt and Related Matters
Long-term debt consisted of the following:
June 30,
2023
December 31,
2022
Revolving credit facility$89,280 $91,567 
Finance leases and financing agreements225 312 
Total89,505 91,879 
Less current maturities(102)(127)
Long-term portion$89,403 $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 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 acquisition of VanHooseCo Precast, LLC (“VanHooseCo”) 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.50 through June 30, 2023 to accommodate the transaction.

As of June 30, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,173.
XML 28 R17.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings Per Common Share
6 Months Ended
Jun. 30, 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 earnings per common share for the periods indicated:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Numerator for basic and diluted earnings per common share:
Net income$3,493 $1,976 $1,322 $390 
Denominator:
Weighted average shares outstanding10,807 10,715 10,800 10,700 
Denominator for basic earnings per common share10,807 10,715 10,800 10,700 
Effect of dilutive securities:
Stock compensation plans71 99 66 109 
Dilutive potential common shares71 99 66 109 
Denominator for diluted earnings per common share - adjusted weighted average shares outstanding10,878 10,814 10,866 10,809 
Basic earnings per common share$0.32 $0.18 $0.12 $0.04 
Diluted earnings per common share$0.32 $0.18 $0.12 $0.04 
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.23.2
Income Taxes
6 Months Ended
Jun. 30, 2023
Income Tax Disclosure [Abstract]  
Income Taxes Income TaxesFor the three months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $563 and $821, respectively, on pre-tax income of $4,056 and $2,797, respectively, for an effective income tax rate of 13.9% and 29.4%, respectively. For the six months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $22 and $313, respectively, on pre-tax income of $1,344 and $703, respectively, for an effective income tax rate of 1.6% and 44.5%, respectively. The Company's effective income tax rate for the three and six months ended June 30, 2023 differed from the federal statutory rate of 21% primarily due to the realization of a portion of its U.S. deferred tax assets previously offset by a valuation allowance. The Company continues 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 30 R19.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation
6 Months Ended
Jun. 30, 2023
Share-Based Payment Arrangement, Noncash Expense [Abstract]  
Stock-Based Compensation Stock-Based Compensation
The Company recorded stock-based compensation expense of $945 and $925 for the three months ended June 30, 2023 and 2022, respectively, and $1,829 and $1,183 for the six months ended June 30, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of June 30, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,026. The Company will recognize this unrecognized compensation expense over the upcoming 2.7 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 six months ended June 30, 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 
Granted181,914 — 367,558 11.78 
Vested(88,367)(33,864)— 15.97 
Adjustment for incentive awards expected to vest— — 20,104 15.36 
Outstanding as of June 30, 2023267,720 12,404 496,140 $14.44 
XML 31 R20.htm IDEA: XBRL DOCUMENT v3.23.2
Fair Value Measurements
6 Months Ended
Jun. 30, 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.

Cash equivalents - Included in “Cash and cash equivalents” within the Condensed Consolidated Balance Sheets are investments in non-domestic term deposits. The carrying amounts approximate fair value because of the short maturity of the instruments.

SOFR-based interest rate swaps - To reduce the impact of interest rate changes on outstanding variable-rate debt, the Company amended and entered into forward-starting SOFR-based interest rate swaps with notional values totaling $20,000 and $20,000 effective August 12, 2022 and August 31, 2022, respectively. The fair value of the interest rate swaps are based on market-observable forward interest rates and represents the estimated amount that the Company would pay to terminate the agreements. As such, the swap agreements are classified as Level 2 within the fair value hierarchy. As of June 30, 2023 and December 31, 2022, the interest rate swaps were recorded in “Other current assets” when the interest rate swaps’ fair market value are in an asset position, and "Other accrued liabilities" when in a liability position within our Condensed Consolidated Balance Sheets.
Fair Value Measurements at Reporting DateFair Value Measurements at Reporting Date
June 30,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $— $— $17 $17 $— $— 
Interest rate swaps2,008 — 2,008 — 1,930 — 1,930 — 
Total assets$2,025 $17 $2,008 $— $1,947 $17 $1,930 $— 

The $20,000 interest rate swap agreements that became effective August 2022 are accounted for as cash flow hedges and the objective of the hedges is to offset the expected interest variability on payments associated with the interest rate on our debt. The gains and losses related to the interest rate swaps are reclassified from “Accumulated other comprehensive loss” in our Condensed Consolidated Balance Sheets and included in “Interest expense - net” in our Condensed Consolidated Statements of Operations as the interest expense from our debt is recognized.

For the three months ended June 30, 2023 and 2022, the Company recognized interest income of $295 and $19, respectively, from interest rate swaps. For the six months ended June 30, 2023 and 2022, the Company recognized interest income and interest expense of $540 and $78, respectively, from interest rate swaps.
XML 32 R21.htm IDEA: XBRL DOCUMENT v3.23.2
Retirement Plans
6 Months Ended
Jun. 30, 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 and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$71 $49 $143 $97 
Expected return on plan assets(64)(66)(128)(132)
Recognized net actuarial loss16 18 31 35 
Net periodic pension cost$23 $$46 $— 

The Company has made contributions to its United States defined benefit plan of $176 during the six months ended June 30, 2023 and expects to make total contributions of $400 during 2023.

United Kingdom Defined Benefit Plan
Net periodic pension costs for the United Kingdom defined benefit pension plan for the three and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$56 $43 $112 $86 
Expected return on plan assets(84)(76)(168)(152)
Amortization of prior service costs and transition amount12 12 
Recognized net actuarial loss40 80 
Net periodic pension (income) cost$(19)$13 $(38)$26 

United Kingdom regulations require trustees to adopt a prudent approach to funding required contributions to defined benefit pension plans. For the six months ended June 30, 2023, the Company contributed approximately $170 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
June 30,
Six Months Ended
June 30,
2023202220232022
United States$793 $390 $1,407 $695 
Canada32 45 94 105 
United Kingdom315 379 576 379 
$1,140 $814 $2,077 $1,179 
XML 33 R22.htm IDEA: XBRL DOCUMENT v3.23.2
Commitments and Contingent Liabilities
6 Months Ended
Jun. 30, 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 then-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$6,000 
20248,000 
Total$14,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 June 30, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,447 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 June 30, 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 June 30, 2023, no such disclosures were considered necessary.
XML 34 R23.htm IDEA: XBRL DOCUMENT v3.23.2
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Pay vs Performance Disclosure        
Net Income (Loss) $ 3,531 $ 2,010 $ 1,379 $ 444
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.23.2
Insider Trading Arrangements
3 Months Ended
Jun. 30, 2023
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.23.2
Financial Statements (Policies)
6 Months Ended
Jun. 30, 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 and six months ended June 30, 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 R26.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments (Tables)
6 Months Ended
Jun. 30, 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
June 30, 2023
Three Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$91,616 $6,627 $81,797 $3,998 
Precast Concrete Products33,865 1,296 23,611 (125)
Steel Products and Measurement22,553 1,456 26,107 762 
Total$148,034 $9,379 $131,515 $4,635 

Six Months Ended
June 30, 2023
Six Months Ended
June 30, 2022
Net SalesSegment Operating ProfitNet SalesSegment Operating Profit (Loss)
Rail, Technologies, and Services$156,000 $9,015 $145,507 $5,037 
Precast Concrete Products58,153 948 38,621 (916)
Steel Products and Measurement49,369 1,448 46,181 (1,386)
Total$263,522 $11,411 $230,309 $2,735 
Schedule of Reconciliation of Operating Profit (Loss) from Segments to Consolidated
A reconciliation of reportable segment net profit to the Company’s consolidated total for the periods presented:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Operating profit for reportable segments$9,379 $4,635 $11,411 $2,735 
Interest expense - net(1,574)(384)(2,962)(754)
Other (expense) income - net(719)701 (2,546)1,264 
Unallocated corporate expenses and other unallocated charges(3,030)(2,155)(4,559)(2,542)
Income before income taxes$4,056 $2,797 $1,344 $703 
Schedule of Reconciliation of Assets from Segment to Consolidated The following table illustrates assets of the Company by reportable segment for the periods presented:
June 30,
2023
December 31,
2022
Rail, Technologies, and Services$177,515 $172,111 
Precast Concrete Products104,892 108,598 
Steel Products and Measurement38,492 54,516 
Unallocated corporate assets30,669 30,085 
Total$351,568 $365,310 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue (Tables)
6 Months Ended
Jun. 30, 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
June 30,
Six Months Ended
June 30,
2023202220232022
Rail Products and Global Friction Management$81,926 $70,416 $137,974 $122,067 
Technology Services and Solutions9,690 11,381 18,026 23,440 
Rail, Technologies, and Services91,616 81,797 156,000 145,507 
Precast Concrete Buildings19,325 15,811 30,211 25,781 
Precast Infrastructure Products14,540 7,800 27,942 12,840 
Precast Concrete Products33,865 23,611 58,153 38,621 
Fabricated Steel Products14,854 17,967 25,371 30,571 
Coatings and Measurement7,699 8,140 23,998 15,610 
Steel Products and Measurement22,553 26,107 49,369 46,181 
Total net sales$148,034 $131,515 $263,522 $230,309 
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 June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$75,923 $14,540 $20,407 $110,870 
Over time15,693 19,325 2,146 37,164 
Total net sales$91,616 $33,865 $22,553 $148,034 
Three Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$65,872 $8,577 $20,964 $95,413 
Over time15,925 15,034 5,143 36,102 
Total net sales$81,797 $23,611 $26,107 $131,515 

Six Months Ended June 30, 2023
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$129,757 $27,942 $36,133 $193,832 
Over time26,243 30,211 13,236 69,690 
Total net sales$156,000 $58,153 $49,369 $263,522 
Six Months Ended June 30, 2022
Rail, Technologies, and ServicesPrecast Concrete ProductsSteel Products and MeasurementTotal
Point in time$115,038 $12,840 $36,026 $163,904 
Over time30,469 25,781 10,155 66,405 
Total net sales$145,507 $38,621 $46,181 $230,309 
Revenue recognized over time was as follows for the periods presented:
Three Months Ended
June 30,
Percentage of Total Net Sales
Three Months Ended June 30,
2023202220232022
Over time input method$15,724 $20,089 10.6 %15.3 %
Over time output method21,440 16,013 14.5 12.2 
Total over time sales$37,164 $36,102 25.1 %27.5 %

Six Months Ended
June 30,
Percentage of Total Net Sales
Six Months Ended June 30,
2023202220232022
Over time input method$31,935 $39,411 12.1 %17.1 %
Over time output method37,755 26,994 14.3 11.7 
Total over time sales$69,690 $66,405 26.4 %28.8 %
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 assets4,797 
Transfers from contract asset balance to accounts receivable (4,399)
Balance as of June 30, 2023$34,011 

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(4,049)
Increase in billings in excess of cost, excluding revenue recognized 3,525 
Other adjustments, including business divestiture(1,938)
Balance as of June 30, 2023$4,319 
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Other Intangible Assets (Tables)
6 Months Ended
Jun. 30, 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 
VanHooseCo acquisition— 242 — 242 
Foreign currency translation impact429 — — 429 
Balance as of June 30, 2023$20,377 $11,027 $— $31,404 
Schedule of Finite-Lived Intangible Assets
As of June 30, 2023 and December 31, 2022, the components of the Company’s intangible assets were as follows:
June 30, 2023
Weighted Average
Amortization
Period In Years
Gross
Carrying
Value
Accumulated
Amortization
Net
Carrying
Amount
Patents10$338 $(197)$141 
Customer relationships1627,656 (15,828)11,828 
Trademarks and trade names167,983 (4,299)3,684 
Technology1432,306 (26,978)5,328 
Favorable lease6327 (52)275 
$68,610 $(47,354)$21,256 

During the six months ended June 30, 2023, certain fully amortized intangible assets of $28 related to non-compete agreements were eliminated from gross intangible assets and accumulated amortization.

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 R29.htm IDEA: XBRL DOCUMENT v3.23.2
Accounts Receivable (Tables)
6 Months Ended
Jun. 30, 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 provision411 
Write-off against allowance(197)
Balance as of June 30, 2023$1,027 
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.23.2
Inventory (Tables)
6 Months Ended
Jun. 30, 2023
Inventory Disclosure [Abstract]  
Schedule of Inventory The Company’s components of inventory as of June 30, 2023 and December 31, 2022 are summarized in the following table:
June 30,
2023
December 31,
2022
Finished goods$48,237 $41,431 
Work-in-process5,304 9,693 
Raw materials25,910 24,597 
Inventories - net$79,451 $75,721 
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.23.2
Long-Term Debt and Related Matters (Tables)
6 Months Ended
Jun. 30, 2023
Debt Disclosure [Abstract]  
Schedule of Long-term Debt Instruments
Long-term debt consisted of the following:
June 30,
2023
December 31,
2022
Revolving credit facility$89,280 $91,567 
Finance leases and financing agreements225 312 
Total89,505 91,879 
Less current maturities(102)(127)
Long-term portion$89,403 $91,752 
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.23.2
Earnings Per Common Share (Tables)
6 Months Ended
Jun. 30, 2023
Earnings Per Share [Abstract]  
Schedule of Earnings Per Share, Basic and Diluted
The following table sets forth the computation of basic and diluted earnings per common share for the periods indicated:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Numerator for basic and diluted earnings per common share:
Net income$3,493 $1,976 $1,322 $390 
Denominator:
Weighted average shares outstanding10,807 10,715 10,800 10,700 
Denominator for basic earnings per common share10,807 10,715 10,800 10,700 
Effect of dilutive securities:
Stock compensation plans71 99 66 109 
Dilutive potential common shares71 99 66 109 
Denominator for diluted earnings per common share - adjusted weighted average shares outstanding10,878 10,814 10,866 10,809 
Basic earnings per common share$0.32 $0.18 $0.12 $0.04 
Diluted earnings per common share$0.32 $0.18 $0.12 $0.04 
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation (Tables)
6 Months Ended
Jun. 30, 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 six months ended June 30, 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 
Granted181,914 — 367,558 11.78 
Vested(88,367)(33,864)— 15.97 
Adjustment for incentive awards expected to vest— — 20,104 15.36 
Outstanding as of June 30, 2023267,720 12,404 496,140 $14.44 
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.23.2
Fair Value Measurements (Tables)
6 Months Ended
Jun. 30, 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
June 30,
2023
Level 1Level 2Level 3December 31,
2022
Level 1Level 2Level 3
Term deposits$17 $17 $— $— $17 $17 $— $— 
Interest rate swaps2,008 — 2,008 — 1,930 — 1,930 — 
Total assets$2,025 $17 $2,008 $— $1,947 $17 $1,930 $— 
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.23.2
Retirement Plans (Tables)
6 Months Ended
Jun. 30, 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
June 30,
Six Months Ended
June 30,
2023202220232022
United States$793 $390 $1,407 $695 
Canada32 45 94 105 
United Kingdom315 379 576 379 
$1,140 $814 $2,077 $1,179 
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 and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$71 $49 $143 $97 
Expected return on plan assets(64)(66)(128)(132)
Recognized net actuarial loss16 18 31 35 
Net periodic pension cost$23 $$46 $— 
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 and six months ended June 30, 2023 and 2022 were as follows:
Three Months Ended
June 30,
Six Months Ended
June 30,
2023202220232022
Interest cost$56 $43 $112 $86 
Expected return on plan assets(84)(76)(168)(152)
Amortization of prior service costs and transition amount12 12 
Recognized net actuarial loss40 80 
Net periodic pension (income) cost$(19)$13 $(38)$26 
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.23.2
Commitments and Contingent Liabilities (Tables)
6 Months Ended
Jun. 30, 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$6,000 
20248,000 
Total$14,000 
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Segment Reporting Information        
Net Sales $ 148,034 $ 131,515 $ 263,522 $ 230,309
Segment Operating Profit 6,349 2,480 6,852 193
Operating Segments        
Segment Reporting Information        
Net Sales 148,034 131,515 263,522 230,309
Segment Operating Profit 9,379 4,635 11,411 2,735
Rail, Technologies, and Services        
Segment Reporting Information        
Net Sales 91,616 81,797 156,000 145,507
Rail, Technologies, and Services | Operating Segments        
Segment Reporting Information        
Net Sales 91,616 81,797 156,000 145,507
Segment Operating Profit 6,627 3,998 9,015 5,037
Precast Concrete Products        
Segment Reporting Information        
Net Sales 33,865 23,611 58,153 38,621
Precast Concrete Products | Operating Segments        
Segment Reporting Information        
Net Sales 33,865 23,611 58,153 38,621
Segment Operating Profit 1,296 (125) 948 (916)
Steel Products and Measurement        
Segment Reporting Information        
Net Sales 22,553 26,107 49,369 46,181
Steel Products and Measurement | Operating Segments        
Segment Reporting Information        
Net Sales 22,553 26,107 49,369 46,181
Segment Operating Profit $ 1,456 $ 762 $ 1,448 $ (1,386)
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]        
Operating profit for reportable segments $ 6,349 $ 2,480 $ 6,852 $ 193
Other (expense) income - net (719) 701 (2,546) 1,264
Income before income taxes 4,056 2,797 1,344 703
Operating Segments        
Segment Reporting, Reconciling Item for Operating Profit (Loss) from Segment to Consolidated [Line Items]        
Operating profit for reportable segments 9,379 4,635 11,411 2,735
Interest expense - net (1,574) (384) (2,962) (754)
Other (expense) income - net (719) 701 (2,546) 1,264
Unallocated corporate expenses and other unallocated charges (3,030) (2,155) (4,559) (2,542)
Income before income taxes $ 4,056 $ 2,797 $ 1,344 $ 703
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments - Reconciliation of Assets from Segment to Consolidated (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Segment Reporting Information    
Assets $ 351,568 $ 365,310
Operating Segments | Rail, Technologies, and Services    
Segment Reporting Information    
Assets 177,515 172,111
Operating Segments | Precast Concrete Products    
Segment Reporting Information    
Assets 104,892 108,598
Operating Segments | Steel Products and Measurement    
Segment Reporting Information    
Assets 38,492 54,516
Unallocated corporate assets    
Segment Reporting Information    
Assets $ 30,669 $ 30,085
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.23.2
Business Segments - Narrative (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2023
Mar. 30, 2023
Jun. 30, 2023
Jun. 30, 2022
Segment Reporting Information        
Proceeds from business dispositions     $ 7,706 $ 1,195
Loss (gain) on asset divestitures     $ 3,074 $ (491)
Rail Products        
Segment Reporting Information        
Proceeds from business dispositions $ 2,368      
Loss (gain) on asset divestitures $ 1,009 $ 2,065    
Coatings and Measurement        
Segment Reporting Information        
Proceeds from business dispositions   $ 5,344    
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Sales by Major Product Line (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Disaggregation of Revenue        
Total net sales $ 148,034 $ 131,515 $ 263,522 $ 230,309
Rail, Technologies, and Services        
Disaggregation of Revenue        
Total net sales 91,616 81,797 156,000 145,507
Precast Concrete Products        
Disaggregation of Revenue        
Total net sales 33,865 23,611 58,153 38,621
Steel Products and Measurement        
Disaggregation of Revenue        
Total net sales 22,553 26,107 49,369 46,181
Rail Products and Global Friction Management | Rail, Technologies, and Services        
Disaggregation of Revenue        
Total net sales 81,926 70,416 137,974 122,067
Technology Services and Solutions | Rail, Technologies, and Services        
Disaggregation of Revenue        
Total net sales 9,690 11,381 18,026 23,440
Precast Concrete Buildings | Precast Concrete Products        
Disaggregation of Revenue        
Total net sales 19,325 15,811 30,211 25,781
Precast Infrastructure Products | Precast Concrete Products        
Disaggregation of Revenue        
Total net sales 14,540 7,800 27,942 12,840
Fabricated Steel Products | Steel Products and Measurement        
Disaggregation of Revenue        
Total net sales 14,854 17,967 25,371 30,571
Coatings and Measurement | Steel Products and Measurement        
Disaggregation of Revenue        
Total net sales $ 7,699 $ 8,140 $ 23,998 $ 15,610
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Timing of Transfer (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Disaggregation of Revenue        
Total net sales $ 148,034 $ 131,515 $ 263,522 $ 230,309
Point in time        
Disaggregation of Revenue        
Total net sales 110,870 95,413 193,832 163,904
Over time        
Disaggregation of Revenue        
Total net sales 37,164 36,102 69,690 66,405
Rail, Technologies, and Services        
Disaggregation of Revenue        
Total net sales 91,616 81,797 156,000 145,507
Rail, Technologies, and Services | Point in time        
Disaggregation of Revenue        
Total net sales 75,923 65,872 129,757 115,038
Rail, Technologies, and Services | Over time        
Disaggregation of Revenue        
Total net sales 15,693 15,925 26,243 30,469
Precast Concrete Products        
Disaggregation of Revenue        
Total net sales 33,865 23,611 58,153 38,621
Precast Concrete Products | Point in time        
Disaggregation of Revenue        
Total net sales 14,540 8,577 27,942 12,840
Precast Concrete Products | Over time        
Disaggregation of Revenue        
Total net sales 19,325 15,034 30,211 25,781
Steel Products and Measurement        
Disaggregation of Revenue        
Total net sales 22,553 26,107 49,369 46,181
Steel Products and Measurement | Point in time        
Disaggregation of Revenue        
Total net sales 20,407 20,964 36,133 36,026
Steel Products and Measurement | Over time        
Disaggregation of Revenue        
Total net sales $ 2,146 $ 5,143 $ 13,236 $ 10,155
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Over Time Sales (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Disaggregation of Revenue        
Over time sales, amount $ 37,164 $ 36,102 $ 69,690 $ 66,405
Over time sales, percentage 25.10% 27.50% 26.40% 28.80%
Over time input method        
Disaggregation of Revenue        
Over time sales, amount $ 15,724 $ 20,089 $ 31,935 $ 39,411
Over time sales, percentage 10.60% 15.30% 12.10% 17.10%
Over time output method        
Disaggregation of Revenue        
Over time sales, amount $ 21,440 $ 16,013 $ 37,755 $ 26,994
Over time sales, percentage 14.50% 12.20% 14.30% 11.70%
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Contract with Customer (Details)
$ in Thousands
6 Months Ended
Jun. 30, 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 4,797
Transfers from contract asset balance to accounts receivable (4,399)
Balance as of June 30, 2023 34,011
Contract With Customer Liability [Roll Forward]  
Balance as of December 31, 2022 6,781
Revenue recognized from contract liabilities (4,049)
Increase in billings in excess of cost, excluding revenue recognized 3,525
Other adjustments, including business divestiture (1,938)
Balance as of June 30, 2023 $ 4,319
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.23.2
Revenue - Remaining Performance Obligation (Details)
$ in Thousands
Jun. 30, 2023
USD ($)
Revenue from Contract with Customer [Abstract]  
Revenue remaining performance obligation $ 290,076
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-07-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction  
Revenue remaining performance obligation (percentage) 12.00%
Revenue, remaining performance obligation, expected timing of satisfaction, period 1 year
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Other Intangible Assets - Schedule of Goodwill (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2023
USD ($)
Goodwill  
Goodwill, beginning balance $ 30,733
Foreign currency translation impact 429
Goodwill, ending balance 31,404
VanHooseCo acquisition  
Goodwill  
VanHooseCo acquisition 242
Rail, Technologies, and Services  
Goodwill  
Goodwill, beginning balance 19,948
Foreign currency translation impact 429
Goodwill, ending balance 20,377
Rail, Technologies, and Services | VanHooseCo acquisition  
Goodwill  
VanHooseCo acquisition 0
Precast Concrete Products  
Goodwill  
Goodwill, beginning balance 10,785
Foreign currency translation impact 0
Goodwill, ending balance 11,027
Precast Concrete Products | VanHooseCo acquisition  
Goodwill  
VanHooseCo acquisition 242
Steel Products and Measurement  
Goodwill  
Goodwill, beginning balance 0
Foreign currency translation impact 0
Goodwill, ending balance 0
Steel Products and Measurement | VanHooseCo acquisition  
Goodwill  
VanHooseCo acquisition $ 0
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Finite-Lived Intangible Assets    
Gross Carrying Value $ 68,610 $ 68,002
Accumulated Amortization (47,354) (44,171)
Net Carrying Amount 21,256 23,831
Non-compete agreements    
Finite-Lived Intangible Assets    
Gross Carrying Value 28 27
Accumulated Amortization (28) (16)
Net Carrying Amount   11
Patents    
Finite-Lived Intangible Assets    
Gross Carrying Value 338 330
Accumulated Amortization (197) (187)
Net Carrying Amount 141 143
Customer relationships    
Finite-Lived Intangible Assets    
Gross Carrying Value 27,656 27,184
Accumulated Amortization (15,828) (14,129)
Net Carrying Amount 11,828 13,055
Trademarks and trade names    
Finite-Lived Intangible Assets    
Gross Carrying Value 7,983 7,933
Accumulated Amortization (4,299) (3,989)
Net Carrying Amount 3,684 3,944
Technology    
Finite-Lived Intangible Assets    
Gross Carrying Value 32,306 32,201
Accumulated Amortization (26,978) (25,827)
Net Carrying Amount 5,328 6,374
Favorable lease    
Finite-Lived Intangible Assets    
Gross Carrying Value 327 327
Accumulated Amortization (52) (23)
Net Carrying Amount $ 275 $ 304
Weighted Average | Non-compete agreements    
Finite-Lived Intangible Assets    
Weighted Average Amortization Period In Years   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 59 R48.htm IDEA: XBRL DOCUMENT v3.23.2
Goodwill and Other Intangible Assets - Narrative (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Finite-Lived Intangible Assets    
Gross Carrying Value $ 68,610 $ 68,002
Accumulated amortization 47,354 44,171
Non-compete agreements    
Finite-Lived Intangible Assets    
Gross Carrying Value 28 27
Accumulated amortization $ 28 $ 16
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.23.2
Accounts Receivable - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Financing Receivable, Allowance for Credit Loss [Line Items]        
Reserve for uncollectible accounts, expense     $ 411  
Selling, General and Administrative Expenses        
Financing Receivable, Allowance for Credit Loss [Line Items]        
Reserve for uncollectible accounts, expense $ 256 $ 150 $ 411 $ 211
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.23.2
Accounts Receivable - Allowance for Credit Losses (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2023
USD ($)
Allowance for Doubtful Accounts  
Allowance for doubtful accounts, beginning balance $ 813
Current period provision 411
Write-off against allowance (197)
Allowance for doubtful accounts, ending balance $ 1,027
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.23.2
Inventory (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Inventory Disclosure [Abstract]    
Finished goods $ 48,237 $ 41,431
Work-in-process 5,304 9,693
Raw materials 25,910 24,597
Inventories - net $ 79,451 $ 75,721
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.23.2
Long-Term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details) - USD ($)
$ in Thousands
Jun. 30, 2023
Dec. 31, 2022
Debt Disclosure [Abstract]    
Revolving credit facility $ 89,280 $ 91,567
Finance leases and financing agreements 225 312
Total 89,505 91,879
Less current maturities (102) (127)
Long-term portion $ 89,403 $ 91,752
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.23.2
Long-Term Debt and Related Matters - Narrative (Details)
Aug. 13, 2021
USD ($)
Jun. 30, 2023
USD ($)
covenant
Dec. 31, 2022
USD ($)
Aug. 12, 2022
Line of Credit Facility        
Minimum leverage ratio       3.5
Line of credit facility, amount outstanding   $ 89,280,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,173,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      
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.23.2
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 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Numerator for basic and diluted earnings per common share:        
Net income $ 3,493 $ 1,976 $ 1,322 $ 390
Denominator:        
Weighted average shares outstanding (in shares) 10,807 10,715 10,800 10,700
Denominator for basic earnings per common share (in shares) 10,807 10,715 10,800 10,700
Effect of dilutive securities:        
Stock compensation plans (in shares) 71 99 66 109
Dilutive potential common shares (in shares) 71 99 66 109
Denominator for diluted earnings per common share - adjusted weighted average shares outstanding (in shares) 10,878 10,814 10,866 10,809
Basic earnings per common share (usd per share) $ 0.32 $ 0.18 $ 0.12 $ 0.04
Diluted earnings per common share (usd per share) $ 0.32 $ 0.18 $ 0.12 $ 0.04
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.23.2
Income Taxes (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Income Tax Disclosure [Abstract]        
Income tax expense (benefit) $ 563 $ 821 $ 22 $ 313
Income before income taxes $ 4,056 $ 2,797 $ 1,344 $ 703
Effective income tax rate (percent) 13.90% 29.40% 1.60% 44.50%
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Share-based Compensation Arrangement by Share-based Payment Award        
Stock-based compensation     $ 1,829 $ 1,183
Expected cost on shares expected to vest $ 7,026   $ 7,026  
Recognition period for compensation expense not yet recognized     2 years 8 months 12 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       1,183
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 $ 945 $ 925 $ 1,829 $ 1,183
Vesting period     3 years  
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.23.2
Stock-Based Compensation - Restricted Stock and Performance Share Units (Details)
6 Months Ended
Jun. 30, 2023
$ / shares
shares
Weighted Average Grant Date Fair Value  
Outstanding, Beginning balance (usd per share) | $ / shares $ 17.77
Granted (usd per share) | $ / shares 11.78
Vested (usd per share) | $ / shares 15.97
Adjustment for incentive awards expected to vest (usd per share) | $ / shares 15.36
Outstanding, Ending balance (usd per share) | $ / shares $ 14.44
Restricted Stock  
Restricted Stock, Deferred Stock Units and Performance Share Units  
Outstanding, Beginning balance (in shares) 174,173
Granted (in shares) 181,914
Vested (in shares) (88,367)
Adjustment for incentive awards expected to vest (in shares) 0
Outstanding, Ending balance (in shares) 267,720
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) (33,864)
Adjustment for incentive awards expected to vest (in shares) 0
Outstanding, Ending balance (in shares) 12,404
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 R58.htm IDEA: XBRL DOCUMENT v3.23.2
Fair Value Measurements - Narrative (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Dec. 31, 2022
Aug. 31, 2022
Aug. 12, 2022
Dec. 31, 2021
Fair Value, Balance Sheet Grouping, Financial Statement Captions                
Derivative Liability, Statement of Financial Position [Extensible Enumeration]         Other accrued liabilities     Other accrued liabilities
Interest expense $ 1,574 $ 384 $ 2,962 $ 754        
Swap                
Fair Value, Balance Sheet Grouping, Financial Statement Captions                
Derivative, notional amount             $ 20,000  
Interest income $ 295 $ 19 $ 540          
Interest expense       $ 78        
Swap 2                
Fair Value, Balance Sheet Grouping, Financial Statement Captions                
Derivative, notional amount           $ 20,000    
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.23.2
Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details) - USD ($)
$ in Thousands
6 Months Ended 12 Months Ended
Jun. 30, 2023
Dec. 31, 2022
Fair Value, Balance Sheet Grouping, Financial Statement Captions    
Term deposits $ 17 $ 17
Interest rate swaps $ 2,008 $ 1,930
Derivative Asset Statement Of Financial Position Extensible Enumeration Not Disclosed Flag Interest rate swaps Interest rate swaps
Total assets $ 2,025 $ 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 2,008 1,930
Total assets 2,008 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 71 R60.htm IDEA: XBRL DOCUMENT v3.23.2
Retirement Plans - Narrative (Details)
$ in Thousands
6 Months Ended
Jun. 30, 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, contributions by employer | $ $ 176
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, contributions by employer | $ $ 170
Defined benefit plan, expected future employer contributions, current fiscal year | $ $ 340
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.23.2
Retirement Plans - Schedule of Net Benefit Costs (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
United States        
Defined Benefit Plan Disclosure        
Interest cost $ 71 $ 49 $ 143 $ 97
Expected return on plan assets (64) (66) (128) (132)
Recognized net actuarial loss 16 18 31 35
Net periodic pension (income) cost 23 1 46 0
United Kingdom        
Defined Benefit Plan Disclosure        
Interest cost 56 43 112 86
Expected return on plan assets (84) (76) (168) (152)
Amortization of prior service costs and transition amount 6 6 12 12
Recognized net actuarial loss 3 40 6 80
Net periodic pension (income) cost $ (19) $ 13 $ (38) $ 26
XML 73 R62.htm IDEA: XBRL DOCUMENT v3.23.2
Retirement Plans - Schedule of Costs of Retirement Plans (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Jun. 30, 2023
Jun. 30, 2022
Jun. 30, 2023
Jun. 30, 2022
Defined Contribution Plan Disclosure        
Expenses associated with contributions made $ 1,140 $ 814 $ 2,077 $ 1,179
United States        
Defined Contribution Plan Disclosure        
Expenses associated with contributions made 793 390 1,407 695
Canada        
Defined Contribution Plan Disclosure        
Expenses associated with contributions made 32 45 94 105
United Kingdom        
Defined Contribution Plan Disclosure        
Expenses associated with contributions made $ 315 $ 379 $ 576 $ 379
XML 74 R63.htm IDEA: XBRL DOCUMENT v3.23.2
Commitments and Contingent Liabilities - Narrative (Details)
$ in Thousands
6 Months Ended
Mar. 13, 2019
USD ($)
Jun. 30, 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   $ 14,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,447 $ 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 R64.htm IDEA: XBRL DOCUMENT v3.23.2
Commitments and Contingent Liabilities - Future Payments (Details)
$ in Thousands
6 Months Ended
Jun. 30, 2023
USD ($)
Commitments and Contingencies Disclosure [Abstract]  
Remainder of 2023 $ 6,000
2024 8,000
Total $ 14,000
XML 76 fstr-20230630_htm.xml IDEA: XBRL DOCUMENT 0000352825 2023-01-01 2023-06-30 0000352825 2023-08-01 0000352825 2023-06-30 0000352825 2022-12-31 0000352825 us-gaap:ProductMember 2023-04-01 2023-06-30 0000352825 us-gaap:ProductMember 2022-04-01 2022-06-30 0000352825 us-gaap:ProductMember 2023-01-01 2023-06-30 0000352825 us-gaap:ProductMember 2022-01-01 2022-06-30 0000352825 us-gaap:ServiceMember 2023-04-01 2023-06-30 0000352825 us-gaap:ServiceMember 2022-04-01 2022-06-30 0000352825 us-gaap:ServiceMember 2023-01-01 2023-06-30 0000352825 us-gaap:ServiceMember 2022-01-01 2022-06-30 0000352825 2023-04-01 2023-06-30 0000352825 2022-04-01 2022-06-30 0000352825 2022-01-01 2022-06-30 0000352825 2021-12-31 0000352825 2022-06-30 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 2023-03-31 0000352825 us-gaap:RetainedEarningsMember 2023-04-01 2023-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2023-04-01 2023-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-04-01 2023-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2023-04-01 2023-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2023-04-01 2023-06-30 0000352825 us-gaap:CommonStockMember 2023-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2023-06-30 0000352825 us-gaap:RetainedEarningsMember 2023-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2023-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2023-06-30 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 2022-03-31 0000352825 us-gaap:RetainedEarningsMember 2022-04-01 2022-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2022-04-01 2022-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-04-01 2022-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-04-01 2022-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2022-04-01 2022-06-30 0000352825 us-gaap:CommonStockMember 2022-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0000352825 us-gaap:RetainedEarningsMember 2022-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2022-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2022-06-30 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-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2023-01-01 2023-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-01-01 2023-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2023-01-01 2023-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2023-01-01 2023-06-30 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-06-30 0000352825 us-gaap:NoncontrollingInterestMember 2022-01-01 2022-06-30 0000352825 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-06-30 0000352825 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-06-30 0000352825 us-gaap:TreasuryStockCommonMember 2022-01-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-04-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-04-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2023-04-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2022-04-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2023-04-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2022-04-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember 2023-04-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember 2022-04-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember 2023-01-01 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember 2022-01-01 2022-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-12-31 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:PrecastConcreteProductsMember 2022-12-31 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2023-06-30 0000352825 us-gaap:OperatingSegmentsMember fstr:SteelProductsAndMeasurementMember 2022-12-31 0000352825 us-gaap:CorporateNonSegmentMember 2023-06-30 0000352825 us-gaap:CorporateNonSegmentMember 2022-12-31 0000352825 fstr:RailProductsBusinessUnitMember 2023-06-30 2023-06-30 0000352825 fstr:CoatingsAndMeasurementMember 2023-03-30 2023-03-30 0000352825 fstr:RailProductsBusinessUnitMember 2023-03-30 2023-03-30 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2023-04-01 2023-06-30 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2022-04-01 2022-06-30 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-06-30 0000352825 fstr:RailProductsAndFrictionManagementMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-06-30 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-04-01 2023-06-30 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-04-01 2022-06-30 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-06-30 0000352825 fstr:RailTechnologiesProductsMember fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2023-04-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2022-04-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2022-01-01 2022-06-30 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2023-04-01 2023-06-30 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2022-04-01 2022-06-30 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-06-30 0000352825 fstr:PrecastConcreteBuildingsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-06-30 0000352825 fstr:PrecastInfrastructureProductsMember fstr:PrecastConcreteProductsMember 2023-04-01 2023-06-30 0000352825 fstr:PrecastInfrastructureProductsMember fstr:PrecastConcreteProductsMember 2022-04-01 2022-06-30 0000352825 fstr:PrecastInfrastructureProductsMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-06-30 0000352825 fstr:PrecastInfrastructureProductsMember fstr:PrecastConcreteProductsMember 2022-01-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember 2023-04-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember 2022-04-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember 2023-01-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember 2022-01-01 2022-06-30 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2023-04-01 2023-06-30 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2022-04-01 2022-06-30 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-06-30 0000352825 fstr:FabricatedSteelProductsMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-06-30 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2023-04-01 2023-06-30 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2022-04-01 2022-06-30 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-06-30 0000352825 fstr:CoatingsAndMeasurementMember fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember 2023-04-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember 2022-04-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember 2022-01-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000352825 us-gaap:TransferredAtPointInTimeMember 2023-04-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000352825 us-gaap:TransferredOverTimeMember 2023-04-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000352825 us-gaap:TransferredAtPointInTimeMember 2022-04-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000352825 us-gaap:TransferredOverTimeMember 2022-04-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000352825 us-gaap:TransferredAtPointInTimeMember 2023-01-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000352825 us-gaap:TransferredOverTimeMember 2023-01-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000352825 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000352825 fstr:PrecastConcreteProductsMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000352825 fstr:SteelProductsAndMeasurementMember us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000352825 us-gaap:TransferredOverTimeMember 2022-01-01 2022-06-30 0000352825 fstr:OverTimeInputMethodMember 2023-04-01 2023-06-30 0000352825 fstr:OverTimeInputMethodMember 2022-04-01 2022-06-30 0000352825 fstr:OverTimeOutputMethodMember 2023-04-01 2023-06-30 0000352825 fstr:OverTimeOutputMethodMember 2022-04-01 2022-06-30 0000352825 fstr:OverTimeInputMethodMember 2023-01-01 2023-06-30 0000352825 fstr:OverTimeInputMethodMember 2022-01-01 2022-06-30 0000352825 fstr:OverTimeOutputMethodMember 2023-01-01 2023-06-30 0000352825 fstr:OverTimeOutputMethodMember 2022-01-01 2022-06-30 0000352825 2023-07-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2022-12-31 0000352825 fstr:PrecastConcreteProductsMember 2022-12-31 0000352825 fstr:SteelProductsAndMeasurementMember 2022-12-31 0000352825 fstr:VanHooseCoEnterprisesLtdMember fstr:RailTechnologiesAndServicesSegmentMember 2023-01-01 2023-06-30 0000352825 fstr:VanHooseCoEnterprisesLtdMember fstr:PrecastConcreteProductsMember 2023-01-01 2023-06-30 0000352825 fstr:VanHooseCoEnterprisesLtdMember fstr:SteelProductsAndMeasurementMember 2023-01-01 2023-06-30 0000352825 fstr:VanHooseCoEnterprisesLtdMember 2023-01-01 2023-06-30 0000352825 fstr:RailTechnologiesAndServicesSegmentMember 2023-06-30 0000352825 fstr:PrecastConcreteProductsMember 2023-06-30 0000352825 fstr:SteelProductsAndMeasurementMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:PatentsMember 2023-06-30 0000352825 us-gaap:PatentsMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:CustomerRelationshipsMember 2023-06-30 0000352825 us-gaap:CustomerRelationshipsMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:TrademarksAndTradeNamesMember 2023-06-30 0000352825 us-gaap:TrademarksAndTradeNamesMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:TechnologyBasedIntangibleAssetsMember 2023-06-30 0000352825 us-gaap:TechnologyBasedIntangibleAssetsMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:OffMarketFavorableLeaseMember 2023-06-30 0000352825 us-gaap:OffMarketFavorableLeaseMember 2023-06-30 0000352825 us-gaap:NoncompeteAgreementsMember 2023-06-30 0000352825 srt:WeightedAverageMember us-gaap:NoncompeteAgreementsMember 2022-12-31 0000352825 us-gaap:NoncompeteAgreementsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:PatentsMember 2022-12-31 0000352825 us-gaap:PatentsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:CustomerRelationshipsMember 2022-12-31 0000352825 us-gaap:CustomerRelationshipsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:TrademarksAndTradeNamesMember 2022-12-31 0000352825 us-gaap:TrademarksAndTradeNamesMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0000352825 us-gaap:TechnologyBasedIntangibleAssetsMember 2022-12-31 0000352825 srt:WeightedAverageMember us-gaap:OffMarketFavorableLeaseMember 2022-12-31 0000352825 us-gaap:OffMarketFavorableLeaseMember 2022-12-31 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-04-01 2023-06-30 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-04-01 2022-06-30 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2023-01-01 2023-06-30 0000352825 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-06-30 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 fstr:FourthAmendedAndRestatedCreditAgreementMember us-gaap:DebtInstrumentRedemptionPeriodOneMember fstr:PNCBankNACitizensBankNAWellsFargoBankNationalAssociationBankOfAmericaNAAndBMOHarrisBankNationalAssociationMember 2023-06-30 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-06-30 0000352825 us-gaap:PerformanceSharesMember 2023-04-01 2023-06-30 0000352825 us-gaap:PerformanceSharesMember 2022-04-01 2022-06-30 0000352825 us-gaap:PerformanceSharesMember 2023-01-01 2023-06-30 0000352825 us-gaap:PerformanceSharesMember 2022-01-01 2022-06-30 0000352825 us-gaap:RestrictedStockMember 2022-01-01 2022-06-30 0000352825 us-gaap:RestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheOneMember 2023-01-01 2023-06-30 0000352825 srt:MinimumMember us-gaap:RestrictedStockMember us-gaap:ShareBasedCompensationAwardTrancheTwoMember 2023-01-01 2023-06-30 0000352825 srt:DirectorMember 2023-01-01 2023-06-30 0000352825 us-gaap:RestrictedStockMember 2022-12-31 0000352825 fstr:DeferredStockUnitsMember 2022-12-31 0000352825 us-gaap:PerformanceSharesMember 2022-12-31 0000352825 us-gaap:RestrictedStockMember 2023-01-01 2023-06-30 0000352825 fstr:DeferredStockUnitsMember 2023-01-01 2023-06-30 0000352825 us-gaap:RestrictedStockMember 2023-06-30 0000352825 fstr:DeferredStockUnitsMember 2023-06-30 0000352825 us-gaap:PerformanceSharesMember 2023-06-30 0000352825 us-gaap:SwapMember 2022-08-12 0000352825 fstr:Swap2Member 2022-08-31 0000352825 us-gaap:FairValueInputsLevel1Member 2023-06-30 0000352825 us-gaap:FairValueInputsLevel2Member 2023-06-30 0000352825 us-gaap:FairValueInputsLevel3Member 2023-06-30 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-04-01 2023-06-30 0000352825 us-gaap:SwapMember 2022-04-01 2022-06-30 0000352825 us-gaap:SwapMember 2023-01-01 2023-06-30 0000352825 us-gaap:SwapMember 2022-01-01 2022-06-30 0000352825 country:US 2023-01-01 2023-06-30 0000352825 country:CA 2023-01-01 2023-06-30 0000352825 country:GB 2023-01-01 2023-06-30 0000352825 country:US 2023-04-01 2023-06-30 0000352825 country:US 2022-04-01 2022-06-30 0000352825 country:US 2022-01-01 2022-06-30 0000352825 country:US 2023-06-30 0000352825 country:GB 2023-04-01 2023-06-30 0000352825 country:GB 2022-04-01 2022-06-30 0000352825 country:GB 2022-01-01 2022-06-30 0000352825 country:GB 2023-06-30 0000352825 us-gaap:PensionPlansDefinedBenefitMember 2023-01-01 2023-06-30 0000352825 country:CA 2023-04-01 2023-06-30 0000352825 country:CA 2022-04-01 2022-06-30 0000352825 country:CA 2022-01-01 2022-06-30 0000352825 fstr:UPRRMember 2019-03-13 2019-03-13 0000352825 fstr:UPRRMember 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 Q2 0000352825 --12-31 P1Y http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent http://fasb.org/us-gaap/2023#AccruedLiabilitiesCurrent 10-Q true 2023-06-30 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 11091020 3880000 2882000 74249000 82455000 34011000 33613000 79451000 75721000 12182000 11061000 203773000 205732000 76948000 85344000 15770000 17291000 31404000 30733000 21256000 23831000 0 24000 2417000 2355000 351568000 365310000 43933000 48782000 15969000 19452000 8709000 10558000 8000000 8000000 102000 127000 14928000 16192000 91641000 103111000 89403000 91752000 1718000 3109000 6000000 8000000 12669000 14163000 7545000 7577000 0.01 0.01 20000000 20000000 11115779 11115779 10816902 10776827 111000 111000 40919000 41303000 124548000 123169000 298877 338952 4846000 6240000 -18536000 -21165000 142196000 137178000 396000 420000 142592000 137598000 351568000 365310000 132167000 116584000 230705000 201005000 15867000 14931000 32817000 29304000 148034000 131515000 263522000 230309000 101069000 95331000 179134000 165176000 14713000 12891000 28845000 25393000 115782000 108222000 207979000 190569000 32252000 23293000 55543000 39740000 24528000 19394000 45951000 36692000 1375000 1419000 2740000 2855000 6349000 2480000 6852000 193000 1574000 384000 2962000 754000 -719000 701000 -2546000 1264000 4056000 2797000 1344000 703000 563000 821000 22000 313000 3493000 1976000 1322000 390000 -38000 -34000 -57000 -54000 3531000 2010000 1379000 444000 0.32 0.18 0.12 0.04 0.32 0.18 0.12 0.04 3493000 1976000 1322000 390000 1252000 -3688000 2503000 -4568000 0 50000 0 238000 496000 147000 78000 698000 0 0 0 -66000 0 0 0 -93000 2000 16000 4000 32000 41000 50000 81000 99000 5282000 -1515000 3984000 -3288000 -38000 -34000 -57000 -54000 29000 -61000 33000 24000 -9000 -95000 -24000 -30000 5291000 -1420000 4008000 -3258000 1322000 390000 -1710000 -173000 4989000 3814000 2740000 2855000 -16000 -87000 366000 214000 1829000 1183000 -3074000 491000 -6584000 17327000 3033000 -2190000 13068000 10695000 1251000 3573000 865000 -1715000 465000 9347000 627000 5301000 -1885000 -2943000 2000000 2000000 -941000 -1748000 172000 -926000 -3333000 -13382000 539000 237000 1495000 3048000 7706000 1195000 -966000 5712000 7716000 -7328000 95251000 78093000 92331000 96970000 977000 401000 334000 0 -3563000 18476000 178000 -477000 998000 -2711000 2882000 10372000 3880000 7661000 2889000 662000 -331000 389000 111000 40951000 121017000 -5174000 -20296000 405000 137014000 3531000 -38000 3493000 -41000 -41000 1223000 29000 1252000 496000 496000 51241 662000 662000 58432 -977000 990000 13000 945000 945000 111000 40919000 124548000 -4846000 -18536000 396000 142592000 111000 42153000 167167000 -9200000 -19117000 583000 181697000 2010000 -34000 1976000 -50000 -50000 -3627000 -61000 -3688000 147000 147000 26167 -877000 809000 -68000 925000 925000 111000 42201000 169177000 -8391000 -22547000 488000 181039000 111000 41303000 123169000 -6240000 -21165000 420000 137598000 1379000 -57000 1322000 -81000 -81000 2470000 33000 2503000 78000 78000 51241 662000 662000 91316 -2213000 2056000 -157000 1829000 1829000 111000 40919000 124548000 -4846000 -18536000 396000 142592000 111000 43272000 168733000 -10179000 -18845000 518000 183610000 444000 -54000 390000 -99000 -99000 -4592000 24000 -4568000 698000 698000 -93000 -93000 60607 -2254000 1788000 -466000 1183000 1183000 111000 42201000 169177000 -8391000 -22547000 488000 181039000 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 and six months ended June 30, 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 and six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">6,627 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">81,797 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">3,998 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">33,865 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,296 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,611 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(125)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">22,553 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,456 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,107 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">762 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">148,034 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">9,379 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">131,515 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">4,635 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">9,015 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">145,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">5,037 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">58,153 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">948 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">38,621 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(916)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">49,369 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,448 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">46,181 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,386)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">263,522 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">11,411 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">230,309 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,735 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></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 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 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><td style="width:51.538%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.633%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">Operating profit for reportable segments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">9,379 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,635 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,735 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,574)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(384)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(754)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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><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%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">701 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,546)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,264 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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><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,030)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,155)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,559)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,542)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">4,056 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,797 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">1,344 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">703 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></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><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">177,515 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,892 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,492 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,669 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">351,568 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></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 June 30, 2023, the Company sold substantially all the operating assets of the prestressed concrete railroad tie business operated by its wholly-owned subsidiary, CXT Incorporated (“Ties”), located in Spokane, WA, for $2,368 in proceeds, subject to final working capital adjustments, generating a $1,009 loss on the sale, which was recorded in “Other expense (income) - net”. The Ties business was reported in the Rail Products business unit within the Rail, Technologies, and Services segment.</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 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,065 loss on the sale, which was 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">6,627 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">81,797 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">3,998 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">33,865 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,296 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,611 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(125)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">22,553 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,456 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,107 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">762 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">148,034 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">9,379 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">131,515 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">4,635 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">9,015 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">145,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">5,037 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">58,153 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">948 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">38,621 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(916)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">49,369 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,448 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">46,181 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,386)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">263,522 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">11,411 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">230,309 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,735 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 91616000 6627000 81797000 3998000 33865000 1296000 23611000 -125000 22553000 1456000 26107000 762000 148034000 9379000 131515000 4635000 156000000 9015000 145507000 5037000 58153000 948000 38621000 -916000 49369000 1448000 46181000 -1386000 263522000 11411000 230309000 2735000 <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 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><td style="width:51.538%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.633%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">Operating profit for reportable segments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">9,379 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,635 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,735 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,574)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(384)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(754)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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><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%">(719)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">701 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,546)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,264 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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><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,030)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,155)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,559)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,542)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Income before income taxes</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">4,056 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,797 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">1,344 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">703 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 9379000 4635000 11411000 2735000 -1574000 -384000 -2962000 -754000 -719000 701000 -2546000 1264000 3030000 2155000 4559000 2542000 4056000 2797000 1344000 703000 <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><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">177,515 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,892 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Steel Products and Measurement</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,492 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,669 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">351,568 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table> 177515000 172111000 104892000 108598000 38492000 54516000 30669000 30085000 351568000 365310000 2368000 -1009000 5344000 -2065000 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">Rail Products and Global Friction Management</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">81,926 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">70,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">137,974 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">122,067 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,381 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">18,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,440 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;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><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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,797 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">19,325 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,811 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,211 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,781 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Infrastructure Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">7,800 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,942 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,840 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align: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><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%">33,865 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,611 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58,153 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,621 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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><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,854 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,967 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,371 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,571 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,699 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,140 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,998 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align: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><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%">22,553 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,107 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,181 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">148,034 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">131,515 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">263,522 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">230,309 </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></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 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><td style="width:44.227%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.875%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended June 30, 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">75,923 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">14,540 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,407 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">110,870 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,693 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">19,325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,146 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">37,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">33,865 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">22,553 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">148,034 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">65,872 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">8,577 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,964 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">95,413 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,925 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,034 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,102 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">81,797 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">23,611 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">26,107 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">131,515 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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:99.583%"><tr><td style="width:1.0%"></td><td style="width:44.227%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.875%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended June 30, 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">129,757 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,942 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">193,832 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">26,243 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,211 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">13,236 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">69,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">58,153 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">263,522 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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,038 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">12,840 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,026 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,904 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,469 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">25,781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,405 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-color:#cceeff;border-bottom:3pt double #000;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 #000;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%">145,507 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #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%">38,621 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">46,181 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">230,309 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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 at times 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. The Company’s revenue recognized over time under long-term agreements is also at times recognized using an output method, specifically units delivered, based upon certain customer acceptance and delivery requirements. The use of an input or an output measure to recognize revenue is determined based on what is most appropriate given the nature of the work performed and terms of the associated agreement.</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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Three Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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,724 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,089 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.3 </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><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%">21,440 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,013 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.5 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">37,164 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,102 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.1 </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><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%">27.5 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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%">31,935 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">39,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.1 </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><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%">17.1 </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><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%">37,755 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">26,994 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">69,690 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">66,405 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.4 </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><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.8 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'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><td style="width:84.872%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.234%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Net additions to contract assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,797 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">(4,399)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">34,011 </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></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><td style="width:84.872%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.234%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Revenue recognized from contract liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,049)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,525 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,938)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of June 30, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">4,319 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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 June 30, 2023, the Company had approximately $290,076 of obligations under new contracts and remaining performance obligations, which is also referred to as backlog. Approximately 12.0% of the June 30, 2023 backlog was related to projects that are anticipated to extend beyond June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">Rail Products and Global Friction Management</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">81,926 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">70,416 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">137,974 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">122,067 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,381 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">18,026 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,440 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;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><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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">81,797 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">145,507 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">19,325 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15,811 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,211 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,781 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Precast Infrastructure Products</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,540 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">7,800 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,942 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,840 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 7pt;text-align: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><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%">33,865 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,611 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58,153 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,621 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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><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,854 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,967 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,371 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,571 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,699 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,140 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,998 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,610 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 7pt;text-align: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><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%">22,553 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,107 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,181 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">148,034 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">131,515 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">263,522 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">230,309 </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></tr></table></div> 81926000 70416000 137974000 122067000 9690000 11381000 18026000 23440000 91616000 81797000 156000000 145507000 19325000 15811000 30211000 25781000 14540000 7800000 27942000 12840000 33865000 23611000 58153000 38621000 14854000 17967000 25371000 30571000 7699000 8140000 23998000 15610000 22553000 26107000 49369000 46181000 148034000 131515000 263522000 230309000 <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><td style="width:44.227%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.875%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended June 30, 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">75,923 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">14,540 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,407 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">110,870 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,693 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">19,325 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,146 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">37,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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,616 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">33,865 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">22,553 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">148,034 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">65,872 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">8,577 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,964 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">95,413 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,925 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,034 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,143 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,102 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">81,797 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">23,611 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">26,107 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">131,515 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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:99.583%"><tr><td style="width:1.0%"></td><td style="width:44.227%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.870%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.497%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.875%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended June 30, 2023</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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%">129,757 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,942 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,133 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">193,832 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">26,243 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,211 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">13,236 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">69,690 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">156,000 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">58,153 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,369 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">263,522 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:15pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended June 30, 2022</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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,038 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">12,840 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,026 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,904 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,469 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">25,781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,155 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,405 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-color:#cceeff;border-bottom:3pt double #000;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 #000;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%">145,507 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #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%">38,621 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">46,181 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">230,309 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Three Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align: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><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><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><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><td style="background-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,724 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,089 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10.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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15.3 </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><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%">21,440 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,013 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.5 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.2 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">37,164 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">36,102 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25.1 </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><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%">27.5 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Percentage of Total Net Sales <br/>Six Months Ended June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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%">31,935 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">39,411 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12.1 </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><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%">17.1 </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><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%">37,755 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">26,994 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.7 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">69,690 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">66,405 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26.4 </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><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.8 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 75923000 14540000 20407000 110870000 15693000 19325000 2146000 37164000 91616000 33865000 22553000 148034000 65872000 8577000 20964000 95413000 15925000 15034000 5143000 36102000 81797000 23611000 26107000 131515000 129757000 27942000 36133000 193832000 26243000 30211000 13236000 69690000 156000000 58153000 49369000 263522000 115038000 12840000 36026000 163904000 30469000 25781000 10155000 66405000 145507000 38621000 46181000 230309000 15724000 20089000 0.106 0.153 21440000 16013000 0.145 0.122 37164000 36102000 0.251 0.275 31935000 39411000 0.121 0.171 37755000 26994000 0.143 0.117 69690000 66405000 0.264 0.288 <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><td style="width:84.872%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.234%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Net additions to contract assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,797 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">(4,399)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">34,011 </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></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><td style="width:84.872%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.234%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Revenue recognized from contract liabilities</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4,049)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,525 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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,938)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance as of June 30, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">4,319 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 33613000 4797000 4399000 34011000 6781000 4049000 3525000 1938000 4319000 290076000 0.12 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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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%">VanHooseCo acquisition</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">242 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">242 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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:#cceeff;padding:0 1pt"></td><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%">429 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">429 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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 June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,377 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">11,027 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">31,404 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table><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 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 June 30, 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 style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">As of June 30, 2023 and December 31, 2022, the components of the Company’s intangible assets 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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><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%">June 30, 2023</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="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%">Patents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">338 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">(197)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,656 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,828)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,828 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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:#cceeff;padding:0 1pt"></td><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><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%">7,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(4,299)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,684 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,306 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(26,978)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,328 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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:#cceeff;padding:0 1pt"></td><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%">6</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(52)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">275 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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%">68,610 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(47,354)</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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">21,256 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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%">During the six months ended June 30, 2023, certain fully amortized intangible assets of $28 related to non-compete agreements were eliminated from gross intangible assets and accumulated amortization.</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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table></div>On June 21, 2022, the Company acquired the stock of Skratch Enterprises Ltd. (“Skratch”). On August 12, 2022, the Company acquired the operating assets of VanHooseCo Precast LLC (“VanHooseCo”). As of June 30, 2023, the purchase accounting for these transactions is final. 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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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%">VanHooseCo acquisition</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">242 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">242 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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:#cceeff;padding:0 1pt"></td><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%">429 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">429 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding: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 June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">20,377 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">11,027 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">31,404 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table> 19948000 10785000 0 30733000 0 242000 0 242000 429000 0 0 429000 20377000 11027000 0 31404000 <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 June 30, 2023 and December 31, 2022, the components of the Company’s intangible assets 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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><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%">June 30, 2023</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="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%">Patents</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">338 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">(197)</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">141 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,656 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,828)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,828 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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:#cceeff;padding:0 1pt"></td><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><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%">7,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(4,299)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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,684 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Technology</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">32,306 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(26,978)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,328 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align: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:#cceeff;padding:0 1pt"></td><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%">6</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">327 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(52)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">275 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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%">68,610 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(47,354)</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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">21,256 </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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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%">During the six months ended June 30, 2023, certain fully amortized intangible assets of $28 related to non-compete agreements were eliminated from gross intangible assets and accumulated amortization.</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><td style="width:45.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.816%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.821%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Technology</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align: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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table></div> P10Y 338000 197000 141000 P16Y 27656000 15828000 11828000 P16Y 7983000 4299000 3684000 P14Y 32306000 26978000 5328000 P6Y 327000 52000 275000 68610000 47354000 21256000 28000 28000 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 $256 and $150 for the three months ended June 30, 2023 and 2022, respectively, and an expense of $411 and $211 for the six months ended June 30, 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><td style="width:85.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.818%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Current period provision</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">411 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">(197)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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 June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,027 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 256000 150000 411000 211000 <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><td style="width:85.427%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.818%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></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%">Current period provision</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">411 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">(197)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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 June 30, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,027 </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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 813000 411000 197000 1027000 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 June 30, 2023 and December 31, 2022 are summarized in the following table:</span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">48,237 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,910 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">79,451 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table></div> The Company’s components of inventory as of June 30, 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><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">48,237 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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,304 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,910 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">79,451 </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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table> 48237000 41431000 5304000 9693000 25910000 24597000 79451000 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><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">89,280 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">225 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89,505 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">(102)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Long-term portion</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">89,403 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></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 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 acquisition of VanHooseCo Precast, LLC (“VanHooseCo”) 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.50 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 June 30, 2023, the Company was in compliance with the covenants in the Credit Agreement, as amended, and had outstanding letters of credit of approximately $1,173.</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><td style="width:75.288%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.013%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td style="background-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%">89,280 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">225 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">89,505 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">(102)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></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%">Long-term portion</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">89,403 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr></table></div> 89280000 91567000 225000 312000 89505000 91879000 102000 127000 89403000 91752000 P5Y 130000000 25000000 50000000 2 3.25 3.5 1.05 3.5 1173000 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 earnings 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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 earnings per common share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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 income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">3,493 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,976 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,322 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">390 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,807 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,715 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,800 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,700 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic earnings per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,807 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,715 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,800 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,700 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Stock compensation plans</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">99 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">66 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">109 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dilutive potential common shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for diluted earnings per common share - adjusted weighted average shares outstanding</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,878 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,814 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,866 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,809 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Basic earnings per common share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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.32 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.18 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.12 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.04 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Diluted earnings per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.32 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.18 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.04 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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%">The following table sets forth the computation of basic and diluted earnings 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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 earnings per common share:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 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 income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">3,493 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,976 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,322 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">390 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 37pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average shares outstanding</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,807 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,715 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,800 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,700 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for basic earnings per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,807 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,715 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,800 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,700 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Effect of dilutive securities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 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%">Stock compensation plans</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">99 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">66 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">109 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Dilutive potential common shares</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">71 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">99 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">66 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">109 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Denominator for diluted earnings per common share - adjusted weighted average shares outstanding</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,878 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,814 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,866 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,809 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Basic earnings per common share</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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.32 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.18 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.12 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top: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-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.04 </span></td><td style="background-color:#ffffff;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Diluted earnings per common share</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.32 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.18 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.12 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top: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-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.04 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:3pt double #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 3493000 1976000 1322000 390000 10807000 10715000 10800000 10700000 10807000 10715000 10800000 10700000 71000 99000 66000 109000 71000 99000 66000 109000 10878000 10814000 10866000 10809000 0.32 0.18 0.12 0.04 0.32 0.18 0.12 0.04 Income TaxesFor the three months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $563 and $821, respectively, on pre-tax income of $4,056 and $2,797, respectively, for an effective income tax rate of 13.9% and 29.4%, respectively. For the six months ended June 30, 2023 and 2022, the Company recorded an income tax expense of $22 and $313, respectively, on pre-tax income of $1,344 and $703, respectively, for an effective income tax rate of 1.6% and 44.5%, respectively. The Company's effective income tax rate for the three and six months ended June 30, 2023 differed from the federal statutory rate of 21% primarily due to the realization of a portion of its U.S. deferred tax assets previously offset by a valuation allowance. The Company continues 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. 563000 821000 4056000 2797000 0.139 0.294 22000 313000 1344000 703000 0.016 0.445 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 $945 and $925 for the three months ended June 30, 2023 and 2022, respectively, and $1,829 and $1,183 for the six months ended June 30, 2023 and 2022, respectively, related to restricted stock awards and performance unit awards. As of June 30, 2023, unrecognized compensation expense for awards that the Company expects to vest approximated $7,026. The Company will recognize this unrecognized compensation expense over the upcoming 2.7 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 </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%">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><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%">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 six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">181,914 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.78 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><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><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%">(88,367)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(33,864)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">15.97 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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 June 30, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">267,720 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,404 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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.44 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 945000 925000 1829000 1183000 1183000 7026000 P2Y8M12D P3Y P1Y P3Y P6M The following table summarizes the restricted stock, deferred stock units, and performance-based stock and share unit activity for the six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">181,914 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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.78 </span></td><td style="background-color:#ffffff;border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><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><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%">(88,367)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">(33,864)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">15.97 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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 June 30, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">267,720 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,404 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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.44 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table> 174173 46268 108478 17.77 181914 0 367558 11.78 88367 33864 0 15.97 0 0 20104 15.36 267720 12404 496140 14.44 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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Cash equivalents -</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> Included in “Cash and cash equivalents” within the Condensed Consolidated Balance Sheets are investments in non-domestic term deposits. The carrying amounts approximate fair value because of the short maturity of the instruments.</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-style:italic;font-weight:400;line-height:120%">SOFR-based interest rate swaps</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> - To reduce the impact of interest rate changes on outstanding variable-rate debt, the Company amended and entered into forward-starting SOFR-based interest rate swaps with notional values totaling $20,000 and $20,000 effective August 12, 2022 and August 31, 2022, respectively. The fair value of the interest rate swaps are based on market-observable forward interest rates and represents the estimated amount that the Company would pay to terminate the agreements. As such, the swap agreements are classified as Level 2 within the fair value hierarchy. As of June 30, 2023 and December 31, 2022, the interest rate swaps were recorded in “<span style="-sec-ix-hidden:f-833"><span style="-sec-ix-hidden:f-834">Other current assets</span></span>” when the interest rate swaps’ fair market value are in an asset position, and "Other accrued liabilities" when in a liability position within our Condensed Consolidated Balance Sheets.</span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.150%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.622%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.511%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.372%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.622%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.511%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.372%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.350%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"></td><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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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></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><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,008 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,008 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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></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><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%">2,025 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">2,008 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></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 $20,000 interest rate swap agreements that became effective August 2022 are accounted for as cash flow hedges and the objective of the hedges is to offset the expected interest variability on payments associated with the interest rate on our debt. The gains and losses related to the interest rate swaps are reclassified from “Accumulated other comprehensive loss” in our Condensed Consolidated Balance Sheets and included in “Interest expense - net” in our Condensed Consolidated Statements of Operations as the interest expense from our debt is recognized.</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%">For the three months ended June 30, 2023 and 2022, the Company recognized interest income of $295 and $19, respectively, from interest rate swaps. For the six months ended June 30, 2023 and 2022, the Company recognized interest income and interest expense of $540 and $78, respectively, from interest rate swaps.</span></div> 20000000 20000000 <table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:20.150%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.622%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.511%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.372%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.483%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.622%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.511%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:7.372%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:8.350%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"></td><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><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">June 30,<br/>2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><td colspan="3" style="border-left:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><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><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><td style="background-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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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></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><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,008 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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,008 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-left:1pt solid #000;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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></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><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%">2,025 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">2,008 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-left:1pt solid #000;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table> 17000 17000 0 0 17000 17000 0 0 Interest rate swaps Interest rate swaps 2008000 0 2008000 0 1930000 0 1930000 0 2025000 17000 2008000 0 1947000 17000 1930000 0 20000000 295000 19000 540000 78000 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><br/></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 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 and six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">143 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">97 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(128)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(132)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">31 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">35 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">46 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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 has made contributions to its United States defined benefit plan of $176 during the six months ended June 30, 2023 and expects to make total contributions of $400 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 and six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">43 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">112 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">86 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">(84)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(76)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(168)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(152)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">40 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">80 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">13 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">(38)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">26 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="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 six months ended June 30, 2023, the Company contributed approximately $170 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:99.861%"><tr><td style="width:1.0%"></td><td style="width:51.751%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.356%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">390 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,407 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">695 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">45 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">94 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">105 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">315 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">379 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">379 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,140 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">814 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">2,077 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,179 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 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 and six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">143 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">97 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(128)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(132)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">31 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">35 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">46 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">— </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 71000 49000 143000 97000 64000 66000 128000 132000 -16000 -18000 -31000 -35000 23000 1000 46000 0 176000 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 and six months ended June 30, 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><td style="width:51.677%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.011%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.494%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.014%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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><td style="background-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 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">43 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">112 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">86 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">(84)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(76)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(168)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">(152)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">40 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">6 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">80 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">13 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">(38)</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">26 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 56000 43000 112000 86000 84000 76000 168000 152000 6000 6000 12000 12000 -3000 -40000 -6000 -80000 -19000 13000 -38000 26000 170000 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:99.861%"><tr><td style="width:1.0%"></td><td style="width:51.751%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.356%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.026%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.495%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.030%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Three Months Ended<br/>June 30,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%">Six Months Ended<br/>June 30,</span></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'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><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%">United States</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">390 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,407 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">695 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">45 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">94 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><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%">105 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'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><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%">315 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">379 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">576 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><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%">379 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,140 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">814 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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%">2,077 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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,179 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table> 793000 390000 1407000 695000 32000 45000 94000 105000 315000 379000 576000 379000 1140000 814000 2077000 1179000 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 then-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 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><td style="width:87.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.012%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Year Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#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><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%">6,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="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><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%">14,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"></td></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 June 30, 2023 and December 31, 2022, the Company maintained environmental reserves approximating $2,447 and $2,472, respectively.</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 June 30, 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 June 30, 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><td style="width:87.233%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.355%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.012%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Year Ending December 31,</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#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><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%">6,000 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'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><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"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="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><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%">14,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"></td></tr></table></div> 6000000 8000000 14000000 140 1100000000 1700000000 P13Y 100 2 financial condition 2447000 2472000 false false false false 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 ( ,1N"%<'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 " #$;@A7!P"U&ULS9)1 M2\,P$,>_BN2]O:9E*J'+BV-/"H(#Q;>0W+9@TX3DI-VW-ZU;A^@'$/*2NW]^ M]SM(JX/0/N)S] $C64PWH^OZ)'18LR-1$ !)']&I5.9$GYM['YVB?(T'"$I_ MJ -"756WX)"44:1@ A9A(3+9&BUT1$4^GO%&+_CP&;L99C1@APY[2L!+#DQ. M$\-I[%JX B88873INX!F(<[5/[%S!]@Y.2:[I(9A*(=FSN4=.+P]/;[,ZQ:V M3Z1ZC?E5LH). =?L,OFU>=CLMDS65=T4U7T^.WXG5HU8\??)]8??5=AY8_?V M'QM?!&4+O_Z%_ )02P,$% @ Q&X(5YE&UL[5I;<]HX%'[OK]!X9_9M"\8V@;:T$W-I=MNTF83M M3A^%$5B-;'EDD81_OTV23;J;/ 0LZ?O.14?GZ#AY\^XN8NB&B)3R M> +]O6N[!3+ MUES@6QHO(];JM-O=5H1I;*$81V1@?5XL:$#05%%:;U\@M.4?,_@5RU2-9:,! M$U=!)KF(M/+Y;,7\VMX^9<_I.ATR@6XP&U@@?\YOI^1.6HCA5,+$P&IG/U9K MQ]'22(""R7V4!;I)]J/3%0@R#3LZG5C.=GSVQ.V?C,K:=#1M&N#C\7@XMLO2 MBW A(5M>5 TR M6'!VULS2 Y9>*?IUE!K9';O=05SP6.XYB1'^QL4$UFG2&98T1G*=D 4. #?$ MT4Q0?*]!MHK@PI+27)#6SRFU4!H(FLB!]4>"(<7K;YH] M5Z%82=J$^!!&&N*<<^9ST6S[!Z5&T?95O-RCEU@5 9<8WS2J-2S%UGB5P/&M MG#P=$Q+-E L&08:7)"82J3E^34@3_BNEVOZKR2.FJW"$2M"/F(9 M-AIRM1:!MG&IA&!:$L;1>$[2M!'\6:PUDSY@R.S-D77.UI$.$9)>-T(^8LZ+ MD!&_'H8X2IKMHG%8!/V>7L-)P>B"RV;]N'Z&U3-L+([W1]072N0/)J<_Z3(T M!Z.:60F]A%9JGZJ'-#ZH'C(*!?&Y'C[E>G@*-Y;&O%"N@GL!_]':-\*K^(+ M.7\N?<^E[[GT/:'2MSAD6R4)RU3393>* M$IY"&V[I4_5*E=?EK[DHN#Q;Y.FOH70^+,_Y/%_GM,T+,T.WF)&Y M"M-2D&_#^>G%>!KB.=D$N7V85VWGV-'1^^?!4;"C[SR6'<>(\J(A[J&&F,_# M0X=Y>U^89Y7&4#04;6RL)"Q&MV"XU_$L%.!D8"V@!X.O40+R4E5@,5O& RN0 MHGQ,C$7H<.>77%_CT9+CVZ9EM6ZO*7<9;2)2.<)IF!-GJ\K>9;'!51W/55OR ML+YJ/;053L_^6:W(GPP13A8+$DACE!>F2J+S&5.^YRM)Q%4XOT4SMA*7&+SC MYL=Q3E.X$G:V#P(RN;LYJ7IE,6>F\M\M# DL6XA9$N)-7>W5YYNTB42%(JP# 4A M%W+C[^^3:G>,U_HL@6V$5#)DU1?*0XG!/3-R0]A4)?.NVB8+A=OB5,V[&KXF M8$O#>FZ=+2?_VU[4/;07/4;SHYG@'K.' MYA,L0Z1^P7V*BH 1JV*^NJ]/^26<.[1[\8$@F_S6VZ3VW> ,?-2K6J5D*Q$_ M2P=\'Y(&8XQ;]#1?CQ1BK::QK<;:,0QY@%CS#*%F.-^'19H:,]6+K#F-"F]! MU4#E/]O4#6CV#30,9FV-J/D3@H\W/[O#;#"Q([A[8N_ 5!+ P04 M" #$;@A7BA8:3LX% "0'P & 'AL+W=O"C9\G^EC?'DD7CU)]U4LA#'E*XE1?MI;&K-YVNSI8BH3K MCER)%'Z92Y5P Y=JT=4K)7B8BY*XRSSOI)OP*&T-+O)[$S6XD)F)HU1,%-%9 MDG"UOA*Q?+QLT=;NQEVT6!I[HSNX6/&%F KS^VJBX*I;N(11(E(=R90H,;]L M#>G;D>];0?[$'Y%XU'O?B4692?G57MR&ERW/EDC$(C#6@L/'@QB).+9.4(Y_ MMZ:MXF]:X?[WG?LXAP>8&==B).,_H] L+UMG+1**.<]B:3/VU?Q)[ ]RH$;"M@+P2T5R'PMX+\S74W M)LF5T!== M Y[VEVZPU5]M]*Q"?T(^RM0L-;E)0Q$^UW>A+$6!V*Y 5PPU_"5+.\3WWA#F M,=]1GA$N'V:+#O&H2_ZL.'[Q?OST<>BY'6P_?*M7 M/!"7+>AH6J@'T1K\] ,]\7YVX7TGLV>PO0*VA[D/KF6001;F54YGHI(U35$.^DP#LY#&\B M5"1#VPL)C /.RL.=BGY7V?%0?4/.TX+S],"6J3A,(?D,4%V/N->!9 7B&%FHDDR32^>0XCF)!/F7)3"@7'.[C>5Z;>CW_Q 6(2AL"GA> YVC! M;E(3&=OY%I$=2J$J/_'$V4YQGP^=JPX92PU]F$S=+Z!&O?)T$6,BYHB[^4(>@CR/7\B MMR'TU&@>!3DWTI1K+%F_37W6._6=PQ$N;LK+2EYV".\P#,%=V\I5-G57->H: MMQ[MD_(S\0\L M1/$(\Y)Q!%=.1-QF$AFC9YE:+)V,QPA$M$Q$%,\QW[;S5[#69BB!358,,[F0C(TRO4R.#KV_(BBORP.-,D!^]CD>=Y,<(1:P,10R/ M+1#=PRA=D.DZFWSEW!(Z1?%B9?!@>4W952&Z>@B5/%Z(R!-08 M?1I.KX?.%30N;$I89AUV4-8994K9-=AFX957)4P=F7/7J,;QBW.O:82KFG*6 M"8<=E'!N4UA<;/87[6*:[\"=G+AC%>L3P&F[^X+JF>&7L M87ABV0VQS^;T:;XI3W[+#(38-)\\7T7I=J_^M9/^.X6;[3O9N/5S-WL@]#"@ MU#NGG@W$#R[>,@8Q/+P,$Y&&^8[>..8+)PIN4%V1QT@Y?IER?#RD%#N5XTC; M)/M%0# ;PTWGH%-C5K45B\N:,I:)Q\>#RDO&[>9S-25N]]FY#L%%31G+S.,? MEGD 4P'B;1J*)_*K<(XY-58>_//[[(SUG9S'R#S^WOD6GE!VH6Z_N6*G"#5V M[39E;=^Y_,"5_Q>TNW?F:2>__"A8D\!NK6Z./XN[Q7'S,#]D[9:/;\ZJ/W([ M=VH2BSE(OJJ5!P K1\ !@ !X;"]W;W)K1$@%"=NL'6[P<+,\"BST+X.11R*_%FG.%OF5I7IQ.UDIM MWLYF1;SF&2N.Q8;G\&8E9,84W,K[6;&1G"WK1EDZ(X[CSS*6Y)/Y2?WL1LY/ M1*G2)..N15]F*1%O5_]-ABG0F*RT*)K&T,#+(D;W[9M[8C=AI@=Z0!:1N0 MYS:@;0-:.]HPJ]VZ9(K-3Z1X1+)"@[7JHNZ;NC5XD^35,"Z4A+<)M%/S"Y$O M85#X$L%5(=)DR13<^ MJ>W1,?=+*7FN$"L*\/.MR9_&@&LV4,VRM\6&Q?QT M.HX/*!3^;??X=]YYW) MNU9/+ 4G#>.8F/*KTU5J>!A3L/0.9D] M['JC@T@8D@ZTQ]+M6+I6EF=Q+$H@!3DBYL#P+N40?CDDM!\^"L61]Z.);F/3 MVV$2N,2-!GQU5$ADUR[(,/E)E*\GN4947\81EH;>ZD, MNXX['!$#S GH2,;#O>QAN^XU(Y+DBN7W"Y%$]M5LZOO-NRI*NZ,#NM:Z-*( M#A73! N#L0(4]Y*)[9K9S3[)H5HJS11UZ<->Y \K3A,,2J@1BJ172&)72.A% M60)#Z$0I(/W6JIYM4O'$.;KC.5\EYAE)=-D+ V=(VX#"CN>%([1[<216.>HB M?B-DO8@7*UC'-YY "E$IKXN2)M-A<_'L)4+JUSCL#*M5$X@$(]Q[&23/D<%M=^_D'"-/ M7=BP&Y%A:C3!?!R-A7>O?\2N?_NE]2&NNK)%V'>'RQ0###L4XQ&Q)KT($KL( M7K]@^'6E"R/7&28V RS"P6C6Z!61V!5QKZS8Z55K;4%T^<,!UB+!())X)Z_L M,^XEDMB7@7W?_I^4H2__?$/*T%&6E-'K';'K7>^!&*QJ#H6UKFZ8^)K"F& N M]D>J9M*+(+&+8),N^M1VB*UAP>BYWI"L"16,I#;:JR%UK(740HGXZUJD2RZ+ M[[\+"0[>U6M<]62LIZA56U]:3[V6M7W?>TFE!R159!E,BZ+J ECD,XD>6%IR M],8Y=C L]TNU%C+Y!Z8+<:80S]4?*M8,N+QK?U%2%-5\8@K]4N:\(;?=HZU+ MBTL>\^R.R_95N_\Z11A/,?:F01!UMD2I"EAI+:LX_P\&G6F(_6GDD!H&MT'@ M3T,23*$8*S:\WO1/GXRCJDL^UC;5#H#VQZ O"ZB]++AAR?(HR5',-@D(EY&= MKNFN$^'A;#;!,'5&9C/=V?JUB_]GKA@\@B*1R1R&QKSG:U!SXGK:KH\11[$_ MDNUI+_OT@.Q+2(RE?&JB&9;I$$"Q*!1$1Q1.PR"H@X+2W%!13Z95:F]:&,:/9$10:)9%V=I#V MB(C"/)9Z"7&$0X]JO TX@K$_LOJF?:U!#ZR^ZQ+N^OC\&'V (03BD*DV+&\' MUYBMC8X8R@^7X$ASQ("C 0Y&UBRT+T&HO03Y*/*XVN*'95:5TY(N1 MZB4$U8GJ()>,Q4E?9M#G;$:_L&M-I0/QHN%ZQ(2C@1>-=6U?8U![C='LT%Q? MG9U?75_=7KU?H+./EVAQ^^GBUY\_75^^_[S8.O'^]R]7MW\9G8CTDRK3+HX) M9]K%F>V9_D!=1L*VCH' ?0#;(Y&VYNE-C4QZMW0BF1U9=KSF $ M*@"\7PDH3=N;ZL2V.Z&?_PM02P,$% @ Q&X(5T((" '? @ ,0@ !@ M !X;"]W;W)K<8-78S#9)NU^_:T-8'K1II?&!V.:>XW,N%]^,-T+> MJYP0C1X*QM7$R;4N+UU7I3DIL.J)DG!XLA2RP!JF,[VX4[NLJU67"3<8E79$[TMW(F M8>:V+!DM"%=4<"3)13-G$\(X@PDFK# M@.%G3::$,4,$,GXWG$Z[I0'NCK?LM]8[>%E@1::"_:"9SB?.T$$96>**Z3NQ M^4@:/P/#EPJF[!UMZM@H=E!:*2V*!@P*"LKK7_S0Y&$'X/>? 0-('@I(&P MH35:*[.V;K#&R5B*#9(F&MC,P.;&HL$-Y>8MSK6$IQ1P.ID*GL$[(1F"D1*, M9EC#Y!HSS%."YH98H;,9EH3KG&B:8O8>7:"WR$4JAU4U=C7H,&QNVNQY7>\9 M/+'GYXKW4.B=H\ +P@[X]'GX#4D![EMXL ]WP7V;@J!-06#YPB?XYAHL0V%J M));HEG(P3C%#,Z&HK;2?5PNE)=3;KRZK-7>_F]M\@Y>JQ"F9./"1*2+7Q$G> MO?$C[T.7\?]$MI>&L$U#^!P[5$)1@%NHN/3^')58HC5F%4%GE$:YT+B3] V5\1GFSVJF[ M)A_L2(+#SUX'VE\0N*=_T.H?O%X_5:HZK7UP),F':Q#'HP/M+PC6K4P:B8UW>T(]&7G!@H"LPCJ-A$'<;B%L#\;,&OD+74Y5\K"UL M'5P@K%$JE#Z'^S^'I]S$QQ4R&@[C^,#+<5@8#D>#X,")NW.@FV;Z!N^-S1QX?2K,'6?VE=D)H]%CDI;J:[+3>7TZG:KT3 M!5<75:Y/+A:H(G3P\^9G<[;1],Y[,]OQ,W0G_>?ZC,W;3SLLD*4:I, MEJ@2VZO)&WRY(M0:U(@_,O&@CJZ1I7(KY5_VYMWF:A+8$8E>S#C^;IU.NIC6\/CZR?O;FKPA<\N56,C\SVRC=U>39((V8LL/N?XH'WX6 M+2%F_:UEKNJ_Z*'!QG2"U@>E9=$:FQ$46=G\\L%"\W:C;59C36YW3=1KYN(I.!R!2]EZ7>*;0R(]@ ]LMQ^VC$ M?FJRT*6"/*7BFHPZ_.507B :_(!(0"@PGL7YY@2B\VW15_\[^DDR:#H])T*L5S 9:W<1#5#FP_NI_C, EH.)O>'V<-@%',,#N%+7T8B2BS M7(YA*P!& QJD'>R$;=BQ#<]@NY9*V^D^R+AQPHZI8!8GSA@7 "Q(B$MEZ<-( M$*=QZC &O*4!BP88LXXQ&V7\4R650OM*;C,-465>5$H(C<"?H M @"]C@-G-2X!%&%AY+"&?&$2#1$_DF3X*U6V3-&M,.< @1K>2/-'N%>USDX: MC-D?7-X^BIC-QN7MHS -0Y>WCXJ#@9F-2<^:G,/:\!QK5:V3D\TDHBY9'Y00 MK\8^R%,; (;B(::]M,+CVNHWHZJ:JH(,J1\S=/?4!8#":1RY' $4]5D"$=.! MC1?WD@J/:RK+,K+7B^L+]-;(3M/H%K+8\_(+F ;FJ5[* M*';SX*-(@-VM"T"9S=X5G0 J#(O>%Q^79CCUSV['4GY<#+A%$']GW: MI=KSM;B:[$TW$=6]F,R__PY'P8_04?Y9O2V?U=OJN;R=EJ*7F'A<8YYQ\F\] MG/80@J/8G7@ #D?,TY@ SISJXX"YDP_ F0X7#)P=2"\UR;C4///\3WS!ATW\ MR!69 "YEU&W82\A=G&)W[UI!N(CAH]W^E'8O-,FXT.Q6G9U%V7J ]*B/_[KP MGM7;\EF]K9[+VVDU>@%,Q@7P&0N/^'H4L\1;=Q#,2$AO_@'JEB38544 C*1T MJ.>37@:3\98^P*8@A&DM3C#+Q 3)+0[300C%'O^#X]>O%>B.JN M_N*A#*=#J9MWK=W3[JO*F_I;@O/\&E\N,/!\B2]7S3>3WGWS"><]K^ZR4J%< M;$VHX"(V]:F:KR+-C9;[^K7_K=1:%O7E3O"-J"S _'\KI7ZZL0&Z;U/S?P%0 M2P,$% @ Q&X(5_(&"O^(!0 \Q8 !@ !X;"]W;W)K.KZP9:9TQW!\N2)+>D?5M]5G :UARY*R@I:2 M\1()NK@:7..+&1YI@PKQ)Z,;N?.,M"MSSG_HQOOT:N#H&=&<)DI3$/BYIQ.: MYYH)YO&S(1VT8VK#W>/X72U5V-8@&**4+LL[5%[[YC38. M!9HOX;FL_J--@W4&*%E+Q8O&&&90L++^)0^-$#L&V#M@X#8&KFD0'##P&@// M-/ /&/B-@?_2$8+&('CI"&%C$%;:UV)52M\21<:7@F^0T&A@TP_5BKN@:EX MZ",O52;1%*:46NRG_?9AC_T09&FU<9^TF;B]A+^ORW/D.:?(=5S/,I_;EYN[ M-G=^;?39_QY]3PRO#12OXO,.\+41<3 @OE_/I1*P5?QM6_N:W;>SZ_WS0JY( M0J\&0"RIN*>#\>M7.'3>V80_)MGTF&2S(Y'M+9'?+I'?QS[^ Q(1J];"M@"U M;5C9ZGQS/_;\& +K?E?8+@C'HW ?-+6 /!UCNZ"99;C8:3%[_@6M?T%O"'Y2 M&14HV8L]UFQ&N=Z,3E%)J_A4Y.'"ID%PS" \)MGTF&2S(Y'M+5+8+E+8&X20 M[R&;EY"[A*!E\HA@2RAE3NHZ(OT'4IK>16RK4Q,'NW'E!D9LB=C;=STR^2$$7U,.@VHE?*^BYSRIXTS_/[]A:!,3=4,6&[EU(8 K?A40&RZP+ MB6.[\MC95LI.KT]?N2)Y7_JQEKQ.UQ\W,CFWP]42L/]VN\G%8A2@LW7BLQSJN.NY-!?*L%SH%H"2E&(*F7- MS,W81TK-1V6;'I5M=BRV_55TMZOH/ELDZE5[Z6I9%\NU1%ADQK0-Y)L1;0$% M(S.@;2#_0#AOSS.XMQ;_E4*E8=XK+V+3_2[F+,2F^UV09U8IML$..;\]*>#^ MH\)UP=6PN/)XAA^;65 M_'[/MK;%_<4MI'6S I&(KZNBXO6KR'6==]=)LB[6>76+Q"T'-BUN!<7OT(*+ MMGKA\YPM&T8B*$HR(I9U!=@PW]$Z*'6)0M*"E4Q?-^@*Y:F8:8DW3&50>\/P MZ$477)]65-1CG]LVV>'._5I!85KZ)E3G0OB&ZN-KV]O>MMY4=XQ&_P1?W&)+ M_U3?SEKZKW%X,<6A]=UU7Q3DIL+H2<\)A)Q6RP!JF,G/5 M7!*<6%#!7-_S0K? E#M1SZY-9-03"\TH)Q.)U*(HL'P:$"96?:?EK!?N:99K ML^!&O3G.R)3HA_E$PLRM61):$*ZHX$B2M._=:P7E%S]6>=@ M $\SP*\ _BZ@?0 05(#@5 _M"M ^U4.G ECI;JG=)FZ$-8YZ4JR0--; 9@8V M^Q8-^:+CH> )G#I)$(R48#3!&B93#1^X#EHAD<)6 9JZ& M<(U3-ZY"&Y2A^0=""]"= &*%QA!BTH ?'<>'1_ NI*G.E;_.U< _2OAQP:]0 MX%TBW_.#AGB&I\/])CG_YWW\S]ZWDA'4%R>P?,$!OOJ&'+P@WVYF2DMX";XW MG7W)WFYF-Z]C5\UQ3/H.$"LBE\2)7K]JA=Z[IL2_)-GH))=CK'*40G% .4DRM_"#Z]IF2W2G%MTY*GJXK5!!,8L95HJF%/*@!2)82<>^1>#OI,/=J'(%D9EM+Q2*Q8+K M\MVJ5^L.YL86[IWU0:L[;#6LCZ#C*1N4O_1ENW2'94:Y0HRDX,J[>@OG)LL6 MI)QH,;B\["?_H:2(MGB M@YM%WB22/:3^''+F-Z1U]B3*']6:,8F>-WE1G8_64FY/)Y,J7;--4GT26U; M-RM1;A()M^7#I-J6+,GJ1IM\0CPOF&P27HPNSNK/;LJ+,[&3.2_838FJW6:3 ME"^?62Z>SD=X]/K!+7]82_7!Y.)LFSRP)9-_;&]*N)MTO61\PXJ*BP*5;'4^ MFN'3N>^K!K7%=\Z>JKUKI(9R+\0/=;/(SD>>4L1REDK510+_'MF!G.?5&PN\C]Y)M?GHVB$,K9*=KF\%4^_L79 4]5? M*O*J_HN>&MO0'Z%T5TFQ:1N#@@TOFO_)<^N(O0;0C[D!:1N080/;$VC;@-8# M;935P_J2R.3BK!1/J%36T)NZJ'U3MX;1\$)-XU*6\"V'=O)B+HH,)H5E"*XJ MD?,LD7"SE/ /9DM62*S0/*G6Z IFO$)C],?R"SKYY0/Z!?$"W:W%KDJ*K#J; M2%"C^IRD[9,_-T\FEB<'Z*LHY+I"EZ @.VP_@5%T0R&O0_E,G!W^=U=\0M3[ MB(A'J$'/_.>;$X<_?_ERBJ]MO7]&WF\O;V=WB^E_<.#]QS3F=^KL MP -^YP'?U?O%-60A7J1BPTS#;-H&=5N5;!XO,%6.?]R7KQO1V.ML#E1-.U53 MY[S,LO]!6#5K6PI(1:DH4IXS5'1RU>>I6O,[%1BPS"%KEHGDQ4.3=KCDK#+. MW?0]Y^Z=.COP4M!Y*7#.W1>V8F59C[[Q2/+,C$'>=#/=FZ$Q#K$WF$>C%35/ M9-A)#(](A'&G/%$X,"D+M6?Z<10/A.E&-,*^65C4"8NP&K?S_S\^*1M>%ATAX;)C(8 M2#?81*%9.?9Z3GE.[;\F*@X+5"4YJQ @!V6\V@JXK1&U+56,RI>/:)LGA?Q8 M6S 8[U8-Q4@G3Y=)@^%83%;$MD#P'G6Q"(#!>RR0I'EA##I!=*G$)_%U6%3A[ ^1^4]Y.J@BR9<;5&N-R5YIS0]GD0 M55[H#Q7K5F,_QA;%/7;Q$>ZND^*!#;*VDMVLFIPG]SRW9W#\KOA]K]X.?=$# M&+L)/$M3L5.@@T3)^&-RGQM1W/:R/Q/!--+F2[=229S80KL',G:23-6@L@2P MMM-D5#@U!*M'Z5"B;D:PK6# /0NQ&X8+R(F%%"6W+'<3W:@71$-U)CLOB"U9 M'?<@Q&X2?I-K5L)N 8!=.+VHTVZ,R10/=1K,Z-2&:]QC$;NYV,A4P#FN5,?? M. JF0Z&Z%=0>-G?VE,1N3'91LTU>K"&C0\[7]>E&,?4M\4)Z%!(W"KO:K&2P M+G=&?43G5K 7J>V&2#>:4L^2@4D/-^*&&_BOW($\<%\I\KQ!\6:;BQ?&T#TK MV(J;9YWH#!OC*!JZU61&8M^R/DG/.N)FW:MN6)0R9[:Z@1BP13QO6+\=-3L4 MV>.-.)$QB/4]FAFU4EU$[ _CW62%0S^R2.WI0]ST::3FHG@82U9NCHK5^8+# MX8;08#2.26"1VB.(N!&DMJI'=WQ&T28P40U,)C-,:40LPGLTD>!-IPR+Z^^7 MRY\Y92!.Y+VUSGFOW@Z]T .0N %X4XJ4L:Q"JU)L$"R[>IOPS_8%1*??E ZK M;8,1H;;$W@.2N $Y3[9<)CEBS[ AR)KZ6E7=_V 0!GYB/]8RJ<&,>M;([PE* MW 0]G(_[707?PSZBV;%QM=$Q!Y/.RS#TAELR@Q7&MB**]E2E;JK.4G!H*^YC M?1@$RZ?."8GZIAR>4;:'=3I"8VT3:3 :3T-L"7[:@Y:Z0=ME+5@@CSR#S'7_ M@D[:%/:AWO(.M3 YC@W_3XUK(Y;NL/XZ2JFE78\@+J)OC:J%K?3%(ZW+(;C&S>[5E+W:SM MDDZ?:/;3SXH729'^1-(Q;C*#8>%D,,.1'UH*/MJCEKI1>[E:L;3V.7M.FQ,C MJ/<8:JYKZC:Y'TA;7RCQKZ;QLX10#UW1+N.5QI%PUVEP2H, IOS M>P;[;@8O=]MML^.%ZA.JM#07D$!95P&M\IC5[S8,/O^,3^?- MNQI]-\VK(U^3$J*]0CE;09?>IQ"\5S9O8S0W4FSK%QKNA91B4U^N69*Q4AG M]RLAY.N->D#W3LS%_P%02P,$% @ Q&X(5P*"RS[N"@ !V< !@ !X M;"]W;W)K MV4B\I-/=>I)-^YF1:(L-17I)RD[ZZPM2BB@ A[ 8G\QD8LD^> YX]!(B7D#4 MU5-5?VZV6=9:7W9%V5S/MFW[\&:Q:-;;;))]?K]MNU\L;JX>TOOL0]9^?+BMQ;/%B;+)=UG9Y%5IU=G=]>Q7\B;A7M>@ MC_AWGCTU9X^M[E ^5=7G[LF[S?7,[GJ4%=FZ[1"I^/&8+;.BZ$BB'W\>H;-3 MSJ[A^>-O]*@_>'$PG](F6U;%?_)-N[V>^3-KD]VE^Z)]7STEV?& G(ZWKHJF M_]]Z.L;:,VN];]IJ=VPL>K#+R\//],NQ$&<-"!MI0(\-Z*4-V+$!4QNX(PWX ML0%7&_@C#9QC T=MX(PT<(\-7*4!\T8:>,<&GM* \I$&_K&!W[^ZAY>C?RU7 M:9O>7-75DU5WT8+6/>@%T;<6+V%>=MK]T-;BK[EHU]XLJW(CE)AM+/&HJ8I\ MD[;BR8=6_! 2;1NKNA//JO7G;55LLKKYFQ7^N<_;K];<^OAA9?W\TROK)RLO MK3^VU;Y)RTUSM6A%OSKZ8GWLP]M#'^A('_ZHVK0 FBW-S9;5;B?4WW<.:+TR MM[Y-\\U<]'N9/N1P^M ,>)^U8F@0M0K3NLS+>^C HV<.7(PVS;[^.GH,L;G] MK^OU?K ]/MF=U0_'A#?.82^VKQ>"X6((P0.6:EQW!&/2I'A0#)]3W&Y+!(#YL3 MFWB!'!9#8;[/'3DLT<,X$EED_BQKWCUYU9RIT M-D-U9Z;7LGM/?=,\I.OL>B84UV3U8S:[^>M?B&O_'3J5,6$K3%B("8LP83$F M+$&"24+D)R%RXWG_N[@&R\6@LA-2+,28] J2VP'AG)T +%#/<6.:J2K"A(5Z M[SGGRH"!F3#&A"5Z[^<.APCPX:^,4JA1[$946;?GD# M*<'!''@P82M,6(@)BS!A,28L08))(G1/(G2- \_M<9)5Y.FGO.BN6M/-?\5% M=7=E"RG/U">5>$:5B$FPF.*6 M8KI5UUFY_FJU=5HVXK*ZGUP;!>/I R=W7%_1C#']5,U@PD),6(0)B\'*!LJE M>J)'T9'W+?\D!M\HAH^EN%(N\O^)*96X0,X?T\Y;L>[%5,\2:EBGS=:Z*P1R MFVWN,W"RZVM]<@-5$<8^3%4$)BS$A$68L/B"NB9("27E!"?E!$;E+!5M6'6V M+M*FR>]R(::VLK)QH^!MH ^1RGQS:=ETE=P_M9[R=KO-BHUU5]7=A3,\]!R3R:.F MZRI",G=IJI*@G)0ZRN0G1$T: 4F)YRNC08R:,\&BR4HY,VJ)42F];3/O?/I- M/ZT2E[;]%0JH Z*7A_CJ@&)..%D'E^0,47-&J+08E99@T62Y#%8K,7NM8;E1 MC-9_[,O7%K-[HY6"JJ'Z*^@3FZE3("A.LUJ!($ZI350] "PW()ZG>"= W-QG M 5'/>""L&XP47 +USA^Q6\G@MQ*CBP;[V[^E]6'8C3RZX' M<4H<[30$6*XG_JEEU^/F ;5MM>Q & D(T)_$Z&I=9G@?&=(Y&'C:Q1JJ@8E*"X$C$".\ MK8XAJ-XD*BT!CF#.1AP$,KB.Q/U1WC?!--Z6J+05*BU$I46HM!B5EF#19#4. M[B8QVYM337"BFVJ.NA!G3CE96*B>)BHM0J7%%]0VP]I@;A*SN_ER7YSH9AQ1 M)V9+W2*FTYULS"@CBH"8[[)(K@@98B:,D*EQ:BT!(LFBV7P M=:G9U_T.+YV"IJ[NI4-Q^K9ER-35O72(!7GI0!SDI4-AD)<.]6[,2Z>#J4O- M>T:?W2L.EUW?R4B8YVC[+Z XO>S ID[";-5+AUB4B:,46D)< 1SQQL9D ;WDGH_RDNG MF-;=$I6V0J6%J+0(E1:CTA(LFJS&P1RE9G-TJI=.=2_.)^JHA&J'HM)"5%J$ M2HLOJ&V"E5&6RV":4K-I^@(OG>J&'G74:\^E.?]D[:#:I:BT")460]7EGKH2 M T2QD=TJ;'!!F=D%?;F1SG0KU%,G..9.3/[ ):H7BDJ+4&GQ!;5-L#+* AH< M3F9V.%]DHS/=Z5-M='/ZR=+!I(6HM B5%J/2$BR:+++!'V5F?_1V7Z^WG0^@ MVN@'O_QXXP)08< 63-=5IV+F])-%ADD+46G11?6(47,F6#19/&?W'3#[I;AK M, S:7.JH"\?F+DT6%.A]$M7Z0TT: 4FI[;BJ4G!O"_ C[@O !I>7F5W>*$2HM1:0D639;+X$XS\[Y:\T(, U4#[++E5/LD MZ1**TU8$@"!N!T33 \"BW.'*A60$Q,VYS[4S'@@COL-<];I4CV.!.S)?&?Q7 M9O9?G_U0 UQVT,ZT"5?+#L3I9=>#1-D==?T+8M'NECQJV2&CDGA<+3L0)@XW MT,H.]S*S[_G2F_>@>I^HM!4J+42E1:BT&)668-%D10[>)S-[GQXD-7B8+?M1"#,/T M[I:HM!4J+42E1:BT&)668-'D&XH-+BHWNZA3%V*X[NMQ=2'&G'*JL%!I(2HM M0J7%%]0VPZ3?OQ3#H1VG MVE*,.?UDD6'20E1:=%$]8M2<"19-%L_@F'*S8XJ[%,,!8U.=VYL[-%E.@/<9 M:)^&0+G9XYVR#,.!NWFJ=S-?FO--%L$%*4/4 ME!$J+4:E)5@T62R#,\W-]Q/XCD68(U&ZI3ZT" /%::L!0!"T" .QH$48( Y: MA('"H$48($Y?A%F!Y#Q5=]RK;7ACLU3 MI0UVU%O0.=R#^K:8"!S9#4O"E;CDX(,HB59J#8+&$(6::),(W'FM-J0FK@9G_-_LG,'>+N X # KP'^J1&"&A"<&J%3 \S4[6KN1K@1533J";XB0GLCF^X8 M]0T:]6*%WB?W2N!?AC@5#7F1X*I#0K G><82JG!PK[#![: DX3,<\?@AY5D" M0KXAX\>2J6?R=D(%.J2@6$RS"_*>R!0MLF7NB&5]M> MHWVO#Z[OACO"[7N%3NB\<%6*V!O5(P1G=J/= !FO=5]!M02P,$% @ Q&X(5\DKR>9K! '0H !D M !X;"]W;W)K&ULE5;;;ALW$/V5P08($D#6ZN(X MABT)D)RF29N@BMVT!8H^4+LC+1,NN>'%LOX^,^1J([NRT;Y(R\N<.6=F..1D M:^Q75R%ZN*N5=M.L\KZYR'-75%@+US<-:EI9&UL+3T.[R5UC4931J%;Y:# X MRVLA=3:;Q+FEG4U,\$IJ7%IPH:Z%W2U0F>TT&V;[B6NYJ3Q/Y+-)(S9X@_YS ML[0TRCN44M:HG30:+*ZGV7QXL3CE_7'#'Q*W[N ;6,G*F*\\>%].LP$30H6% M9P1!?[=XA4HQ$-'XUF)FG4LV//S>H[^-VDG+2CB\,NI/6?IJFIUG4.):!.6O MS?8=MGI>,5YAE(N_L$U[Q^2Q",Z;NC6F<2UU^A=W;1P.#,X'CQB,6H-1Y)T< M199OA!>SB35;L+R;T/@C2HW61$YJ3LJ-M[0JR<[/WDHM="&%@ALO/%*XO9OD MGI!Y/2]:E$5"&3V"<@8?C?:5@Y]TB>5]^YP8=;1&>UJ+T9. OP3=A_&@!Z/! M:/P$WKB3.8YXXT?PYD5A@O92;V!IE"PD.OA[OG+>4EG\E3Z/\Y*?\?92&<=L&36FN;I:/Q> M(9V.PM2-T#L.4= BE-)C"5>&$JI=^G(4N5+P]#%HJ,0MP@I1 X6D$9;V21V! M;4F[D2K;5W'<9J*QDD :1;G8H$8KE-KQ.C8^V7HB]EE'(M&/@Q?/GYV/1H/+ MG^?S9?P<7KX$:DVTVZ.5-:P[9E*GEA7/OBZ3=T:4FM(>8E-PX WPZ8;AX.13 MW#:W7A8*4R[/.537N DJX=R<_-6'>51$ M2NQX [* UHXPFX4*&D6"K%=LG7 M?1)K8SQM)246OP7),5KM@-5$%9P#A1X/9+@NP'W@1.U0V!,DJ.(P(2NA8HA3 M(Z*BFE*Y1QP1XAW8?W*4NFD9HU MDNQ::.KFC-J+]NB\K&/R. "B_$)-+17,"Y8@7:P%,M0<*44^BF MSU$IV""4 M>QFU2A)#GC46Z!S='S%@ M9"6F@.JOF@#EL991]^:ZB\HB/:20W;16MF[BN+ M&*DY>0=U:F/(;0RH"6'7A( *.L9F3T!2L4I=RD+PO;)/^![>5\)3*'9$!/"N MH3N((]_ZY!RR#^;SAN#J%=I4<.-A\L:YIH/Z*0A+=4V>KK$QU@/)^U&NKC)! ME>R!KV,^,!2G+T&G^ZZK]WN%D=M(3TA.>UGW3U^#!!%JO=X?MN6L,5>VQ'V M,\$]G#'!=E,LFKFU2P>J>#6ZH-"I^'RX1>)#KHZ$(>)("N*],+NPHH*55"7H M^L=NA/S@RJ[1;N+#A$&H-Z;;NYOMWC[S=.7_V)X>3A^%W5!/ X5K,AWT7[_* MP*;'2!IXT\0'P,IX>D[$SXH*!BUOH'5._7[ #KH7X>P[4$L#!!0 ( ,1N M"%?!FR2!< @ )\5 9 >&PO=V]R:W-H965TPLL-@/M$1;G,JB2U)Q_._W M7%*2[8F3=H!B/R26*/+>86KWHU-ALM>.$6K:MQ'(;9>,UE/;@\=V.W^O)<-;:2M;C5S#3K M-=>[:U&I[<4@&G0#G^2JM#0POCS?\)6X$_;WS:W&V[B74LBUJ(U4-=-B>3&X MBMY<3VB^F_ O*;;FX)F1)0NE/M/+N^)B$!(@48G1-93^I[:^BM2;FJC/O/ MMGYN/!^PO#%6K=O%0+"6M?_ECZT?#A;,PF<6Q.V"V.'VBAS*G[CEE^=:;9FF MV9!&#\Y4MQK@9$U!N;,:7R76V=C"['T<9RW(JZ]B/@9 M$1G[H&I;&O9S78CB>/T8<'I,<8?I.GY1X#^:^HPE8<#B,$Y>D)?T-B9.7O*, MO-8T]DELE+:R7K'_7"V,U+UCTC#.5I5:\(I9D9>UJM1JQXRJ M&BH3PS9:/T/&^TB_EP,<)*900# M9,SV[C!@/#]3BU53<5WM2#(($](6.P^ME&+)/O:K?A*Y=$3^@7\6.B"IK"&% MI@$NY(>C6)I@%?SZ62#8?@4T+>!!TJL:[=),L85@"! Y'2KQ[F+?NLR[=IB/ M&(2VAA?2Y%I8P9:R1@Y()/^A3BJ*!RXKOJB0G7O4?13(6/' J\8I))2ED+K[ M3@FZE!2AVFJY:#H[[(G 8@Y25Q9.4.M+J,1438Y'*AX%),"@10$:&W2?+7\4 MK9&YT)1_3/GE5JP]5.0Y\L !Y<<:T<&D>3'ED#JY:FIG_P;K+,FG9":Y1 >A!E&UBO8!+DLAUD=A;_#2)CPNI!ZB=&LJ&?0IL$07& M44X*B;B=]Y!XMWZA/J&*9RQ.("9BPRA.1PB9$-5^(FG\(+AI/%VR. [2-,'" M28J%61"%4S;-8G:O+(+YBD6361 F$P(7)-,YC2!B:93B:1)D2,$ MWLGFY$8LG,"-,_)_D,RPM'-EG"5!&L<$!_,0( QA#Y6$Y-4XF)(OC]EJ6#F3 M77MH*P-U&5".FU)M:^+=!^%HIVH*(H&><7.E42!X/"BICK$.^;-O*^C''57O MUY8X1'QIN :_L653Y[Z!ND96H.'F%GVEW4(<$GS7VW:.E?:@:'/N**^;1_(= ME05]XSMDZ("A@GM9+1,L.D)K:J*=K;2EK/_27GI%-+PWIQ=E=QO1;:/^VIT\ M$;5^Z[7J>=S$\!'G&KF SK,VQ!_(* M8.!36L->J,^';VE8UF7;WZ.^)Q5+VWK'R@=/^YQIT9".4S2\IPI/$(?Y[K+\ M7=LO>R>_=D:B7M+I9,2&R8S^Q\$\B_$[3?'FN^^P73#J&FV[GZJ'_48*->S;1ZA:_#!$P1.AQ1"AX=3D"4\Y%7 5SO M/(*%@!O$4>-WAH=IYNUU] TFF!"'3L/$99?O4.1+[SM950T==Z@CS2%[8C;\VP9A9-@-H_Q.PM2-*BOL"08 M=8+9*5R)-G0I,4.9+-Z"E+@R0*V<=Z;RGE:G#D-90% MG7%PE.38+D'=C@K:3=G3XK'#R8663BL.56NPAMNTXJ@N>4! 7H3?43LJ*A'6 MW6L0L_!:92&YQO'FYM_W+E]:&['UI=J-P[?W"(![C-Z. M8Y ]1RMU&?>0UJ M_^,J<%%^%:/!S.@3JB^GXU% *OX$!Q,MT*:YQ6A0\X9]9>.)@W:;]!NQK?<.'+2A8?3PO55V%7MT"?]R%=A:X9G3[)K M[RL/&ZVY+X;M1CDT3TO[ MV0A^A1*Z^)VZF!D?7)KA;+YR5X/4[K!A\/=G_6A_^WCE+]WVT_W5)5)CY6X! MQ!)+P[-I.F#:7P?Z%ZLV[@INH:Q5:_=(FQ.A:0*^+Q6.2^T+*>CO9"__!U!+ M P04 " #$;@A7U%4 T3D* !T&P &0 'AL+W=O***V"8%,F9G7EFYIE9\O1.=5_U5@C#[G=UH\]F M6V/:-R/5R(6MV=S:)9?^&3W&P-73@Y/VWY1EP+\[?VJL.O MDT%+)7>BT5(UK!,W9[-WT9N+E)ZW#_Q=BCL].F?DR5JIK_3C0W4V"\D@48O2 MD :.PZVX%'5-BF#&+U[G;%B2!,?GO?;WUG?XLN9:7*KZ'[(RV[/9:L8J<U_=N>>39=NF,=/0UM=&)=M=(P3C84E&O3X:Z$G#G_)&Y%LQ>G)P;* MZ-))Z04OG&#\C&#./JK&;#7[J:E$-94_@1&#)7%OR47\HL(_[YL%2\* Q6&< MO* O&3Q+K+[D9<_83:=V[!*V=L@ H&NV[-+B*CKVSW=K;:__ZQ@ 3G]Z7#]5 MRQO=\E*%NL,*U)RL.0DD2K/*,',NQ4K8*HBQAR2K(XXB]YVO@B[C",R-$/5EJE:4L MPB+ $O8E2VMMAL.EXL;Z0HA\%%S#2!N8)0 M&%: 05BO*%;D9QZ%C[4_%D3( M,E@5YT$$]%) E!6#JYFCF=[YHI'9TT?8&@AP:?2.Z#LB,:H DD,-TU2A/TZ*#/Z@4 MUBH)5V3##+K7PJ[OUX-4J3:-+&NYL1",Z7MC1WR\%="RTUC<[G=/FBD=1&K2_87\<<1\+ FPC2 M8SE8A=\;1:0VB?H=EL:?XU7]7Q(@&IP8&MRWF>7Y2OY&$;E"N9HD%!@R U4F MMFHL>:! P)FH,ER)PF"U#-G/MW#TP]$_2(M/.O[VV^ \1=-$<#/$8JX.YX]F@ M$N0F-CR5M\9&!R[BW@ZQ8[RE%.LDP;V!"2[M, R05H\WO27HX^.GNDD\, ^I M4MK<&/ \E,;1./RFL>!JDIB.-6A*N;:L<6R3=."?O@HH?I9O@V6!P$)O$G<61W>I$H#DTOBA=H-G%B[Z[';SL:

G!5T_Y_'_H'SIHD=" D11HTA&922M'2WMXSC_8NP0MHW4514K^P>W?0U$EZGUM M*<\^*2H_S=(6'3(]'S)QC_YFT[)7R%Z#)NL]H8K[Q!%Q^'9XM4&#O-'V:O3V M![?X(#G1YY9XW3,/)G6.!V&]T) [LL:/PN^!O+]^$=MF9.,Y$=%NJ"AQIE4M M*UM"%[RVM'!-;Z@\!SQY+8$[5#1F>W1S5DX=?'-XF?/.7AC6X-:Y'P'F;HV@ M(EM/OM-@-\,3A\"\]0]K8/VU)[8]A! M]CH-DJ+XX9%1TQD/!J4HMN@WH3$*V@B2OQRN_@I<.CI<@2:VI6Y'&"GR. MKFVI_#41P>I;(",24?%D_]U91E:W4OMJK/T]1B#![Z[J!L*S$,=':[?6 [;*@Q2A$3EICO>/DP'KYTSQ^# MP3O>;22]5K!C8K,)"(4[4==TI/"(>Z!GN%--G7^T5,L-&GGC)OW'FK!4[="5 ME(-4O!6PL&>#H%K;U[B6^:BDX?6#X)T#0T]6=Q'V,\2 @?-VT#,QW\ZWC7N5 MZA11G>UM/L,NSTH+D-J37 XF4^>65V[0N;R.HC8D'(#31F2Z.O64_&7T)P6"ZL=][B#1!T^ZCR'!U M^*3TSGU).3SNOD=]M!FD62UN(!HNEMD,A6*_\;@?1K7VN\I:&4S!]G0K.!"G M!W#_1BG3_Z %A@]MY_\!4$L#!!0 ( ,1N"%?E!27B_P4 <. 9 M>&PO=V]R:W-H965T>CT 2)7$A(24 #0BOKU/0 IR:X5)].'OD@DL)>SNV<7X,E* MF\]VP>SH:UTI>]I;.+<\[O=ML>!:V".]9(6=F3:U<'@U\[Y=&A9E4*JK?AK' MPWXMI.J=G82U:W-VHAM72<77AFQ3U\*L+[C2J]->TMLLO)?SA?,+_;.3I9CS M#;L_EM<&;_VME5+6K*S4B@S/3GOGR?%%[N6#P ?)*WOOF7PD4ZT_^Y4- <:7SF9OZ](KWG_>6'\98DD6I[UQ MCTJ>B:9R[_7J-7?Q#+R]0E;BG,(Z_ MH9!V"FG W3H***^$$V&E8\P\AU* -<%+YHMPX@UT)/7?V2NMR):N* MA"KI-[=@0V^4$VHNIQ73N;7L[$G?P9.7[Q>=U8O6:OH-JT-ZJY5;6/I%E5P^ MU.\#X19FNH%YD3YI\-=&'5$61Y3&:?:$O6P;=A;L93\2]J. Z4K:HM*V,4Q_ MGD^M,R#/7_O2T'K)]WOQ#75LEZ+@TQXZQK*YX][9\Y^28?SBB1CR;0SY4];_ M<^F>M+H?\X^XHML%TTQ7:'.IYN2$WPHF%#:A0\4"&FQ)*IIO#$Y%)53!-%VC MQ9?:M&J6YVA\!W,F:"[92%UNK'%Y3.^%K"*ZY6*A=*7GDFT4P-T L"S@Y-IP M(:RC2ZT*PXZQH,NF )0;QUSM7KW66Q:^V,'GK7:BHHL.E["D9W3%!==31)TE M@8(I/:-D$DWRL7^(H]%X@(?G/XW3)'V!)S!UE&7T0:C76ON1@>GSI9%6ADFT MD4OS],$SQ@R&B$+;&\.J6!-XIVPE@I*L411'>3K9ZFS^_=I#O&@7WK8+\*1Q ME(U&'FL2Q>GH(=8DRN,\5.]2PXE:^W3[<6]W9?+>I0GY<6Q#UE0CJFI-96-" MN4/Q&^,6]*41QK%IZR$JJW?V)(IG9/V$73DCZ4A:3%:(8N!Q"=O"=:LU4D25 M_,SPC&5%2KMV/P" +;H35<,^":)CE(?7J%:_8FM;Q4!(8^( M23KA#PH8*YPVB-3XK%HH>BAZ!XQ6"PZM\#] B^!,%@LDL*B:,N2$.TJ$@K>4 M<<2%5KJ6!>&_#&Q#7[1*WMBT<0%6)6OIVG J,463X4#^C!Z.<#@OEP@ K2I5 MUU*Z#5+-6B;BZ(9UU.J(7NL5W_E*0\+N,E8@ABDC,/1K*8NVI0,9D"';3#_A M1/:NVWEP1._T=XE!*Q#;,'H()CW)?08M3EX?O,\%^]RVG8*5+_OJ^+@S[D4P M:YR?]O?< IWQTZK0355NO(&>G>32Z$_MS0)VP]9 RR?[ZGU;V)1\,J:AF%YM8J#.,N9UV[AU$P M>A&Z_PO;Q_#G0<%.4?\N,+1*Z-!XO.B:.H&;,'..]PK MK_'DW2:Q'S>9GYD'R61TZ.=1GM!EN.4 K^&6878AEY >4CJ*AH,AA ?1.!T? M^NF%?[HUHF3/V#9ESK^2$C4'I5$T&6=TD$?I9')(630#-7ZW'UKB MB?WV9!E,3;&8$*29T_S($$5#Y(\2E(4-##X/@]P!!]DH$/@ MP23?PX,T3L #3R^ &.*0S+_%@S2#$9R3@0=QG 8> ,\H"3S(HG&6T+Y;7?_> MY;SV8\)_@H2QHEQ[3]^N;K]RSMO+_4Z\_41ZBXF$L0Q@,ZC&1Z-!CTS[V=&^ M.+T,5_VI=DAE>%S@2XV-%\#^3&NW>?$.MM]^9_\ 4$L#!!0 ( ,1N"%

&PO=V]R:W-H965T-JEBSRBZL)RXO GQHW86\-',G2 MN4?>_%K-DHP=0H-E9 1%/T]XC<8P$+GQ[Q8S&4RRXOYZA_ZSQ$ZQ+%7 :V<^ MZ2K6L^0\@0I7JC/QWFU^P6T\)XQ7.A/D/VQZV9-) F47HFNVRN1!HVW_JYZW M>=A3.,^^HE!L%0KQNS"&ABC8YIRT7Y2%ZNM6D%^>+ MLG2=C0'NL43]I)8&IVDD8+Y.RRW(50]2? 7D%&Z=C76 GVR%U6O]E!P:O"IV M7ET5!P%_Z^PQC+,1%%DQ/H W'J(<"][XVZ.$155I)H8R<*-#:5SH/ ;X:[$, MT1-9_GXK#[V9R=MFN($N0JM*G"74(0']$R;S]^_RT^SR0!"3(8C)(?1O+=5! MD+==?"L]U[6R:\J'YMX3N0 T Z"S1#GI*9926\T1;&I=UJ \DGCI//$ 5(!6 M^0AN!>_?G1=%=OE W:?M&I2EVXKHK#G7W)> SS1G @:1S"_9;JS)#4>4HO.* M5\$97:E(FX=(/S0;R&="_]@BHY ^8%?N*#L#IM%CXJ34S%_E)]D$A!;B;5' MA*8G,3*)@2B( P5%@Q;%B)/1HHP2\S+J WEM8)+GO8&"%CL#03__?_AC^%TR MT+3*O@"&2(71U.I!()6A@:ILB6*D]$AT!F(QY5#F5 4T]&I*L/.Z))+ORD:G MK8H1O0UBUQ$83^GE/[U=$K1]9P1.GR5*A$#S>D0E*4U7/H 9%\BWH M/@LR>RDS'DW/K5JW(KOJO*2L(<$UT7#?K;YD*\>UX41%Z:6 49HGUEM.2T69 MZ?G993A4R0M8O+J\[B\_]&6^4D9NE&3IAI+6+,FQ<2ZT*N (SO,Q7&^+14VB M7449<$]:WE1FZB>O(_[@5BNJ B&PO=V]R:W-H965TN D6[K0_#'A2;B87:DB?)<=NO'V4G3@JDV4M,4CR' MAU+(:2W5B\X0#;P6N= S)S.FG'B>3C(LF.[)$@6=K*0JF"%7K3U=*F1I RIR M+_3]@5]W>PP%@Y'\""+> ML-'=%FI4WC+#YE,E:U VF]BLT;3:H$D<%_91GHRB4TXX,[\3&Q1&JK>I9XC. M!KUD"UVTT/ 3Z #NI3"9AB\BQ?0CWB,9G99PIV41GB3\7HD>1+X+H1]&)_BB MKK>HX8O^UQO</CA'9 )KID"XAHV+*\P!6: ;5#1X$$BM0&I0- . MH,'.^3M;YM@FNE!GG#8!I5HPS3"J'OS($&YD43+Q=G$V"H/AE2:6HI2"ZFB0 M*^!=2=;X]+;8O2TPD<(M)E@LB38*FF@(C)ZG70[\G11R 8;JK&1.5;E8@[&R M)GNJ#PQ?N> T!BFLI4PUG$,\ MK 8 %$0 9 >&PO=V]R:W-H965TG_;[+%E1(US-+*O%E9FPA/5[M MO.^6EF0>E K=3Y/DJ%](578NSL+:K;TX,Y77JJ1;*UQ5%-)N+DF;]7EGT&D6 M[M1\X7FA?W&VE'.Z)_]Y>6OQUF^MY*J@TBE3"DNS\\YX<'IYR/)!X!=%:[?U M+-B3J3%?^.5]?MY)&!!IRCQ;D/A9T82T9D. \6=ML]-NR8K;SXWUZ^ [?)E* M1Q.C?U6Y7YQW3CHBIYFLM+\SZW=4^S-B>YG1+OP5ZR@[''5$5CEOBEH9" I5 MQE_Y4,=A2^$D>4$AK172@#MN%%!>22\OSJQ9"\O2L,8/P=6@#7"JY*3<>XNO M"GK^XL:4\^\^D2W$%4V]D&4N[DA+3[GX(+TGZ\[Z'ONP=#^K;5Y&F^D+-H_$ M!U/ZA1/?ESGEN_I]X&M!I@W(R_15@S]694\,DZY(DW3XBKUAZ_0PV!N^8"^X M>J5?BVV\&1\G; M5Y >MD@/7[/^']/S?VV*(.)9)&>1S* )'0N8F? +$C.CTB30=P78J/ADO-5L9)2.V<7+\1MR0C5'PLQ;B:H^W$8!C*#;ZPPQ-3 M+&6YZ0H%(+DIR'F5@'G0%?"1$5:C2FR!Z;2KK M%V*,.*'AZHPZ'U(ZB?$?-W$4^UO&GWYL]@ )P=[MSQ-Q*&?Q5Q"J$]?2SDVS+CFX2-'8.9.I\-8-WS@L &E5)AMUQGKYX:-X)ZU5 M[A4+/?&)\_ $, R@8J+?75&87,TXG.SBTBIC,3=>*,1=310#5X:#"?#!3*Z, ME5--H@YPG?Z EAX\E.(>=:5MQ,PBHV-LJ1N>.F3=W5HZ>MX'(#4KE0,V9JR0 M*/X5?;?JS4BNI&1=6]M)1$/[ M+-R"?CXJ7(J#X[Z,8+$3I#[3GDWIH,5IPGUJ&B#7;YSL[AOJ@!Y H M)Q-I+G%>T5Q\-C(>6W4H=#>3\;@"4PV9@'XC(->KTQD2_.C%/RIJN[372FLQ M13DQ7X W4(](GT7@73C/Y' <^Q'*H3;'JT& @=Y_O+Z++TM=P>QRJ=&^'%$< MXN:*,3U;U(B#KKBH_=HT?(Z 9F9%>/;N5.S+ PRG ]$KKCK&0T(WS=5P=BV,-X0GD,>BB7T,@(NZ>8<)2J M,N ,4\<819:#.'B^8>!D:#D7$BQN@^"_PA^Y#[RRFM;UU:G M2(TJ0VHFVW&X5@\\4Q9(/4?LOZ[M]E=2=%4XI\'@*.X+0)ZFT/ M^C20<[HSZ'=G+%B2N EC4X7R9J+A ?^/Z5I/UONH,&X4VLD*13,-;8U6 O&C M)SAC@:RVLH'V_T66[XSA"X>X!<%(AVEW:<- >1E3E>'$!!PX"I7Q"OL$%&\W@X@C>")7F''GW MQ"?&6@_L:.8U+F@!\R:QW!?65//%X_F3[P9?]68<4.SH[.9]+<. @@GP7#B6 MACG)(H\Q>Z'X=H\4[-]"XLA<>1S%P. (A*9XOF9RC\IX"G4 UP$8*=L;= ?' MP]YS=X?^UC4/IZAYN,QR7U6ECS>^=K6]+X_C-?%1/%ZV/T3N!J 95)/>,:ZG M-EY@XXLWRW!IG!J/*VAX7.#.3Y8%\'UFC&]>>(/VOP@7?P-02P,$% @ MQ&X(5]M9/F$L P 0@ !D !X;"]W;W)K&UL ME55M3]LP$/XKIPQ-F\3(6^G;VDH4F+9)($2W\6':!S>Y-!Z)G=D.9?]^9[OM M6@0%ON1\]MUSS_ERY]%2JEM=(AJXKRNAQT%I3#,,0YV56#-])!L4=%)(53-# MJEJ$NE'(*=!M73/U=XJ57(Z#.%AO M7/-%:>Q&.!DU;($S--^;*T5:N$')>8U"N5,#&HNO&3W MJWO8V*#.CZ)23GYF< M,R6X6&BX0@6GLJ[IIF8E4S@*#<%;HS!;04T]5/($5!KC. MXW"V78:Z81F. ^H'C>H.@\G;-W$W^KB';&=#MK,/_76%V0OU.-$G\>&=%ZR6 MK3 :N !3RE8SD>OW\*U$*&1%O4S.8-B\0M!(9C0?3$F6")FLF]8PUW2RL#W# M,R!OR'G5&LP!UZ$;"IWYT-K%)! '00=&@UW4R)73:'T1PAD)2 M;]HH0[AQ@X"0V1T%7J!'TT 341N*;.\MC@[[4<^*7GSLM[&[>MQ,_UO^;^\?Q M@JD%I\)46)!K=-0[#D#Y!\&ULM5;;.*D?>CT M 2*7(FH08 #0DOKU70 2+5\B^Z4/DG#9<_;L+H#5;*WTG6D0+6Q:(*/!]&W+]/8*A5K/HW&T7_C,5XUU"\EBUK$5WJ+]VMUHFB4#2\5;E(8K"1KK M>70YOK@JG+TW^(/CVAR,P46R5.K.33Y6\RAU@E!@:1T#HY][O$8A'!')^+;C MC :7#G@XWK-_\+%3+$MF\%J)/WEEFWET%D&%->N%_:S6O^$NGHGC*Y4P_AO6 MP3;/(RA[8U6[ Y."ELOPRS:[/!P SM+O +(=(/.Z@R.O\CVS;#'3:@W:61.; M&_A0/9K$<>F*E+NT%R]CR-,19&F6'^'+A_!RSY>_&AZ\YZ84RO0: MX:_+I;&:#L3?+X4<&(N7&=TEN3 =*W$>T2TPJ.\Q6OSXPWB:_G)$;S'H+8ZQ MOUJ.MZ/IS()MD#X:$=I0)G1E DHR#DD&)BLWR$;>_%JU'9-;NF^ETLZ82>"! MUE(2<4.O@4%0-;R;3 /XW5DV'A' =.BOF-B.@.X;9>=G!]FA':(8I9-IP&2C MT_/3IRAZ8YP_K.NP=NA9,^M)QGE\?A)$G\?%R6.*&/9A&[[Y7X+.LJ _'^=O MBWD\RHLB8$[39Y@W11Q/0\!%$4^>!?SE0?]/Y@A1_>@\.+I74E1QXM*T7&O5 M>FB-%6HFP%AF>ZOT=I"8C4\H=D[/.A=;J'IRHSR$^H3@_S+_ ),=@T[I_81; M U_CV]@]HJB=)R>6&8.T09F\YZHW1*?JFI9@N27X/1-]8&."^@F3)3Y* 904 M$)<]&J? -25+'P+6O1 OH8&MR,#8HVI&L&YXV0 W(/@=I=V14QGHY:<\4R)7 MDM>\9-*2"\W9D@MNG7"?@X>:#,4@D-LI>W)$H"TR'<-UP^2*A/-GYZC3ZI_0 MQ4@*K2SIWE?4*&P3SCHRHR051E)=M"^(ZJE9]8;L* /Z@4=:V$4<$I4:9\H M>WI:D%&XWWJF+>KXI7J5;ZS&^9$V=)]A=>C=EZ%E/9B'QO^)Z165 M 36!$WCTTD$.C33,+&J\PULJ2RU0S]LZ/\':F= ^[52=C]Q#H9_-(O_ %!+ M P04 " #$;@A7=N:8ROX& ##$0 &0 'AL+W=O+ MJT2J)!7'^_6[(RE9;NSLY4LB4??Z\+D[TI=;;3[9 M'!0U4J>S4HG*N?CT8V M+[ 2=JAK5/1EK4TE'+V:SNE KO M#-BFJH39W6*IMU>#=- NO)>;PO'"Z/JR%AO\@.YC?6?H;=196 F?7X[97DO\*O$K>T] V>RU/H3O[Q970W&'!"6F#NV(.C?/;[$LF1#%,;G M:'/0N63%_G-K_3N?.^6R%!9?ZO(WN7+%U6 Q@!6N15.Z]WK[ \9\SME>KDOK M_\(VR,[& \@;ZW05E2F"2JKP7SQ$''H*BU,*653(?-S!D8_RE7#B^M+H+1B6 M)FO\X%/UVA2<5+PI'YRAKY+TW/4'I_-/9[>4UPI>ZHKVV@J&ZW+DR#K+C/)H MZ398RDY8FL%;K5QAX;5:X>I0?T11=:%E;6BWV9,&?VS4$";C!+)Q-GG"WJ1+ M=>+M34ZE6@B#,=4[L2-F.;@Q1J@-\G,"/VN5"UO ZP>& >'WFZ5UAGCSQS$T M@K/I<6=<2\]M+7*\&E"Q6#3W.+C^^JMT-G[Q1"K3+I7I4];_TZX]:>EXG*?, MPR\%^@6A=E21N3:TTV"]]-)+YWUIC#CJ-3R[F)Z#4"MZR,Z!>@DX,N4*@PA5 MH TR;8 V';M-]QKTD"7DS=;H*[C<)<%2FBRRB_8Q74PZLU8^_!^C!DOA2-II M_N",S%V;'8BM,"OK56LTOA>J'*%1TL5O0[BQG.F!KX0D&*>-DG^=0H>CCN9= M(9S/H,6897)G.:1["@E$71O]("L?Y[-Y,LYFPX--V!R+_W$A# LO= 6:\ M1P66/BY'8K8QN[B+C'3C"FT\%'XS]^YH+X-#BI;8$U2&\'Y/!5\6"=SU"."1 M@(]$ QM8V?L8"\AKP4W(^B/Q,4#-#(37E((+(;\A#<54/*RXNU*HA$9FGJ.U MS&\=M<%;D]L&ZA% M7]8HG6 [I^K"^Z/%_:8ZFMQGGK-&L.XND$R$FC]C;K%;J5=<(R4E!U*M9.Z9 MK2D7LY7$S+BW#<-6[IB9QT, L2&SW,:'+=1$Q<>RE)IMEG]243&2@B>JK)H* MM(HQ<>> M:CQ./C.P6 O""?OHE%IMSAR:BF.(U*#JIP"J?W#2RS!N7D.KO-%MJ>5:T6YP M'E*15)_QC%N?2J&"FYJ^]Y:__FJ1I?,7]H ZOH%RF&2ROU[Y(L30/H-K?Z:K MJ&/(FO8^X5JEHQ3-)H[HRRV/61]VND*0&AG1.($F2EW5WA0T1S( MA)VV'$(+M/PKMBJ*UZ#C-4Y?TUEK"&_61X%@WG!?;O%33;4D3_1V*J#0W .7 M?*7D!9]%. QB)FVBQ<\-'U)$GNM&'= R;PB\ /;1CDX*)4.9"JXT-O0$3X\\88]AT<=J.U;>ZA)WM*>4_1WKKQ5'LT5PSR_8 3.*PO&B6, M.;6S=)Z<**A>TR>E2KH(&?&%K),0RMH/GE!3CP&X-W%8U%KN2,NO?BMQ7#&N8^QLO09_3F'GZARX1=NA_M) MR8,/MH6D@TGHTVC;T?=$W86J/IP,[:@KZ9+JF[T?=^&F2F5A(XL/E9*CP"5? MCM1X"-J/VWTPX5+*[/QW9]?G_>/(J];YJ3/';_Y*2J\W5(=TPX9WC;..(N , MAG)^3?#HDZ5]#F_AFL4CHP[?PS622+&;3;SOQ]'QX,8>;U9]T MP_47,N9:/>Q;I"L_$_'W -4#L.=^QNM?N%XB9<-.C]OI+)0 MXII4Q\/Y^0!,^,D@O#A=^VOZ4CNZ]/O' @4-01:@[VNM7?O"#KK?;:[_!E!+ M P04 " #$;@A7032?,'H& "R$ &0 'AL+W=O7I;0/YU28YL]"XXD->8[OWS,3P9C!D0%99XM2/S)DL#\0.7ILS5)8 M7@UK_!!"#;L!3FDNRHVWF%78YT\_2&7%5UG4)#Z1=+4E9-R[XY&'<5XRRAI# MY]%0\HRA=^*3T7[AQ"\ZIWQ]_PB@.F1)B^P\>='@;[4>BNEX6R3C9/J"O6D7 MZ338F_X\TDOELL)PL$[\>98Z;]$#=EZS_F]+\)T/B=D'BPI25U ]H9$\6_86,> S/>,M=V"+C M2&551GB2'CRKBURD!%)F!$[EPAL!HA5"@F;.04J,%95480+)U6Y&5DA1*)FJ M0OD'H32O-38G6SS$)3+2-"6_)-+H$KYP-'4+D;2F'^4 QC)K$J) M X>2'8K?V9:8'(JKE"LOTX+6K$)=6'I$K67^#43&SA^UX9\V-,ZH"ZD(TM2, M.P&I%2I'="J314RHXXRVZ5/DAHW[Y%!\C#X-,F/9LV[==/9#"G((BU_ 68,[ M@I2(TZSPLV?.<%?$KF+;@E3PD"M4W:-H#%*W;RV>Z:'XHLWFA+ O;;S(C+4F M-58RR/2A30(BU(^4%Q(MQ#THU:8"WS:02V:7 /- MVS?[23(^"JNDSD7V:'F8GQSUP5\8:*=FH'ARIE!YR-&Y+! [B1M6>1?RJ/0= M(H@TQF9M]$YN2@RI3'#,"+TR3N&\CAF5UCXH/1>R-'5@4E59-Q"V.9'KZVG.9F5&D(9AU\#\7-U8?KG9A&9\\J5%6XI*T[)K0$3 M\CIH!_9";<")0,#^Z@Q].T>S)BJHE@8+3 MS?FE8## ,-S(2VGS'5B"?L#23W!R$;@YT6]HL9 ,=*WQLN#-6\EX>SP>!S?M M,\UF%&E[5L]!;S%)PE&5A%7-V'02Q[:1 U?%]4R61WK5)?8I,"YVU[N1*3OK MA.4XU[>Z ,%2.).TC_K-O5&&=HH]$#N^G\PHZQ7$D!L_$(=Q!#V80SV;BI^! M)'6VB(5@D+W9 +>E+[MRK4[UVWR34@>[R -.?>I._1#')0Z9,H7RK)+Y7+*6 M&.%#B<^5/@?%59"NK+:6SXQ&49\[%I&6:[ G]LTE6W_]R@Y^J[)M^(T\KD?S MW*+;/H/%EIB\;_]P0)/D:.WII=F/&[*4H'_WNQ7K;Y/M@^GXF;=;ID.;O"W> MF.RUGJ.5-53;![L=L&AH-4BW1#S666<4^CZ'R" MH>N"V,Z@\V)!^;QA!+>-2;\U-AK2-?.*Z8ZQ&1\N@2_WS->^7$0QBB<.R BB M-%W@G,')Y)LC=D-W!E6S0;\B]^>X+45,^ QU<&^I" ::(^DW^ M=1YN/'YBZE"#JPH*P+KKVB]-]=AV"+1-(%>**8YC^F_*A^)#\\D2/_#*> >) MI\)3+5G)1RMZ*U,KOX@79RF#VTH.]J+J3P[6-7P[HMI0J!4DI^[_5T"Q%H^2 MPRCW=INSZ?W^JU%NNJ",>O?(DNP\W)9!)N96O%)VH]V%_"S>0U?+XVW^D[1S M[O&"9M@Z'K[?&P@;;\CQQ9LJW$I3XW''#8\+DK@/\ +,SPP^8IL7=M#]F^+T M'U!+ P04 " #$;@A7F'7/-@(& #[#P &0 'AL+W=O_F2%/U]I\MCFB@X>R4/9LD#M7 M'8]&-LVQ%':H*U3T9:E-*1R]FM7(5@9%YH7*8A0%P614"JD&YZ=^[M:4F.QL$;! 6F#I&$/1SCU=8% Q$ M9GQI,0>]2A;<''?H[[SOY,M"6+S2Q9\R<_G98#: #)>B+MP'O?X96W_&C)?J MPOHGK)NU23" M+9.EZTP65!*U?R*AS8.&P*SEP2B5B#R=C>*O)5OA1/GIT:O MP?!J0N.!=]5+DW%2\:;<.4-?)@Q?W+L8>+WX! M[[JL"OV(^)/!0CC,X#=X )\\#<[X#:@ MA+!H[G%P_N95. E.]IB=]&8G^]!_:&?V(CQOWU-8V)GXF"-U,$55E=&4D3[&\S^V,3&JM]IZFA;!6+F4J M6,]P,S1O7LVB<'IBMRRQK(S1GWK%YK]LNK=WQ:'T,H\>HO-F[1.J]K5URJ1:@75DGS"998>]7ULZ@1N0H_]VBU4[ ML0;J8YZO6]R\$DID8DCQW:3IKZ0WT^719M V].RGHP^G^#%Z>T\L;I ADY:* M/Q.2K%O6ABPPA$6*"X*B3CK2I8M5'0 M64^)C.3WP20YI,>$'F$TXV<<'5**I7JEY%<24Q0S:@%NT6!*?F,;C:/)TMPRNZD(T M)#'XI:9>1!;2R91K)S%*9+HB0\B;.N.^X1LKMPCZUA7O5B[;Y?T^+E!+?]>R M83\'MBOTMT:3-<8\2#J](QU.*'6"KD/O="T*?7=&L"]ER!.X..GAG@1MB]); M*=7ET-5FQ]@]>-F*5&I#;.86NZ?-<+[L/WN)U# WN,*0:<1K8D33ZXGFRN\L M^;H4:7LF;J+29)$O,K[Q-[I4^F-UW[*WP^;K71.EOL5U M2=XPE X*?#PE<[)_G[3;Q9-:PYQ9'<\#)OA1$DSI=S(?MZT>X@B2,[;\N9:_%Z8%9\V"ER2:#"<2TJ6$R>SW5V@G-_W MW$/J]<;YF[ RIE&W95&%-P>KIJE?'AV%;&5*'<:N-A6>+)PO=8.??GD4:F]T M+HO*XF@VF9P=E=I6!V]?R[TK__:U:YO"5N;*J]"6I?9W[TSA-F\.I@?=C6N[ M7#6\9!KY(+A]>=]#^)[_!E MKH.Y=,5?;=ZLWAP\/U"Y6>BV:*[=Y@>3_#FEO,P50?Y5F_CNZ>Q 96UH7)D6 MPX+25O&OODUQ&"QX/GEDP2PMF(G=49%8^5XW^NUK[S;*\VU(XX6X*JMAG*V8 ME$^-QU.+=6MD&4FZ!TE:M+5S6V6N*W^LGJN2UL8TUX?=1 %U<<94GN MNRAW]HC<,_4S)*V"^E#E)M]=?P0;>T-GG:'O9D\*_+&MQNIX,E*SR>SX"7G' MO>/'(N_XCSJ>P5_UWH:L<*'U1OWC8AX:C^KYY[XH1"4G^Y6PHUZ&6F?FS0%: M)AB_-@=OO_UF>C9Y]80+)[T+)T])_Q]R]_^0JZZ\R]ML>^].71;:ED%]7AFL M*6M=W2D;T._SW]&#JG&J3DLVVGM=84465S0KW2CM;3#*5OAEE/.YK8 2*G.M MQVVW4!;FS-L 8T,8*_2DRHQO@#OHAZI=($-(5][I"".1T]E!?.*[\.BA%3K+ M?*N+D=JL;+:BS3K_';T':00.5;*4BSNV/Y^)#.,S! 2X1=,R%QK^#;HPL.TC M%N6Y)>Q$*Q[3N*,*(JW+;::+J"IJYW*;0Y5=X)$@&3Q',;FBC;\6ZJ9RFPJ1 MR^W:YA3[2)S'ZK>*2ZYT1FGJ6MO".YVK[[[]YOEL-GGUV]7UM5Q.7WW/M&?> M-$9]MD;]K)O&>/5KA2N/&$V/V8G3%[M19K4P34AYL+E%_D;J\F^?$9#,^=IY M33\[97C0Z1HI.&B8/63)(;P8!DUA6(+J8NE-O/J.JM+B?2_TEF]LLU+TA34G MH5H;L1/_5\\PSU!;2\4R7L:(IJ(KHY.(Z"-QZOQ:-PI!5[UV[+%!CN(/,C=0O9NYU MN-%,7@YE7+;/^X>9H"D;6Z <]%T*!][02ZR W[@JJ8+N'IY.1I/)1 *'R8WZ M,<]^;_.E:+"2FM!T[3''ZBK&6*O#F2RT96F0;PB%KF@-+9"7J-0;-B"C?GCR M7%;4VC+;^"\TJ/B(-FX-![4*]O;9G=$^M03:"^(!S%B>.L(L%D;FN/.+:\Q87:3V92^.AOIA M\8] &R(3RU^\W*MA%".N:4B;U@)7((+Q-%4W5V*7L"(I[N)J,N;>K$ MX,)Q@)P&2RC;0DLP&H=8#O.:@HW+#A9% ">1S;B\T7YI&DE,_ZJN*@&19'!@ M&I3D ZFWE:3Q/@KPE<*P?8)@-6H&)K1/5NQ8O6\]A<76M#Y77Q#9U(((XE3Z M)'-5E3A<7T\I1.SXZ?FKH(!\J%#+"="-BBN$"+*O.K\)CJ%'Y.@W,O.XLRN- MB$J2 $QM%K-X>"918J/2P#[W3/E8)M_>(M1%L\ MC8VM#FK,;> S6)6Z:8"/LAQZ@ DHF^BGN:V1%AXRF*4^F(&R,%7&O, MB!YC:X"R0P>N40*6SR#U")$H'*:]*O0F)AVIEDYVH"G#3"<*T:0N2!$S6SO' M0X/ZI@!(.H^\0 (0K :KD#R:'?^&.DO,":EZ30(#+ X=TA)WV52+5EH,X28* M@%" $("9&W4J0'!.//JSJ8R'9" IB@7!DZ&ZT?0I,VC4? MUF+,LH4\,5;@7 M^:NMQQ?DY7<]<_AP=='/>K*>+$6*+'*7](%(&;(U1SBRPJS0*#6]V&W74> 5XE@P0S]H/T?>/K5 B07J77V"_>A;@YE0HR,=%L1>:TL# M9 8LFPE_KJR)(<_HQYH:H5ZF]Q_O U1:#/.UTJ"N)/?. +8CCE>YM12H'\" M96",,$QHAU9@Q+&[*W8'W5A%ZP-M9B/J;L#6^->S3J8OGL^BLLH(#0ALVK4N MVCBWX#)V1APO@C6A"5TUQHVV81&#"MQUP$@V<5\UNY=H78JA\SMY 3FE 4Q7 MC5J_E:=(U^%T/%6 J4+V\# !-\Z[&R/)9F0"'-0))J(-2+<<";!!>[!B-^D; M00])%OY.CP5\MGUBFAAP5']TD75DB:O$ZB5T5=M:2^X*ST*RZ "(3F/%-^=[ MB;E$/)BU](8H'-^'$6_6UFRZHHN[#:YBY]W; PRBUCD-Y$GC3P(.9NE +5-% M2']SS/3ZAO735PCS6%;HGL1G ]4D.!.$ZX5%W>KH5H%@0Z ML;LFB(9 CL+H%R5W3E.@+L0%3GLM.6,,EBB@&H(=@M[E$8L%+24+?6L0,'8TP/Z99BWL MYB]W,(45D!#T;K@AP];V1@4T@1C?14T+L9G)W)F)Z,^IK$RZU4"0 >TT5J_@+&*>Q(B*;0,ZQV1J.QOTP+6_V M)$SV0DBCXD$/X*B+>@>;KW8*GR%@>^ MCSJZ6L4NJM99DDOTJ0>,8VXRW8:^O0OR5TZ9>>0VJ7W6,46/@^\HER UK-!YM8!C#J;Y9NC9 1&0#@M]W3-@NK8BNA*];DJ&"V'F0C*V< MCKPG ?4@&RA_=$D_W1+\/3H11]N1'XL])63;Z7/3;(R)N\DA/J5"3'0L<8#* M5<_D"5*/36/83AHV;+?[V@7@5+ B5<;(6+V37FQK.7&(!^KRM/4>MK*]UV#M M&LQDQ#,MO8S8VB/+W!36K,T#HM,S/CABEE!!;";];,,?(S*D$CTA0:RJ#IDB M XUL8#?1 UXJ/%;0-T(@SU/ +TBB'Y!)R2VJ2O@PBZP[+H,2](/,JNWDPA9< MAY5:D.W+=KS&GE5B#CA/"XG I&-GI^D4&&X89Z3@@TSD".JA:M# MG]8]$PN-WL_RF/^."9A[QW$\BG3@$X6]8:X(L0" MZ1X* +LJ\J]$4+R )J'>W:&XV'1_ZS3;?PP*0^YO ^1T.@S8EQP*S$8G)^>1 M=^'R?+;+N!XP&-GG#G9#L9H*V3\-T8P"__NSW[@?TUED-:23 Y6VXCY1#A_2 M^3 ;.F:LV[ZL9?C&2&-"5DLSZ+=M-V$NAE . !(NS#L 0;UM2>SVR&6+.Q@K M/$^0R=R=.1R2/&PY,?JXTX$$D#&HAIM#]&?#"B"QE,8>J(#2.\XY\[R$"86X%,>0HK3_K_SZ&3/8'@OCYOL,M+KB7D6'_YO&[E RHOOSZ MZNR,%CMX6B2538*+&R-EK'3C3G*YNWB06YU@ /Q=?MM%VHX.=(+'T)=2YT:P M=VM9#-GNJVEGQ+<'=;YWA&V;;D_"1SS$$EOR_@L=9@X:GI$,V'LPKI6P "#( M>-]7MJ/!UU)LTI?R35C0H&KBA]/^;O_9^2)^;=V^'K]9@_XN^4VI, LLG8S/ M3P] ]>4[&ULK55M3]LP$/XK5H8FD#:\5@5E,!=(UF5)Q.,$"KX>.YZS M<5S39:Z, \=1199P ^JVF@MMX8XEHR4P23E# A9CY]P;S4(3;P-^45C+K34R MF=QQ?F^,RVSLN.9 4$"J# /1OQ5,H2@,D3[&GY;3Z20-<'N]8;^PN>M<[HB$ M*2]^TTSE8^>3@S)8D+I0UWS]%=I\!H8OY86T7[1N8@<#!Z6U5+QLP?H$)67- MGSRT==@">,\!_!;@/P6$SP""%A"\5"%L >%+%08MP*:.F]QMX1*B2!P)OD;" M1&LVL[#5MVA=+\K,.[E10N]2C5/QG#RBE41S$/;-L1100F5:<%D+0!_1[4V" MCH].T!&B#/W,>2T)RV2$E=8V##AM=2:-CO^,3H"N.%.Y1#.60=:#3P[CAP?P M6.?<)>YO$I_X!PF_U>P4!>X'Y+M^T'.>Z[7Z3C&"[A4$EB]X MS2OHN^R&+NRG,[UM)"N2PMC1S4N"6($3OW_G#=TO?95^2[+D+VO3_P3;S3U M>OR)'DS-'/E'WTRU*R*6E$E4P$)+N:=GNE>*9E(TAN*5;85W7.G&:I>Y'JX@ M3(#>7W"N-H81Z,9U_!=02P,$% @ Q&X(5UB-)I5$ @ B@8 !D !X M;"]W;W)K&ULG95=;YLP%$#_BL6D/;6!0#ZV#)"2 M;M-2J5.4=MNS@R]@U=C,-DG[[V<;PK(IH5)>P#;W'I]KQ"4^"/FL2@"-7BK& M5>*56M<+WU=9"156(U$#-T]R(2NLS506OJHE8.*2*N:'03#S*TRYE\9N;2/3 M6#2:40X;B51355B^KH")0^*-O>/"EA:EM@M^&M>X@$?0/^J--#._IQ!: 5=4 M<"0A3[SE>+&:VW@7\)/"09V,D:UD)\2SG:Q)X@56"!ADVA*PN>WA#ABS(*/Q MNV-Z_98V\71\I']UM9M:=EC!G6"_*-%EXGWP$($<-TQOQ>$;=/5,+2\33+DK M.K2QT47O'+]TYG"08SOF$L$L(G7>[D;/\C#5.8RD.2-IH M0[,#5ZK+-G*4VY?RJ*5Y2DV>3M?F> E(]"0QH;Q 2RDQ+\ -WR$HN &A4$8#?"BOMS( M\:(+O'-EWJ#=*UIS0O>4-)B=J[J%3LY#[7>S4#7.(/',AZ% [L%+W[\;SX)/ M \J37GDR1$^W#0,T#G;3V_&I-EH24>O_#[G5'0;FF"D8$)OV8M-!SG?!;Z^0 M&X:^)3?KY697G=H32/,5X0MNP\RWW.:]V_SJ@QOV&^9>]/-/^D,%LG!=4*%, M-%RWK:)?[1OMLNTO?\/;+OV 94&Y0@QRDQJ,YN9URK;SM1,M:M=M=D*;WN6& MI?E9@+0!YGDNA#Y.[ ;][R?] U!+ P04 " #$;@A7-YP/:V\$ 5"@ M&0 'AL+W=OHS&Z6C)/#PHW&_67+'PY2RX2*' C M&N5OS.X=MGI>,5YNE N_L(NVDRR!O''>5*TS,:BDCO_BOLW#DI%,\"7B3)_ 6>6X:[:7>PD$F_+-8.V^I0_[M$QSQ MSOKQ>-=PY]OA1..C ;6#&VIAI1 M+_>1_!\P?Y1(NR(W52WTGO/1:-$4TF,!UX:JIUU\4X@YAC:B! M]-?"DIW4 =@69(W4T;X,[VW::RL)I%:4^"UJM$*I/7_'VD=?3\0^ZT DQ*&. M?/GB(LM&5[\L%JOP.+XZ 1I)9.W1R@HV'3.IXZ@*>UX7,3HC2DTU;L(P<. - M\*Z&\>CT4S!;6"]SA;%P%YRJ&]PV*N+R@,:.,).%=- M0;E4BOUBK(5F%XG$"1/&%AED[7EB"=*$7R%%SIA3%R!MK M>8U:P39"N9.@59(8BJPQ1^?HW @)$[ 1TD)]U,U'?=C**(;P>TWM%0*1)0UJ M%[R9N2\M8J#FY#U4<68ASRR@B8/=Q %JZ)"; P%)S2IU(7/!Y\FAX =X7PI/ MJ=@3$<#[FLX>SGP;DVO(,9C/&X*KUFACPTW&,1K7FC;JIT98ZFN*=(.UL1Y( MWH]V=:5I5,$1^!CF#4-Y^M+H>,YU_?Z@4?J*_Z@SR<P?]N1 ML,-!.Q$.*XU[O&(:VRVQ:.;6?CI2Q5]#"$J="M>&.R0^%*HG#0%'4A(?I-DU M:VI825V";M@W_M.CH[I"NPT7$@:AV1A/[6ZUN_,LXE'_PSQ>F#X*NZ69!@HW MY#H:OGZ5@(V7D/CB31T._K7Q=(T(CR4U#%HVH.]<^L,+!^AN@O/O4$L#!!0 M ( ,1N"%>9[4JPT00 ,P, 9 >&PO=V]R:W-H965TJS7@,836I2--YNZM6LUF\K65&4#UXKH MMJZ%>CB'2FY/O<#;+=R4J[6Q"Y/9="-6, ?S:7.M\&DR1"G*&AI=RH8H6)YZ M9\').;?VSN"O$K9Z;TYL)@LI/]N'R^+4\RT@J" W-H+ X0XNH*IL((3QI8_I M#5M:Q_WY+OJO+G?,92$T7,CJ[[(PZU,O]4@!2]%6YD9N?X,^'V;CY;+2[I=L M>UO?(WFKC:Q[9T10ETTWBON>A]J M\T9P96,/96X4OBW1S\S.6XTK6I,YK)!KH\GH5BPJT./IQ&!\:S7)^UCG7:SP MA5B<7,G&K#7YI2F@>.H_05P#N' '[CP\&O#WMGE'(I^2T ^C(_&B(=G(Q8M> MB-?G2&Y@(Y4IFQ7YYVRAC4)I_'LHW2Y:?#B:+9<3O1$YG'I8#QK4'7BSMV\" M[K\_@C4>L,;'HL_F6'Y%6P&12\2;RR8OJU(X);N5.VA:($LEZ\>C,Y)DQN1%E1<@OYNI&57)6@*1%-@7[JKLPQP$\D"R@/ M.$XXY6&"8QK0)+.3B&99B@$A%]I8\G,%!NP.19MCZE%$4\Y(0,.,DS#", $9 M!2$;D[D!J!X-[8Y7('2KP*$-0\I8A(XQ0T=. S\A"0_)K32BPHV#.*5^%%MP M-$HRNQ(%E 4,9S'E$2/S\OXI:\\6_F\: \:I[_L.L^^0!C&CS+=$,LPF.4(D M2VF ?&1Q2J(43P%IS +^31IC9(=GED9TC)'&U/)/HQ1==U2&/*(L#"TJ6-K2Q['Y?J3]3J.W[]B?QQJ.X^ET17$_OFZ4[U$((C' M$+C'.XX&\K-+$O7!DGA,1E%J?T.:\1#'A.'31TQ&D5'O,"9ED\MZ<$R";$P2 M/[!.+$:)8=WSF'QJ!#:^W-&22X5(<;K;M-.L='';?<.U4"M\.XJP,GR'(V#8 M-T8Q-H9LW&V!N"X[! M &F"'QXA[5W$Q]1GO\G7M"I4?VYZ1^-$Q3?-!T_P' M-'VF-> Q[$OX-0H^NN7+7ZCNXV)ET%,=F[8=: PK3W:%OQ M;6.ZR^:P.ES5S[H;ZJ-Y=\^_0EV7C285+-'5?Y=@RU+=W;E[,'+C[JL+:?#V MZZ9K_+L!RAK@^Z649O=@-QC^P,S^ U!+ P04 " #$;@A7A;%H,I & !8 M$@ &0 'AL+W=OC8V2RUX MY846]9B%83I><-D,C@_]VKD^/E0K6\M&G&MB5HL%U[&2S\2%L+\MSS5FX[662BY$8Z1JB!;3H\%K>G"2NO?]"[]+<6VVQL1% M,E'JLYN\JXX&H7-(U**T3@/'[4J]]K?^M@1RX0; M<:KJ/V1EYT>#?$ J,>6KVGY4US^++I[$Z2M5;?R57+?O9K!8KHQ5BTX8\X5L MVCN_Z?*P)9"'CPBP3H!YOUM#WLLWW/+C0ZVNB79O0YL;^%"]-)R3C2O*A=5X M*B%GCS^**]&L!'EQR2>U,"\/QQ9:W;-QV6DX:36P1S2DY$PU=F[(CTTEJKOR M8WBS=HGU+IVPO0I_634C$H4!82&+]NB+UB%&7E_T1(A3K1;D%+YJM +2;.?D MU"=8:/+GZXGQZW_M2D"K/]ZMW\'FP"QY*8X&P(41^DH,CI__0-/PU1[OX[7W M\3[MQQ> 8;6J!5%3TD5BR.26G/%/2I-SK:H5HGD/J5V>[]6]V_/+.5*E:J!5 M-C-B75MTD)7_P+3%XU.U6/+F]OD/.:/9*T,:D(?A=>O8PCNV[!SC346<8ED* M4G(K9DK?0KWV>I9"2U49XHTW5E0'Y'*NA;C34>1"WMQ=<'WA+FQK])'+NL^& M\59_JM6$U^2MEBW^SW@#E@&?6#(D.0T*EF*0A4%,W8!&65!DL1LQ%H1I1BY% M.6]4K6:WY**-H%5\H>J5TVA($:1%2"@-HIP2F@1D)>L*!3&$%D'$$D@$ M.:4.)PPWE@09?.C%WC53C;M&,E9:;/)"XR"!\R1J\R1>#]XTT M?#;38L9].V[@O NW^]7^NHTW!R0K%PZLT.EGFC=F"E;#?*8[_/&N>J*@;='.E<18-BY X=": +:1KZ!O9!0+^$7%L4+# M(,]"\N$*@?O77><448\7AJ9*"4!.TWA'2W1P'/;=/NQ;:M,M3V2#??=LI*" MS'5L#E1E;3**U+5UD8#5HKNY*%K2<)$DR 4@[,#"=N2BXZ1A#_EACZL-7AYP M\O_;%Y05099XEUM2&_KH(E^^ A6-V%8R$ US\;?42:. 12E)6S+?018=-0][ MZAOV_+(AC;WI^/Z-07V=7;#G/V)"U&I68-C0T74VMPWT<^YT"6>8B-WY-9ZY]CP MPGNWZV"PB5,VRY4E"V'GJO)U#3(6MZ@)\P*!CU+R#,NC"+>-&+YDMN08]=L[ M13H!,!J/ "HVZE&TB;)/5T07>?W8/-^FMCA-V:OY=\(FMI;W=ML7OM?L716%C?Q/!HU]&X['WASC=S M<,]90TYXS1L;URQVZH?V#&47]"/B!.C<)\0CLZ2@:URZ:7FJP,^@H:*WDEC)7^ M-/[" 3-_*LFH!-U]!AUO?>VC_V?^GX;++:K9?OBO5]>_35ZW?PLVK[?_7,ZX MGDET4RVF$ U'&">U>P/.I4K:?. /KGTG' M_P)02P,$% @ Q&X(5_/*4=VZ! W0H !D !X;"]W;W)K&ULC5;;;MLX$/V5@5L4#J#&$BE+=IH8<)+M#9MNT&3;A\4^ MT-+8)DJ1+DG%S7[]#BG;23:NMR\V+W,Y,W-FQ-.UL=_<$M'#CT9I=]9;>K\Z M&0QGIO5* M:KRVX-JF$?;^')59G_6RWO;@LUPL?3@83$Y78H$WZ/]<75O:#796:MF@=M)H ML#@_ZTVSD_-AD(\"7R2NW:,UA$AFQGP+FP_U62\-@%!AY8,%07]W>(%*!4,$ MX_O&9F_G,B@^7F^MOXVQ4RPSX?#"J*^R]LNSWJ@'-0^JUGG3;)0)02-U]R]^;/+P2&&4_D2!;118Q-TYBB@OA1>34VO6 M8(,T60N+&&K4)G!2AZ+<>$NWDO3\Y)TQ]5HJ!4+7\(=?HH4/V@N]D#.%,'4. MO8/^K:"=.SH=>'(9% ?5QOQY9Y[]Q'P!5T;[I8/?=(WU4_T!0=WA95N\Y^R@ MP8^M/@:>)L!2Q@_8X[OX>;3'?R7^YY%?2ELXM'?8F[QZD17IFP,QY+L8\D/6)S?4J75+H,TFL-ZQ/X+*1*X!:KI3;*+"2Z));EAK#(BIQ<6ZR$\W!A M=&71(QV8NJT(RHU'5 _;H'6%(M0M^KPU7B@XW^ 2+F3J$BML9L1WGD4V,7@) MV3@9YZ.P2)-R-*3%JQGS].XW1/;VRCW$';>]GW'1/L*&$\L*:?C$*V:%!+P!;?3K4,;0T&)A,;;LIDJH)'WTHN3T^J_6.-/^Z%E(4=E+'@1ZYT]9@/G*5V,B E9S@_S M(*,J]K,\R1@5->-).AS^/P]H"/4YT2'R8)SOX0%+,^)!H!>!*&A,Y#_C >-D MA"9%Y$&:LL@#PE-FD0<\&?%L[Q@9/'IR4'2+^+!RU(ZM]MWK8W>Z>[M-NR?+ M@WCW\+L2=B&U(V!S4DV/2YH:MGM,=1MO5O$!,S.>4AF72WI_H@T"=#\WQF\W MP<'N13OY%U!+ P04 " #$;@A7+CL$\Z0" #C!0 &0 'AL+W=OVT\.]W=MJL3*72OB1^N7M>;-^-UTH_F1+1PG,EI)D$I;7U M* Q-5F+%S)FJ4=).H73%+$WU,C2U1I;[I$J$211=A!7C,DC'?NU6IV/56,$E MWFHP354Q_3)#H=:3( ZV"W=\65JW$*;CFBWQ'NWW^E;3+.Q0G*3+_DDB)P@%)A9A\#HM\(Y"N& 2,;O#6;0 M4;K$W?$6_9/W3EX6S.!>VW(2# /(L6"-L'=J_1DW?LX=7J:$\5]8M['G MEP%DC;&JVB23@HK+]L^>-^>PDS",WDA(-@F)U]T2>977S+)TK-4:M(LF-#?P M5GTVB>/27UDO7,&/"[S#C[%Z3RVJ!&GJQ?Q,)O(=AW(-YHS5*"S5JKG*HM5IQWS?Z M<0R/FEO\H(H"V)+:E+$[:H[CR\')/R3TZ+![=$00GT;) /9=7+A3>!7JI6\O M!OR5M#78K78=;-H6[M_PMOW=,+TD;2"PH-3H;' >@&Y;2CNQJO9EO%"6FH(? MEM2%4;L VB^4LMN)(^CZ>OH'4$L#!!0 ( ,1N"%?P5&G#J@( +D% 9 M >&PO=V]R:W-H965TILHFHKN,1;#:8N2Z9?9RC4>NI%WG;ACB]7UBT$V:1B2[Q'^Z.ZU>0% M'4K!2Y2&*PD:%U/O/!K/4A??!/SDN#8[-KA.YDH].>>ZF'JA(X0"<^L0&/V> M\0*%<$!$X\\&T^M*NL1=>XM^U?1.OZ?6WW#3 M3\_AY4J8Y@OK-C:)/URRK/9M7Q&:95^A<\/;"[0?)D$EG#= M;I!O,&8M1OP!1A]NE+0K U]E@<7[_(#X=*3B+:E9?!#P>RU/(0E]B,,X.8"7 M=$TF#5[RWR8ONJ1% SJ9_2R MXT]1/SP[0#?MZ*:'T+-[4EY1"P2U@([Z/I('8?:3?%@A7*BR8O+U^-,PC@9G M!G+RE:0RQE7DW6&QQJ?+P.XR@,D"+C'';:RYG^Q( BP5&>A M!&F>RR58][3&;U#O$*ZXY/2 "U@J51@X@G3HQ\G &9&?)A$\DJY/N#RIM,K1 M&.CY29C"R.^/$KAC:Y*#1&.J9:V55:WVLVE\U:.;^'M4+MA>LFE 8$+2@U/ M!ST/=#LH6L>JJA'G7%F2>F.N:+:B=@&TOU#*;AU7H)O6V3]02P,$% @ MQ&X(5]&UL M?53O3]LP$/U73MDT@=21-/U)UU:B,#0FD!"P[<.T#VYR:2T MY&))_B">CE=B@8](/U;WEG=QPY++$K631H/%8A)=M$>SKH\/ 3\E;MS>&GPE M_>8FGT2)%X0*,_(,@E]KO$2E/!'+^+OEC)J4'KB_WK%?A]JYEKEP>&G4 M+YG3IXO,\J%)VSJV&XW@JQR9,HMF!644M=O\;+] M#WN 8?(.(-T"TJ"[3A147@D2T[$U&[ ^FMG\(I0:T"Q.:M^41[+\53*.IK=& M+SX_H2WA"N<$0N?P@$H0YG GB- Z.'D2X0LU7TF7 M*>,JB_#[8N[(\DWY3+T>4=ANE MW6/LTT=V8UXI!%- Z!DU/;O1K+EBHY [I/HH[V'5;PERGR S[$'GKP0GIR5" M812;6>K%"+@C&#IRA1F6<[30:;?X"JV-6G, 9!9S25"(3"I)K_ 1AN>M=)CP MXKS=ZO4'<"VUT!F"0C:7"S>P"$<>+A86,90&:=IC[A2># GE67I)SW,,!^=P MB\ZQ6ZSE2'8'55:29+*3=I*>\C,=G.[]M96Q82($+=VD4VL9]%(XU*AXSUPE MVD48(9S-5)IJGS6GS92ZJ,WY%EZ/N#MA%U([+K5@:'(VZ$5@Z[%1;\BL@E7G MAMCX8;GD28O6!_#WPAC:;7R"9G9/_P%02P,$% @ Q&X(5TJV&ULG55M;]LV$/XK!ZTH M-L"+WAR_U380)RFV 2V".EL_%/U 2R>+"T5J)!5G_WY'TM;L+/&Z?=&)Y-US MS_%>.-\I_6!J1 M/C9!F$=76MK,X-D6-#3,7JD5))Y72#;.TU-O8M!I9Z8T: M$6=),HH;QF6TG/N].[V]O=P9#!YS2#; M&V2>=W#D6=XPRY9SK7:@G3:AN1\?JK /<\&4X MUSB J]( ER4O&-G,X+[6B">9D3.NU/$[A!J:@+ MG9<9?/8M3\CLD1QO,: 9H-EG+'EV]Y8F@TDR=F*<7H95XE?)"=@1Y=?O[!S6 M;571G'-9\.'2I*-D%9WFEJ.9P=JJXL'GB^9I2%@KF#0P3F$ZA=&(<*:A@)QI MJRQ*RYDX(?!<^QG]?T_ZC\#*WVFFD=+N&^]N//$B'7KA/5/8TWW5O^[J#207 M>>9%.@DBK)+AH4_^I_5++1T?#6 JPJU_9@QA=M*&6=SO]B_951C@?ZN'9_ # MTUM.B1%8D6ER,;Z,0(>G)2RL:OTXWRA+CX/_K>DU1NT4Z+Q2E+S]PCGHW_?E M7U!+ P04 " #$;@A7JQ/!LTD# #D!@ &0 'AL+W=O&H;H:=>;(M"LVE (7KJ3>/ MKA>I]7<.7SCN]-$:K)*5E _6^*N:>J$EA V6QB(P^CSB#3:-!2(:/_:8WI#2 M!AZO#^COG7;2LF(:;V3SE5>FGGJ%!Q6N6=>8.[G[$_=ZQA:OE(UVO[#K?;/0 M@[+31K;[8&+0+$A7!3>RI;?6S%W7Q6>V:E!?3@)#::QS4.XA M%SUD_ )D!I^D,+6&=Z+"ZO?X@.@-'.,#QT5\%O!C)T:0A#[$89R\U+]DPE9F"N%!,;M&L?_I:B9+J&=T_V/A#^FZ^T451 WT[=1I\L M/9W,-M6UWK(2IQYUC4;UB-[L]:LH"]^>D9(.4M)SZ+-[:M*J:Q#DVK)^1&U( ME!,(XK>Q9YIQ]\Z]UU+(BBU)P>TB^/,K5/[LK>_CJ>I;,^2,J&D'P3V>T(096(=/V4F^Q MQ':%"I+(98@ARE,_RA-(,S_."HC"PD_S OZ@@U&>PP>J(PL9%9%_%:7P^E41 M1_%;2++<'X_)/QJ1]Y?^H2Z*PJ>#2[A($K_(TLO!/1J/KG*85]]I!+@"M?HY M"1!VB@';,571#5"!.JE&@GW[(?SPC4,_"E.+EF0GU/UV=Q 3Q3P.(8K]E(+2 MJ\R/TM J2T=I"J?*-3B:/"VJC9NO&DK9"=,/H6%W&.'S?G+]F-EQH M:'!-H>$H'WN@^IG:&T9NW1Q;24-3T2UK^AM"91WH?"VE.1@VP?#'-OL?4$L# M!!0 ( ,1N"%?:,EG2K ( &D& 9 >&PO=V]R:W-H965T T"95Y*U @392"T-C @D!8Q^F?7"2:VOAV)GM M$/;O=T[2T$IMMR^QS[Y[[GER]GE<*_UJEH@6W@LAS<1;6EM>^+[)EE@P5-4"'\* A._8)QZ27C9NU!)V-56<$E/F@P55$P_6>& M0M43+_16"X]\L;1NP4_&)5O@$]KOY8,FR^]1-/P8C9T_HW# M"\?:K,W!*4F5>G7&;3[Q D<(!6;6(3 :WO *A7! 1.-WA^GU*5W@^GR%?M-H M)RTI,WBEQ ^>V^7$&WF0XYQ5PCZJ^BMV>DX<7J:$:;Y0M[YG)QYDE;&JZ(*) M0<%E.[+W[C^L!8R"'0%1%Q UO-M$#/2%>7) M:MKE%&>3&\8UO#!1(=PC,Y5&^N/6P*=GE@HTG\>^I2S.U\\ZQ%F+&.U /(5[ M)>W2P!>98[X9[Q.[GF*THCB+]@)^J^0QQ,$ HB"*]^#%O>2XP8O_+?F:FTPH MI]K SVEJK*93\FN;YA9RN!W2W9P+4[(,)QY=#8/Z#;WDZ" \#2[W$![VA(?[ MT),GNHEY)1#4'#[(#V!J#%*IF,SACK.4"VXY">GJF ,=^D?,*JVY7,",&6ZV M*=N;>[NR78>&64I8*FU=0CJ."/_O257&ILIW^(8"PFZ,NC&&:\RP2%%#'.YV M>D9=T*4LE>&4Y1#"L]7GZ& 4A='EQFS?[JVT2((M:,?.U*PT$ V"8-1[;%KA MX#P.=EC/RC(!K"W7H0N,3E:96Y0-5H/S84^L!?K8WG:<_+7K7Z!>-$W.0*8J M:=M.T*_V?73:MH\/][8)WS.]X-* P#F%!L>N;>FVL;6&56733%)EJ34UTR6] M!:B= ^W/E;(KPR7H7Y?D+U!+ P04 " #$;@A70EBIS"0$ N#0 &0 M 'AL+W=O05XN] M5)_T#M' ?5T)O9SMC&G./$\7.ZR9/I4-"NK92%4S0Z]JZ^E&(2N=45UYH>^G M7LVXF*T6KNU:K1:R-147>*U MW7-U#\76,G]]0XG%*V2E70G[;FQ$@XM6&UGWQL2@YJ)[LOM^(1X8Y/X3!F%O M$#K>W42.Y14S;+50<@_*CB8T6W&N.FLBQX7=E5NCJ)>3G5G=H.$*:9D-7%=, M:#BZ8^L*]?'",P1O!WE%#W71085/0*7P00JST_!6E%@^MO>(UL@M'+A=A). MO[7B%"+_!$(_C";PHM'7R.%%3^!=X89:2KA 0;7.8;CBNJBD;A4>\K@#C \# M6L6>0E_=D@++MD*0&[B4VFA;^7:_ M#I&>A#U,^FZ'L)$5:92++1@; KU0^1?48*@;[^DDT A,:UEP9F@A]]SL7%]! M&Z_XNK5"TQ2>)8*1MH?&-RZLZ/QP(QM47)8:W-2"0,[@;J<0'\4.W/+[QPTV M FP1/JA]%-R2N#7$1<,OD,TC*J.Y3V5P$OL9/=-Y I=,L))!%$*^M$[2GT W&^EF/ZR3/^@>&V@[S1PB.PEWF*S%[4*7%]#TEU+A M1#E$]N-P+/LU7/=D!ANKAM'$N,AGH@1- 5]W 8\NX.GLP_'LC2;>D,8150[&@(4@AR4AM$"3RYI%9OEH)C ME%+Q^E4>!N&;*=WE8ZSD/Z*[7O>'@F/2_IF1/!_9S5]:>/.?0#?POR8/_LM* M;QKOOVIO.,[_;^)+;)0[V05!:"^=]+OBRZWX,B>^U(DO(?&=UU(9_H6Y?)>V MI*%%HPR9<"?QW> M?4E\8&K+*>6H<$.F_FE&=ZGJDO/NQ&PO=V]R:W-H M965T)#?MO]])3KP,TL"^Q+K3O??N3KF;;I1^,A6BA9=:2#,+*FN; M21B:K,*:F3/5H*2;0NF:63)U&9I&(\L]J!9A'$7CL&9<(DVG#2KQ'^]BL-%EASY+S&J7A2H+&8A;, M!Y/%R,7[@&\<-V;O#*Z25*DG9]SDLR!R":' S#H&1I]G7*(0CHC2^+WE#'I) M!]P_[]BO?>U42\H,+I7XSG-;S8*+ '(L6"OL6FV^X+:><\>7*6'\+VRZV/,X M@*PU5M5;,&50<]E]V:;CGA;+)4=4;)]QO,MX$1\E_-K*,QA&IQ!' M\? (W[#OP-#S#?^W YDK_)*;3"C3:H2?\]1837^C7X>ZT(F,#HNXT9J8AF4X M"VAV#.IG#)+W[P;CZ/.1$D9]":-C[,D]C6K>"@15P'5K7;(K]MJ51*Y;+)D MFB\KT#L/Y7]4X7#^#Q4"OC0T7YA#LQ-LZ9TU6+I[7*W7>[(P+S5V)UHF/D*C MVQLNGM)TCE=D&E#F] !PB1G6*=T-!]UC^^>A*%H^A24_HSJ9(3)!J\5,X(<# M7QT K_=E/-,)C$^C*'+&""[\\4%9ZM()#$;>//0LX=ZAN@W2&58V?VE19V@'^6-'21>T" MZ+Y0RNX,)]"O\>0/4$L#!!0 ( ,1N"%?@:_[ZYP4 *PI 9 >&PO M=V]R:W-H965T1/55 M;CE7Y%N1E_)ZME5J=V59,MWR(I&78L=+_2NXLFJ"2IRB]FV M;Q5)5LZ6B^;>7;5?=7:6OK(YEE16\E)DH2<77U[-W]"IV[#J@0?R9\2=Y])K4J7P1XFM] M\6%U/;/K&?&OG]G?-\GK9+XDDM^* M_*]LI;;7LV!&5GR=['-U+YY^Y6U"7LV7BEPV?\E3B[5G)-U+)8HV6,^@R,K# M_^1;NQ!' 9H'#F!M !L'N"<"G#; >>D(;AO@OG0$KPUH4K<.N3<+%R4J62XJ M\42J&JW9ZA?-ZC?1>KVRLMXH#ZK2[V8Z3BUO]E+?D9(\\(VNOY+D@MSS5)1I MEF=)4TNQUG<>>;GG9%V)HDK1+%5^1UQ%62Y?*-YOC\$)'7K]Z0 M5R0KR:>MV,ND7,F%I?2 MTFO5+1A[7K ;9B3\;5]>$L=^2YC-'& ^MR\/9U Z/S9Z_-VC#Q;#Z7:/T_ Y M)_C:K:#WQTY4*BLWY$-Y$"^]<:!B'^A?+@])SL&'[1#J-Z'U9\CCDKJ![;@+ MZ_%X90&80SWJ#6'1%,9\QZMWUC$L!F".[=AA!QODZ75Y>L8\G_?>'SM>) MNZO$.E-0V@(9KDA9,9A,Y\+'E3D*NS&:4\!5'J4CK*>(IB M\R.J0;[4[KM3VYCQO>XGWY)//-V6(A>;C,NW1#>26@2KQRR%"VZF//>)0V6+ M4-EB++9A<8ZL \65PI8/JS*8;!$J6XS%-JP,ZRO#OE\0V]B!-%"?^B-M & ! MG8?SD3H ,.KYMCUJG&((YWJ>/3\A$;T%H<9N^G\E@OQ+7M8\F<W>BNA-4 MMAB+;5BQWJ!0%UDWC([G[,I@LD6H;#$6V[ RO:6B9D]EUHVIK0%U8PH#=0,P M2:!N #B3;O2&BIH=U3G-5$LUL'T^FX\SGZ*<, S&B4]1H3WN,V, Y=G.J:1[ M\T*-??CRKN)I(E7]O5U:<<7KG%?[](0@HEH75+8(E2W&8AM6I;0#UG+ S MH('/**P,K'=:S.RT3BK#B_LG\P#G;DI4M@B5+<9B&Y:J]UT,V7-:K#G'O?PLR_K#PHSO->%VN3^9$GBG MS%&-"RI;A,H68[$-2],;%^8A2Z+1")U=&4RV")4MQF(;5J:W65M%*KK0F6+4-EB M++9AO7K7Q9!=%T-U7:AL$2I;C,4VK$SONM@/N"X&V"E(,P 8I!G 3V"09D"_ ME)W4#*=W78[9=9W31K54P\,;WKB- E!S?_3S9 123=HH '5!=?H#N@ MN?P/4$L#!!0 ( ,1N"%=V]X$ 3@0 +,2 9 >&PO=V]R:W-H965T MLO2G(^- MC1#%@VGR: ,9X?>T@%S^LJ(L(T(.V=KD!0,2ET99:MJ6Y9L927)C,BKGGMAD M1+C@JQA >*E>&)R9#8L<9)! MSA.:(P:KL?$!/\RQHPQ*Q*\)[/C1,U)2EI1^48/'>&Q8:D>00B04!9%?KS"# M-%5,LW\LQ4LQ2\)A1M/?DEALQL; 0#&LR#85SW3W(]2" M/,47T927GVA78RT#15LN:%8;RQUD25Y]D[?:$4<&DD=O8-<&=MO /6/@U ;. MM2NXM8%[[0I>;5!*-ROMI>-"(LADQ.@.,866;.JA]'YI+?V5Y"I1%H+)7Q-I M)R;3+9H>2'/VRH5M.\IB/3"$U MJ)V84;W?:;5?^\Q^'?29YF+#T3R/(=;8AY?M_0OVIO1=XT![[\"I?9'PIVU^ MCQSK/;(MV]'L9W:]N:V3\^]6G__CU4^4]D)_%UF_BZE]@GA[@55=Q4,%D9;+), ?&Z%.C"4S'[ M);-J7Z\3WW&'(_/UV.U=D.T.K%-0J&$:>/8I:-X%X:'38$[4>XUZ[[)ZL0&& M;N!-=FD.M[*2130#6=QR$#K%%9MWM(6[ +<5=T&!A5N"-42VY_HMQ5T4MGU7 M+]EO)/L7)3]6$I<@ PU[P8*\@3;$?F<'KN6UMCGK@NQ@&+04=T'8<=V6X"XH ML,Z$.&CT!ERDT ,FD ,_K^=9-!G?/LD"_LD MF_=$=A+?81/?X7_628:=__W0"=IUM0MR?<=KE9DN"&,7M\KOO(NR@R.J$_W8 M.AR\K:^45@'2KP+5_>1\'ZF)3NH_]H)6.9SI8,Z@A0IU*'OHM]NG#A9X9[H) M/GK;P+VVT)KN*SU4@^HV41V5IHMJ8.?;*+8/PNV+PE]RDJ8T*LM/1)G,<_FX M#SU'\F4(T=(WVV/@AK"UOM76RYT&VW*LMF,JHR8Z/=IICA@:E.6=H4)J#A@;5/6F81R_A&R[@,9 M(5;=D%0#08OR"F!)A:!9^;@!$@-3 /G[BE*Q'Z@%FGNJR=]02P,$% @ MQ&X(5QB]=5]] P J0\ !D !X;"]W;W)K&UL MK5=ACYLX$/TK%E=5K;2W8 B$["5(W:Q.[4G5K9+NW6F.\B)O.4E%/K* MAHN<*#T56U>6 DAF03ES?<^+W)S0PDGF=NU1)'->*48+>!1(5GE.Q(][8/RP M<+!S7%C1[4Z9!3>9EV0+:U!/Y:/0,[=ER6@.A:2\0 (V"^<#OEOBT !LQ#\4 M#O)LC(R49\Z_FLFG;.%X)B-@D"I#0?3?'I; F&'2>7QK2)WVG@9X/CZR_VG% M:S'/1,*2LW]IIG8+)W90!AM2,;7BAX_0"+()IIQ)^XL.3:SGH+22BN<-6&>0 MTZ+^)]^;0IP!\.0"P&\ _O\%! T@L$+KS*RL!Z)(,A?\@(2)UFQF8&MCT5H- M+2^DGI%2K2&K=X=)='O: 4I+U+**+&5YAOT04K0ES:"Y\= MI#A:\D)R1C.B($/O'D 1RN1[S?"T?D#OWKQ';Q MT)<=KR0I,CEWE<[8W-=- MF^SNZ^S\"]G]516W*/!ND._Y00]\.0Q_@%3#L87[7;BKZ]06RV^+Y5N^X +? M4?H*2BX4+;;H4U$_2;I.?>IJNDD_G7E"[V1)4E@X^A&4(/;@)&]_PY'W1Y_6 MD<@ZRH-6>3#$GM0&Z)-8XR*+,^^,?1*$.(SBN;L_3[XG+ H#[+5AG;0F;5J3 MP;3^+D$0NQ&M?7^BE7;A#?H"Z:[@C&\IR!ND[:=#Q)ZFT*MB\#;7;M1(9)V* MA&U%PG$M&HZI?"2RCO*H51[]HD5K7'CF/3R=:I.^L&A?F(\Q[K?HM$UK>KU% M'P6D1"KS DT%*- +/*O2_O0'^:_=H9'(.J6(VU+$XWHS'E/Y2&0=Y;-6^>P7 MO3E[;3IO$L_\%][L"XO#6=SO3>R=OO[>]>Y<*P#66M*^.S\#D94 $]'[%1^\ MR[4[-19;MR9G'1$>UZ8-WUCJ1V+KJC^U.'BPCQBP:@,\-V$03UY9M2"AUN0IX(PQE/;:Z9&ULM9AM;YLP$,>_BL6FJ96V\DR2+D%: M,ZK5/5KMMK%YS$&MC,-DGW[6<# MH2&AJ-'<-P$;W\_G_\5GN.F6LM]\C9 CWE&^,Q8"U%, 33RBC/3,>R C.'F!CAM.J[8>&4EB+#!-TPP,L\A^SO'&5T M.S-L8]=QBU=KH3K,<%K %;I#XKZX8;)EMI04YXAP3 E@:#DS/MF7L>TH@VK$ M3XRV?.\>J*4\4/I;-:[2F6$ICU"&$J$04%XV:(&R3)&D'W\:J-'.J0SW[W?T MS]7BY6(>($<+FOW"J5C/C+$!4K2$929NZ?8+:A;D*UY",U[]@FT]-O -D)1< MT+PQEA[DF-17^-@(L6=@>\\8.(V!\U(#MS%P#PV><\EK#+R7SN W!M72S7KM ME7 1%#"<,KH%3(V6-'53J5]92[TP47^4.\'D4RSM1#@ON>SA'-RAE8R_X. # M^ X9@RI^X"Q" N*,G\O>^[L(G+T]!V\!)N#'FI8WA+DS"/Q:D@O@6N^!8SENCS^+8?-KR ;- MH_^;/7ZYN3,@AMO&TZUX[C.\)HS@%A64"4Q6X(K4Z41NRQ[WYC7.Z\>I-'7) M"YB@F2'S$$=L@XSPW1L[L#[V*:T3%NF$Q9I@G9AX;4R\(7IXPVB"4,K!DM$< M/.QV7(IY03E6@>G;1O-!Z*F1T0F+:EA0P=1)M E'(RN8FIM]Q8\'V?;$;P=U ME/1;)?U!);]1J=O92IY_YT"=,IS+HS25F8H++$KI>9^.@\A3==0)B_PCB5QK MY!WH>#SH@S>Q^W4,6AV#01UO95('\F^9EHGHU6S0_%3-=,(BG;!8$ZP3@U$; M@Y'>3#W2&1.=L$@G+-8$Z\1DW,9D_!J9>GRT11TW&'?W\6)PYE,5UPF+-<$Z MBD]:Q2?Z,_KD^&BQK,F!WL>#'"OPNX.B0>=.U5$3K*.C;3V]R%N#2BXH5%F$ M _E:#JX1Y%(]E6#Z!!Q&G9I+M-(BK;18%ZT;E+VO*UMODF]XNB*CDQ9II<6Z M:-W(.$^1<5XCU0]33XZ/ .,M,X9ZZ+5NIM[I8<,VS8C2=U/=NU'0B-SK/"G&C4+E9K[GZ=B5R M^7PYPJ/=C=MLN=+5C?%T\LB7XD[HSX\WRER-6\HB6XNBS&2!E'BX'+W'%RFM M"]01?V7BN=S[CJJFW$OYI;KXN+@<>=43B5S,=87@YN-)S$2>5R3S'/\VT%%; M9U5P__N._J%NO&G,/2_%3.9_9PN]NAS%([00#WR3ZUOY_+MH&A14O+G,R_HO M>FYBO1&:;THMUTUA\P3KK-A^\J]-1^P5,!QW =(4('8!_T@!VA2@I];@-P7\ M4VL(F@)UT\?;MM<=Q[CFTXF2STA5T896?:E[ORYM^BLKJH%RIY7Y;V;*Z>FM M>!+%1J!?T!W/18GNOZ%K_H]4Z$;)Q6:NT9^F 'K-A.997KXQ<9_O&'K]Z@UZ MA;("?5K)3(>J]1<0CU/$\L].+$U=S?JSV],6U]SJ#MN."UCQZ MA,>RDB^72BQY_3[+!]2,%%>BMRC?C:JD[J)\Y'-Q.3):5@KU)$;3GW_"H?>K MJYOGPVWSX0_3I)ZEYC@KSRU%6[ZDK"UM 6 .JWX>G*?9CC_J3 M\=-^_SK"* YPT ]CAV$DI$$UMO;#4D<8]:B7M&&]U@9M:X/!UMX:L7F+/HGY MJI"Y7&:B?(N,RJ [TZO9W-W\0>*Y@Q 2QB!A*1"LEY:P34L()PHA9#X@80P2 ME@+!>OF(VGQ$/RH*6T"P]WXF.,2AI0F'43&.DLB2A,,H'(2>YUF2X CS@\"+ MW)(0MVV-!]MZH\2/I,U' J<% M"60^(&$,$I8"P7KYP%XWD_=^5 T:POZ[26D<6K_],T<8H2'&EAXXPH(8!]32 M U>E<4BP6P_PGG/!@^V]TT+DK0S4\X-KP/6%P MA/D)#1-;(!QA(8Z/"41GF?"P9ZI<1%\??LOEO>F"#RK;+E-=\X(O:[E W]%+ M3,?P$YP]=B%I#)260M'ZN>P,(0X %074"X+2&"@MA:+UL]+Y03QH;TY2E-#A M+1)B.Q!'6.3YME%ACC!,C5/Q;4EQQ!'BA4=,".X<%_X?R[63AV^M+FQ%0N:; M:F26+Q62P6K/'K*0- 9*2Z%H_01V-A+'@$(":B1!:0R4ED+1^EGIS"0>]$8G M"4ERN)01)IZM(X=1&-/XP+HXPF+/5J74$4:H[WMN%2&=52/#5NU@,>-JD^6+ MK%A6\G'62L=P1>>.4% : Z6E4+1^RCJW23"<;A!0HPE*8Z"T%(K6STIG-,F@ M93I%-QI"[U5/*+'7/%QA07RPYN$(HQZQPU)'& FB8Y:&=!:.#%NXG39\+!Z4 M^51&%C:J4XBSU0-TYPZ4QD!I*12MG[?.BA(?4#U 324HC8'24BA:/RN=J23# MVXRGJ$?@VLWP[6F'(RR*[9T1YH@B4>+;>ZJN.DE\=-;1N34R[-8^\'N5S;D6 MQHKTUTZ_VS=.6$P=KNSL40JZPP=*2Z%H_;1UEI-$@-H!ZB-!:0R4ED+1^EGI M?"09WH\\13MBAW;$@7T@PQ46):&]F.H((P&-#F8>AV'4"Z)C,X_.H9%AAS:3 M9OA5!L62AI=I!^B&("B-@=)2*%K_$%=G-*D'IQT4U$N"TA@H+86B];/2>4DZ MO'-Y@G8TA/V#55&86#LG,T=4C.W)"7-$$9HDL:4=HSW#INNA5K6 MIWQ+-)>;0F_/%[9WVY/$[^OSL];]*WPQPX[[#%^DVW/"'7Y[;/F:JV56E"@7 M#Z8J[UUD5$YM3P)O+[1\K(^ZWDNMY;K^NA)\(5058/[_(*7>7505M.>QI_\! M4$L#!!0 ( ,1N"%>RUK;=DP8 #TU 9 >&PO=V]R:W-H965T-S,UW*3->^K1UFVWRRK>I.I]K!>C9O'6F:+OM"F&),@8.--EI>CZ:0_ M=UM/)]56%7DI;VO4;#>;K/[[1A;5\_4(CUY.W.6KM>I.C*>3QVPE[Z7Z]'A; MMT?C/661;V39Y%6):KF\'GW 5X+&78$^XH]?Y%#@Z*.-Z^*IO^+GG>Q+!RA^;91U68HW%[!)B]W_[.O M0T<<%&@Y[@)D*$#L J=JH$,!>FX-X5 @/+>&:"C0-WV\:WO?<3Q3V7125\^H M[J);6O>A[_V^=-M?>=D-E'M5M]_F;3DUO9-/LMQ*]"-ZR%O\"E5+]%!G9;.4 M-7K+I.\MQ?GGG*C]O&[WN O/3 #?$"?]N6[Q$-WB$2$.JXGMGY MQ8FK.:^K7?SGVHW.H/OA0'L>/<'C>9.M5K5<9?TT;@?#,$!J4[BK MYC&;R^M1*V&-K)_D:/K]=Y@%/[EZ&1+&(6$""&;D(]SG(_31IP^5R@I4MC\8 M359(YW3; 5@/Z'X6GJ8X3 (:3L9/A_WK"*,XPI$9QH_#"*-1-[8.PX0CC 8T M2/=A1FNC?6LC;VMOJ[Q4G;ZH]K?(U59O\4M''"2,0\($$,S( =OG@,$I (/, M!R2,0\($$,S(1[S/1_Q:!=@!HL.IC8,D#BP%. Y+HQ!32P S:?G^@ +_+2D0A*XZ T 44S MDT-T<@BVCL-](G2$:7OOAQU\\-"%I')0FH&AFHK0'Q F@8("Z M0E :!Z4)*)J9%>T,L=?HG"48J>N^(#T2#%=82NPGD8XPPDA(;;TX#J-!R$X\ MB23:>!&_\;JMY3QK%)I5Y;R62J+;NEILY\K9NY06BO9SC"DBBV'U8XHDB2&% F0$T@*(V#T@04S8*8SBP;R0<86%*#QXT#-WB"&/XE$!0[;&HWV/Y M!>(Q&#.Z(P)9394N$("W!D;[H:'[P.LI'UJG\/IT'S:ENJW:L ^[/[=WT^]&^X M6.=O\-4,.\YS?"5V;_)H_.[%HH]9O2=G=OQ\I*8K%T(:S\L46 MJ7//Y>$5CRA.CY1]YSL @7Y496=#646$;+*M MR_<,R+H-JDK7][S8K4A1._-IVW?'YE/:B+*HX8XAWE058?\NH*3'F8.=IX[[ M8KL3JL.=3_=D"P\@ON[OF&RY \NZJ*#F!:T1@\W,^81O.I$4$)*Z$HB/P[P!+*4C')OW$_ELK7HIY M)!R6M/Q6K,5NYDP$9P*"/B"X-D/8!X379HCZ@%:ZVVEO)RXC@LRG MC!X14VC)IB[:V6^CY7P5M7I0'@23=PL9)^;W<("Z ?0K^NL #'V1#P%Z("5P M]"X#08J2OY?WOCYDZ-V;]^@-*FKT94<;3NHUG[I"CD#QN*L^VZ++YI_)%J#/ MM!8[CO)Z#6M#?'8Y/KX0[TKE@WS_2?["OTCX9U/?H,#[@'S/#PSC65X?[IOD M_%SV_']G'TU&,#P+09#@.)RZA]-I-J!B[/EC5/82%:=QZHU1N0$5AUXTH$:* MHT%Q]#K%>V KJ(5\99E4=V23DS%X-WZ$-=5&5!)IJHTH?09S(VHR,:N.!]7Q ME:J+>M\(5('849,[+B[RO';1V23+;)+EELA&Q4B&8B3V3#"Q60^;9)E-LMP2 MV:@>DZ$>$ULF.'EA23A*?-T$7Z+DIGJ2:G;P$A7@--!,(S>@TA!CLQVD@^+4 MI@FF!DO"7JRI-J*B0%-M1/F:H>9&5')&-?:>=Z+>E;KE!\UE'[S,]-J%9Y4M ML\J6VV(;U^3DZP#;<\.>RU95;+)E5MER6VSCJOC/5?%M>6+/-+(['(;:;FYI M@,G18MT?#+ @22+=%DU)XS0-SSC$\_<)OKC=?JTS]FR:4861KMT(\_5M\1FV M0-=NA.%$T^Z>?+)7P+;M60E'*U7'[HMMZ!W.8SZUIQ!:_P+?+K&A/U/G-^T1 MP3-]=_CSF;!M47-4PD:F\FX2N:EEW7E*UQ!TWQX8/%(A:-5>[H"L@2F O+^A M5#PU5(+A5&O^'U!+ P04 " #$;@A70/ MY7W$[MBC _LR&E3XIA;G) [.2!1$,?ET>T6>/WLQH#?N8A([O?$)O5TD/C^( MQ*766"67A;%CCNE,108$%AN&M0.O/3GG\(D^&7 Q5'GXFA(>[JDW-%3361!KB"#:HUN MQ:$+9M2'VRA,G$);Z[LTCI,PGON['HYQQS$>Y'B/$:4Y!@\K5!,C27:(/;71 M[LVR1N/X"&0TF4WZ.9*.(QGD^*BHT 4H30HEJT<46/9-M)"/9IFLA='8D3)@ M.[KFT,>8/&%\.8IGLW[(20,,2C( S[&:8=P_2_U,9; M1M>,,_/M7^3]] ?D_:S#G_W?>3][$L9D,CT1Q3"X;[O!(,BA[V(:R8U@?T/^ M*/-X&U$&_:TVZ,FP8'0BP\*CZR C_9Q>Z/M&.XRT"YHF=3F MS,YYG>,N>O#8DU[>\&DVCJ/Q"=SH'C<:Q/U@2OQ\-/\3$Q'?"D:?(>R!;%UK M/([4.5[\VC!3J]YB;6T\B&4XBZU-%CF;ECBRP^4/8#[A93F,+$&NK=D^@]02P,$% @ Q&X(5QP28M"J M @ E0< !D !X;"]W;W)K&ULM55M;]HP$/XK MIZR:6HF2$ JL#"*U=-,V:1J"=OLP]8-)+L1J8F>V _3?SW:"1:645E/W)?'+ MW7//V)ULN'F2&J&!7Y$Q.O4RIN8[E(06R"3E# 2F4^^J-[X>&7MK\)/B5AZ,P2A9S'-IO[!M; ,/XDHJ7C3.FD%!6?TGNR8/!PYA^(Q# MV#B$EG<=R+*\(8I$$\&W((RU1C,#*]5Z:W*4F:(LE="[5/NI:($;9!7".2S0 MU)"R-H.*T%R>P0E0!K<9KR1AB9SX2A,Q<'[]8?#Q"/N^ M8]\_AN[8"U>(\J 0W!6BC7>-/+3(YAQNHO R"$;#B;]I873A&%V\AE'GQ=[H MP*==J<\9)G!+"V/'4UCJ+9F2N#98*B(4Z!Y%78(=E?=C6_WS8'0>]-HD':7V MCZ48..&#US32&PAO4S;X#\J&3MGP39H,3O5ZC$SIF_FL340=YO*@XX)N+VSO MMY$C-WI=O[W$K@.X3[MR:9=/^DT[4IZT,3_.H0>/2$1;IOV#6]8\6-^)6%,F M(<=4(P7=D:ZKJ!^!>J)X:2_>%5?Z[K'#3+^;*(R!WD\Y5_N)N1$7O(-,/UFQ45.E+X5:U]N!)"D-,HS'P?!P,\)9=YL4CZ;B]F$%RJC#.8" MR2+/B?AU QG?3KW0>WKP0->I,@_\V61#UK ]74S%_K.;[PD- 09<:3UO&C M=NHU8QK#W>LG[Q_*R>O)+(F$6Y[]0Q.53KV1AQ)8D2)3#WS[$>H)]8V_F&>R M_$7;^MO 0W$A%<]K8ZT@IZSZ)S_KA=@QP/B :X-<*F[&JA4>4<4F4T$WR)A MOM;>S$4YU=):BZ/,1&6AA'Y+M9V:_<5YLJ59A@A+T&>5@D"?F")L39<9H&LI M04GT'BUT-B2%?L)7J#%Y>P>*T$R^0V\09>A+R@NIW(1O-GOOX6#X ^'KEZCJ^?R MWNBZ0$M84\8H6^MDS0B+H4UJY6Q0.C/[]G$6!<,HFOB/+1KZC8:^4X/>)7H/ M,)VU0@"+?R$E"),9*7\-' M82_HM0L8-@*&3@'?"/O(N6&%QLZ/@DIJ%J%M>*>?CDDS:E2..B?SZ!5TC1M= MXQ=:O?%>\' /MX]L-:3@>]T8'@FJY'3KQVQ5.M=>3Z!1:6(>G MTOHXGVI7SW(\B(;# QHLK$,WK8]E.?H7G;X/W6-US3&+^W#0/?V=I:*K-%L( MPI>J!+6CW4 '!X)L 1\Z.3V;"XB)5.B6LUB C07/"EBU.ZM(5VFV0F!WA3AC#??/ M\ ?/8=A2';M/\0L%D-F@FN)T#T06 G)@[9G^&JS'EO5XV#V6KW'0Q[808'G\OPXO:)]F!\:WX(\\BFP=B'#W?HBSA'25MM.I<9>',]8PVFN'_#_$_DZ'+0>Q+ON($L6\8*IJ MMC5/FU[E==6ALY]7C&PO=V]R:W-H965T1L>"TV/-=7KH7,F-*G\E3L3@=X%XD(D>27Y\.SO";>43+A"KB2\)W1>,8 ME5*NA+@I3SXL3P=!R8BG?*%*"*;_W?(Y3],22?/X]P ZJ+^S3&P>WZ._J\1K M,5>LX'.1?DV6:GTZ& _0DE^S;:H^BMUO_" H*O$6(BVJOVAWB T&:+$ME,@. MR9I!EN3[_^S;82 :"3CL2""'!/+0!'I(J$9NN&=6R3IGBLVF4NR0+*,U6GE0 MC4V5K=4D>7D;+Y745Q.=IV;OA5CNDC1%+%^BO]6:2_0A5RQ?)5[GF1#EZ_;_/7B :_(!(0ZDB?^]//^4*GXRJ=V.E#/4+U,)%ZF$B% M1SOPWB5YHOC)'[KDENT!\L'LYY]P'/SJ M$@L$9DFGM73J0Y^]EZ(HT)Q)>9?D*_2%I5ON$KQ'B2N4\N%Q.XO',0ZFP]NF M$E=4$) ZRJ(8UA1#+\6SQ6*;;5.F],TYRX14R7^L?$BX:.Z1H@:!DW!$H_"( MIRLLQ"/L)AK51",OT;_T;*E'4C/=YLK%,6I].<$DBH\H.J+HF'8PC&N&L9^A MR$\6(MMPQ1%;2<[U(]M=X%ZP0I'0C,DCZNI8]!YO:X M76KCHVITA(S]QH!+!7R84>Z(ZI[L_LS1X(S=9IG!Q#6SD&]7(H-%N^<7,,8^<'F&:-47H\ MI9Q!04(W\4^2+7G&Y$U1+>A5>8IREG'W&A74UZ'0;.F-%3KX$AUVC?X+WA\$V12-A5,X"Z<.;X[(,4U'$.GH-*BQ M;PIBWP>4YN\19!0=,VP'T:!K:AOSIG[S_EK]PEB.XBV7;,71=_3PS7<_=N^J M?PYOI\;;*;2W4U!OAT*SY1MOIWYO;Q5"A.\_ )-]T"]7<+CAG@V83V@_56"81F_UYI>H\P "[Y$/07!"@T6[YI:T)_ M6_/DDO\!/@ZJ*G6ESA^5:NLT[4SH[1=<%?[P'5D_=N\[_AR=36@ZFY!"%[RW M5>HM'PC-EM]X0<'?-3V]X/WX./84_&-2;9VF[0K];9>CX/MM2?KQ>]]U(#1[ M-$R+%\;010_:UT&AV?)-7Q=Z&R> HO?C>XO^,:FV3M/ A3T;.%WTWITY/U[O MNPR$9JLW75PX@2YRT$X."LU^HK9L MW]$#-J?\H'UO-12:/02FFXN@-ZC2[?2_^3R562%[IBKS54\'JD.P2Y?]5[?Z+$IGI;^DHHW:=7AVNN6Q99 M!NCKUT*H^Y/R!>SZA?O9_U!+ P04 " #$;@A7#E)'Y+T" #Q" &0 M 'AL+W=O2,CEV"J6J<]>560$EEF>\ J9GYER46.FN6+BR$H!S"RJI&WA>Y):8,"=- M[-B=2!->*TH8W DDZ[+$XO42*%^-'=]Y&[@GBT*9 3=-*KR !U"/U9W0/;=C MR4D)3!+.D(#YV+GPSR /=@""%A#\*R!L :$UVBBS MMJ98X301?(6$B=9LIF%S8]':#6%F%1^4T+-$XU1ZS7F^(I0BS'+T0Q4@T U3 MF"W(C *ZD!*41*?H%@N!3<+1\104)E2>Z-''ARDZ/CI!1X@P]+/@M=0L,G&5 M%F;HW:P5<=F("':(^%JS,Q1ZGU#@!6$/?+(?/H5,PWT+#S;AKDY'EY.@RTE@ M^<(=?%>$$06GW[3=?#L;??8:OD$_GRG$ MB&S#>MA9#_>QI]>"2XDF>K5?"5N@)TQKZ#/HFWMIJP>C=;NP)B?NWXJ@3-SI8Q8RV2G9+X':('[T3Z*Y= M2.8Q\!V+!6$249AKD'<6:WNBN6";CN*5O:-F7.D;SS8+_28!80+T_)QS]=8Q MUU[WRDG_ E!+ P04 " #$;@A73L0;?" # #+# &0 'AL+W=OSG9!!25&[9?N2V)=[GO/=V>?+8,/XO4@ )'K(4BJ& M5B+EJF_;(DH@P^** 8P/*4MMS'-_.,*%6,#"R&QX, M6"Y30N&&(Y%G&>8_QY"RS=!RK:U@1I:)U ([&*SP$FY!WJUNN)K9%4M,,J"" M,(HX+(;6R.U/>UK?*'PAL!$[8Z0]F3-VKR>7\=!R]((@A4AJ!JQ>:YA FFHB MM8P?):=5F=3 W?&6_<+XKGR98P$3EGXEL4R&UEL+Q;# >2IG;/,!2G^ZFB]B MJ3!/M"ET_9Z%HEQ(EI5@M8*,T.*-'\HX[ 43SW *P'>8T#G"4"[!+2?:Z%3 M CK/M= M <9UN_#=!"[$$@<#SC:(:VW%I@WDJNO1.%D,(HB MEE,IT PB(&L\3P&]09\PYUAG$)V&(#%)Q9F2WMV&Z/3D#)T@0M'GA.4"TU@, M;*G6H=GLJ+0Y+FQZ3]ALHVM&92+0E,80U^##XWC_"-Y6_E=!\+9!&'M'"3_F M]!RUG1;R'*]=LY[)\^%>G3M_9WWZQ];W@M&N=D3;\+6?X+L@%-.(T.7.EFBA M4:HJBI(#4K4)33C$1*(K)@3Z=J4(T*6$3'ROVPN%M4Z]-5T&^V*%(QA:JLX) MX&NP@M>O7-]Y5Y>()LG")LFF#9'MI:Q3I:QSC#V8%8PF-3E5)<&487V4<7F\ M6P@>U-4BH"Y#1\E?FJ$FR<*"S#=D^L9;!QW7'=CKW< W9' O\-TJ\-VC@;]5 M%YPZ*2WT'BAPG")5$-$H5G6:"%E6T&D1^-HZ>93]I9%ODBQLDFS:$-E>BOPJ M1?Y_+6=^DREKDBQLDFS:$-E>RGI5RGK_LISU#HJ&U_7WB\;D4,?M.OLZX:'. M8?&IL;6C4WAO[W1G&?"E:8L%,IX4UW(EK3KOD6DX'\G';G_BULA#U:D7C?5O M^J+-O\9\2:A *2R4*>>\ITXB+UKG8B+9RO2&KEOTSRYWD\N:*%P(]D S74R]*P\RS$G-])W8?<%]/B.+EPJFW!-VC>]D MY$%:*RW*?;!14%+>O,G3O@X' 5'T1D"T#XB<[H;(J5P239)8BAU(ZVW0[,*E MZJ*-.,IM4U9:FE-JXG0R2U-1-_DT243M&PO=V]R M:W-H965TY;2P<.[.=!O[];">-2@G='O:2^-KW')\3^]ZD+1=/L@10Z+FB3,Z< M4JGZPG5E7D*%Y1FO@>F5%1<55CH4:U?6 G!A015U \]+W H3YF2IG;L56W,\9WMQ!U9E\I,N%E:XS7<@WJH;X6.W(&E(!4P23A# M E8SY]*_F"-W MS^D,6QK@[GC+?FV]:R]++&'.Z2,I5#ESSAU4P HW5-WQ]@OT?F+#EW,J[1.U M76X4.RAOI.)5#]8**L*Z-W[NO\,.P(_> 00](/A70-@#0FNT4V9M+;#"62IX MBX3)UFQF8+^-16LWA)E3O%="KQ*-4]D-VP!37+R@XP4H3*@\0:?HX7Z!CH]. MT!$B#'TO>2,Q*V3J*KVCP;EYSW[5L0?OL']MV!D*O4\H\()P!#X_#%] KN&^ MA0>OX:[V.9@-!K.!Y0O_:G9!9$ZY; 2@GY=+J82^3K_&_'6$T3BA*;$+6>,< M9HZN(0EB T[V\8.?>)_'W/XGLE?>P\%[>(@]NR:,Z&M2H#7GXT?9X1.+-\6_ MR:+S()RD[F;7PTB6'X7^D/5*7#2(BPZ*>]2E?DK8:2UX#G)474<0[^P;AUZT M)^YMTC29AN/:XD%;?%#;'6YUP2D0!--19?&;38-XZGM[TD:RHG@Z&=>6#-J2 M@]JV%YJ U%7+0(WI2]ZOI&L>!+LGZN[TVE,E_^&Q9HPB2BL-,X[ MFVB#HNN<7:!X;9O/DBO=RNRPU#\;$"9!KZ\X5]O ]+/A]Y7] 5!+ P04 M" #$;@A7GEA%'N," #$!P &0 'AL+W=OYCV8)(;L.K8S':@_?>[ M-C2B$- >]I+XXY[C)"#[VY,8M+W]?Y'"JJ+^0"!,Z4 M4E748%?-?+U00 L'JK@?!4'7KR@37C9P8X\J&\C:<";@41%=5Q55;]? Y6KH MA=[[P)C-YL8.^-E@06

%38\QN6@E4@-)."*"B'WE5X>9/:>!?P@\%* M;[6)=3*5\L5V[HJA%UA!P"$WEH'B;PDWP+DE0AE_-IQ>LZ0%;K??V6^==_0R MI1IN)/_)"C,?>CV/%%#2FINQ7'V#C9_$\N62:_T435NJ]'D= 2&,J[/$/(\&9'3DS-R0I@@3W-9:Z36 ]^@9KNRGV_T7:_U M10?T?:_%!8F#+R0*HK@%?G,_GI5[0'(8>7D -:@E>]OE3V V^MAG]3V0? M;,>-[?@8>S:&I>1+)F8D5U P0TJ:,\[,6YOK-5774=DBLLQZ_:@7#/SEMIW] MJ'Z8=-,FZH/.3J.SIB?96ZO73X)=1?M1_;"7]MLU=1M-W:.:[D%K MK#U*8:ZPUIA:,<.@-6O=O?7/PR#:$=D6%!W8Z;31F![7V)2AA53V06A3E[:< MQ$X0[\C;C^J':;*[K_Y6C;7OVP-5,R8T'K42<<%%BO[4^LU8=XQ[NPO4$L#!!0 ( ,1N"%&PO=V]R:W-H965T2?^S>%&R,=\ :#(4YID^65GH=3RPG'R: $IR[MB"9F^,Q,R94J?RKF3 M+R6PN#!*$\=SW8&3,IYU1L/BVJT<#<5*)3R#6TGR59HR^3R!1&PN.[3SA'@T)Q_CRXYKW@@2B)1!,/UG#5-($D/2[_%7!>W4;1K#W>,7^E71>=V9 M!Y;#5"1?>:P6EYVS#HEAQE:)NA.;#U!UJ&]XD4CRXG^RJ9YU.R1:Y4JDE;%^ M@Y1GY5_V5#EBQ\#S#AAXE8'WRL"G!PS\RL!_:PN]RJ#WRH#V#ACT*X.BZT[9 M]\)Q 5-L-)1B0Z1Y6M/,0>']PEK[BV=FH-PKJ>]R;:=&?XAL_OXSR)0$\* ( MRV)R!PE3$)-KIA3(G+PG-TQ*9@)*W@6@&$_R7X>.TJT;AA-5+4W*EKP#+8U7 M\RZA_@GQ7(^2+_?=S&V9JQ_R^RKK$=PN,_X(AD5A#QC+5P@OLO BS:,% MS[.\5OB6WGDEIFGNZ)#4 M.\@DFHM\R2*X[.A,DH-<0V?TRT]TX/[6YGQ,6( )"Y%@C6CX=31\&WUTS3.> MKE*2P!JDSI_$3 ?1%@PKY]A@8,("3%A8PJA;T$PQ6H_\;G_HK%N"C_6\R5LL-.]LW/OS-7_ZCZ6 M7MU_\)SV!Z=[#X9(K]?P;+_V;-_JV=N;*9FP[)'<=,==,N6*?].E?N?25UVH M7<5%K=$A-L:GRW'@N ?3]MD0^L7;RV ACP@),6(@$:XR403U2 M!EAE9X 9#4Q8@ D+D6"-:)S6T3A]4]F9\2<]1:*%GI]0?.K8:U )I70G*=&N MVV\FI*FUZ6-=C@D+D6 -EY_5+C_[T5*E?KSX=O^8Y4JNS)43_7 ,Z=+ 3LBM M?@41DT\9M T6JSN.G<:8L 3%B+!&F/JO!Y3YUA)]1PS&IBP !,6(L$:T:#N M=LGK6N?XS2I] &DB,N-ZT:AG75(O(',]FRR+R8D=?6R$*EI_)U-[KSXP41L, ML6A-S^^(#11I'56!&D7,[WJOBYB]O6/'."HMQ*(U?;T5$*AU1?P#5[+/F_8A M@RJ$H-("5%J(16N.K*T80GVL>D91]1!46H!*"[%HS9ALM1-J%T^.R*P]NW93 MN1I33@E0:2$6K>GJK9A"OPLUY0[6(EGS;/Y:,&L-.JIV@DH+4&DA%JTY.+;Z M"4434"BJ@H)*"U!I(1:M&9.MBD+M,LI_%);M]*/C=+JG&%-ZZN\KRZC-AEBT M9@BVJ@K]+F25@SD309VV>^#H88(JI:#20BQ:A-30(NTQ_1Z']A'0_4#? MGPFA7D[,+K=ZW^3H'U!+ P04 " #$;@A7XNL,04X$ #)$@ &0 'AL M+W=O0]_#HBN3DP,6;W!*B MT+.'5_H9JMTASN;[/"&+(EZV3T+ M:+DE2TQ3PB3E# FRGCH?_,>%'^H @_B+DH.L/".=RBOG;[KQ1SQU/#TCDI"5 MTA08_NW)$TD2S03S^*<@=DGG%DCSQY"N-U7;JC!P4DS7. M$O6%'WXG14)]S;?BB31_T:' >@Y:95+QM B&&:24Y?_QMT*(2@#PV ."(B"H M!_3.!(1%0'CM"+TBH'?M"/TBP*3NYKD;X2*L\&PB^ $)C08V_6#4-]&@%V7: M*$LEX%<*<6JVP()1MD'/1* GGJ:P=LLM%@3]@I9@RCA+".)K5,"DP1G /9IC M25<(LQA%-,D4B=%M1!2FB;R#Z)=EA&YO[M -=!*^''C#V@T+M'@1>$EOD\71\>V-+YL=$7_WOT$S'"TFBAX0O/\'W.4B*P MX@)!==/O=N&=N/ ..3IL!PY;Y4XT-GFT.2$?JVB3G)KU_FUV\U9$08AX*J+6FU M6+]+BW5)%G5)MNB([&0)!N42#%HM]M5\QN'EQWNH#1MR_"[ AD8J* [ZPW1+ MBSH@[VRKE _0K[K'&WG#FA%MJ*'?KSG1SN75K&CE\LZ8<5@J,6Q5HF+&2GT\ M6Q,OJ3*\2A4;JJF*G:NNBI7KG"JC4I51ZRNZ6*]A/ZGW'^8K 3M*),DJ$U11 M(JTO[:C+E[9+LJA+LD5'9">+,BX79=QJU:7BJS?M1CBK2&QV^[L$,WG)D^.& M0X9^S9!-R'A<;TS6KP?#/S6;>PLNFBD:]0(KU+#AFJJ844UU+"A&FJXE:,Y M'( VYDY$0GH94_GAJ>PM[UT^F-N&6O_)&\HOC,7 Z]<*9Z:QRW!,1$: +^O.=2ZHJ$'*&^O9M\! M4$L#!!0 ( ,1N"%?,;^+8^ ( *L) 9 >&PO=V]R:W-H965T0IJ9YX6^>A19 Z_02K)EA=@O,*P:X)]JD1G)K@G!K!K0FE=;WR M7B8NP +[8T8WB"FT5%.#,OLE6^8K)>H[>1!,ODTE3_@W)*0YH$>\!8[. Q X MS?@%^HB>'@)T?G:!SE!*T&-""XY)Q,>ZD$$550_K -,J@/5* !O=4B(2CN8D M@JB''QSG>T?XNC3;.+9VCJ?64<&O!1D@V_B +,.R>_8S.YUN]=GYO^CS?XZ^ MEPR[*;]=ZME_+3\*4AYFE!<,T(_K!1=,_H=_]M6[4G3Z%=6Y-N(K',)$DP<7 M![8&S7__SO2,3WW)?DNQX"W%YF\DME<6IRF+_KG4[TX>82\O-^[!!AS#]3IF#T'6\&K8<7L(,FW'Z?@]! V-5_QZC5_O MJ-]Y'$/9'UM>$<-"%GD%+ 327^1*]+*U$V-@VE<=YWTHZZKC*NA#&68GB_,^ ME..X'?=ZJ_ODP)9EV^&ULQ9KO;^,F&,?_%>2=ICMIK6/RLUT:J0D^;9,Z5>UZ M>TUCDEAG0P:D::?]\.6DF9[KO>FM0G/YX'O@\&/8;P5\JM:,:;18YYQ M=1&LM%Z?AZ&:KUA.U:E8,VY^60B94VUNY3)4:\EH8HWR+,2=SB#,:U%$ 6[@IMTN=)%03@9K^F2W3)]M[Z6YBZL M*4F:,ZY2P9%DBXO@,CJ/,2X,;(TO*=NJO6M4=.5>B*_%S:_)1= I6L0R-M<% M@II_#VS&LJP@F7;\54&#VF=AN'^]HW^VG3>=N:>*S43V9YKHU44P"E#"%G23 MZ1NQ_855'>H7O+G(E/V+MF7=(0[0?*.TR"MCTX(\Y>5_^E@)L6=@.&X#7!G@ MYP:]5PRZE4'WF0%^S4.O,NB]U4._,K!=#\N^6^$(U70REF*+9%';T(H+J[ZU M-GJEO!@HMUJ:7U-CIR>W6LR_GDR-U F:B=R,/T5M!$_0[U1*6H01?21,TS13 MGTSIW2U!'S]\0A]0RM$?*[%1E"=J'&K3F (9SBO'T](Q?L5Q%UT)KE<*Q3QA MB<.>^.T''OO0B% K@7=*3+$7^-N&GZ)NYR>$.[CK:,_L[>;8U9W_YSW^S]Y; M8G3K8=&UO.YKPV)%)3NY?SDL+LV8X$MFI@J-[I_0?KUK^F2++[=4N@(Z+5WV MW"Z+&?%F<701FRE-,/K!@\N,/T:#SLRL:D# ""8N!8*VX]>JX]7STZG$N MXS'?BYLK'%[2L>& A)$2-K"P8J5[F$0C?#8.'_9E=E2*1MVZ4DN^?BU?WRM? M_+@V"YC53FEDAKLJQK=";%>N!7I@2KOD[+]HS["#!^U&S[SNCY7I+1YC((\M M.0>UG .OG#=L+I8\M1/'FLE4),B\VK0&II66*X:XT.C)O!C)TN9OYYHP]?H[ M=LQ"PHA?"6SZ1J5"(Y27JU:$44*?7.MF#-2L5L2&=<2&WG:2U.BOA71I[[4\ M5GM(&(&$Q4"PEORC6O[1^R^[(\BX0<(()"P&@K7B=E;'[T_IM2C:A)L2-O)OABWD+_H"^F*.7+W@UN7SD3^;;#Y,S%)#I^ R41@YTKELFE$[9 MOT7*'S4Y?W0HZ3\TK>FM,(57*4_S3>Z,"VB:#THCH+08BM:.59/M1\/O,,&! M?B@ I1%06@Q%:T>O^5@0>7/:MTQPH+D_*(T+/>H++1"[6^"G/7ZSW9=7)7PLTK$40F7Y2&5 M\D:+M3V%<2^T%KF]7#&:,%E4,+\OA-"[F\)!?51H\B]02P,$% @ Q&X( M5YURKPY7! 7!0 !D !X;"]W;W)K&ULQ5AM M;Z,X$/XK%G,/XHE(1(\%3D5$VK"=46R) 46 [8B5+V9 M,UY@J89\X8H5)SC51D7N(L\+W0)GU)F.];,;/AVSM"4BDI-$EBZPNFS(%/^KD53(/6) KEG_-4KF<.+$#4C+'ZUS>LNT?I$YH6/I+6"[T+]C68XFG8\ZV@)>SE;?R1J>J MK16XC):KY>ILI.SF]DRQY/)^IO%)PQ0JUV +K5>DT.:'GG&;(ZO"O-1T WSL#R$,^^!6X0)1(17VQ1/";JODZ@M\3 MX:M>;%68RPWA:O."3QQ3"=0*$/ 19QS"%6."$31_68 M('Q#G.EOO\#0^]V".FA0!S;OT[_74DBUB!E=G($96624JENUJ7.]G._6(@4K MPJLRO0??=DK7E4H5+-+!RN;?3&$TB**QN^G .&PP#JT8=2%588\%4WF%<-\Q<<;"%GSM9V?L_DMH1 M'O@F-LIHO1&Z):5R/GS!/@&,_.Z] )&!A0XCH#WQ43M^#$>P9R]"HRS0*@$- MY>P)[[?"G\>Q'_90##02 >T:<3S)[ $:M(!Z/1B-1$"[1E@990^<80L."J,( M]6$R0@'M2M'5D)T K&Y.;3HC(3#Z&4QB%:Y3DS(" X]0F..9)&YMB2!$8<\_ M!VA4!=IEY5 B&1W:(,CH!;)2]X$<4CMYP2&^'X<]%(8,LR,[L_]H#D%MKN\K MD:%Y9*?Y-W (ZJ!^%'A]93/,C^S,O]-P]0>9^>S:TX!VSRS"FH+#?3BH.^#!!FA07:A.9!6:B^[\=6_@^&P+[Y1$&3_ M"CF06Z*#6];0/++3_ ^GE3;Q(P_V]K$A?F0G_K=02UL,@E$(@]>U(5'!>'655 \E6 M^OCH@4G)"GV[)#@EO)R@WL\9D\^#,D!SH#C]#E!+ P04 " #$;@A7PT#\ M^;<$ !T) &0 'AL+W=O1*(L[^^TI B+$)L2=G MUA!%'!E-]XQ_$UM")'I*XE3,C*V4NVO3%-&6)%A^$JYG1U2TB,8FD1F#U\TAN21QKDFK'?R74J&)JX>'V,]W+ M.Z\Z\X %N67QWW0EMS-C;* 56>,LEI_9/B!EAP::%[%8Y-]H7]0=30P494*R MI!2K%B0T+7[Q4WDB#@2*TRRP2X%]+.B_(NB5@MZY$?JEH']NA$$I&!P)[.$K M@F$I&)X;850*1N<*QJ5@?&Z3)J5@DMNAN'[YQ7>PQ/,I9WO$=6U%TQNY@W*U MNN8TU69?2JZ.4J63BC0R2FL?BD M2K\L'?3QPR?T =$4_;5EF<#I2DQ-J=JBB694QET4<>U7XO;0'4OE5B W79%5 M@]YIUP];]*8Z!]6)L)]/Q,)N!?Z6I5>HU^T@NVOW&MIS>[[<;NK.^Z*[[XON MM7"&W+)?E8?G-]YJ,4*ONB-Z.:_WYAW100L$JQPQXAE9H;B\;)0TC3L^9+L"2%@(TLF:Z0>5 MZ0>M[#"51#50(O*D9@R"--FV( QS@IXN/,ZMP:@_-1\/[7A:J3<^JN.R3VM-!H<@;S6/ETZ&D+" DA8" 2K&6-8&6/8:HSE'N^:S-"JNG0,@X0Y MD# 7$N9!PGQ(6 )"X%@-;N.*KN.?GB>.H*T.B3,@82YD# /$N9#P@)(6 @$ MJUE]7%E]?&:>VD$IT^Y5CL8)RU+9Y.)6V*4NAH0YD# 7$N9!PGQ(6# ^3:&Z MZE//CT*@D#5[3BI[3L[+*&D:L:0QH9PTY(&#HWSRM(XU.4HG3ZL,^D=GPFUM MZZ6V@(3YD+ $A8"P6KNL;HO?\%VWSTC:4=<.JB!TAQ0FEO2:M.A\=%L"#2B M#TH+0&DA%*UNS8.W ]:;: T'Y06@-)"*%K= MNO:+=>T?/C\J0T*9'I+F@-)<4)H'2O-!:0$H+82BU4W_\N[*:GU?<.E,J9UV ML9]!WTR!TEQ0F@=*\TO:&U.< #1H"$4KC&H>K$!("-_DRU<$BK3QBE>O56FU M1.8F7QAR5+ZPKF^MAG+'NG:+!3 O^&(]SAWF&YH*%).U"M6]&@T,Q(LE+L6. M9+M\_<,#DY(E^>:6X!7ANH(ZOF9,/N_H -5"H_G_4$L#!!0 ( ,1N"%?V M:87K(P0 !\4 9 >&PO=V]R:W-H965T7TWHBQV)J-L[$%,1CQ5(8OA02"91A$5_TXAY+NQ@YW] MP"-;;Y09<">CA*YA >I;\B#TG5MZ"5@$L60\1@)68^<&7\\(,8#,XCN#G3RX M1B:4)><_S,WG8.QXAA&$X"OC@NJ_+.?PJE3SFF A]=[[W=9\#J8 M)94PX^'?+%";L7/EH !6- W5(]_]#D5 />//YZ',?M&NL/4"^@4@$X6:,XL"VM.%9V,!-\A8:RU-W.1Y29#ZVA8 M;,JX4$(_91JG)G>4"?2=ABF@>Z R%:!KI"3Z!2WT&Q.D(2"^0I75!;J1$K0! MC0/TA=$E"YEB(/?H .G:/(*?"L'B-9I2R23Z. =%62@_:;??%G/T\<,G] &Q M&'W=\%1J3W+D*AV,H>3Z!?%I3IR\0+R/[GFL-A+=Q@$$#?B9'8^)Q8&KLUBF MDNQ3.256CW^D\27J>!>(>*331,@.GX.OX3B#$PN=3EG93N:O<[*R%[H,(8U] M0(NL,_PF>)KHZER@.Q;K<49#M%!49:5',YJ8!=98DGS&;O.,IN-1VSB-0,=EAO_D M"LV9]$,N=<.X"^FZ*4P[E]?E:G:FDUJ:!F6:!O:7BRN=!)KUR:; !@WU([UG M]3LVPL/N"^_754GLRDKL"VPA1+B)DQ7XUI7=DK-:C,,RQN&[M[UAF\EIR5DM M.=BKY-X[K_$5^)ZM\]EMZLP.-B*XC>97>#FF7W3J\1,[2;'NOQ\A5M- MZKPJY2:M*#G737;FXU;F^='9/15K%DL4PDI#OT&UH8R;*^IJV3350B-9**$V ??D=*EI19$H+ ?F-+E.[NQSOQ M_KCI7JJ?>@=@R%.:"#WS=L9D-[ZO-SM(F;Z4&0A\$DN5,H.W:NOK3 &+G%&: M^&$0C/V4<>'-IVYMI>93F9N$"U@IHO,T9>IY 8G?(UF M7F")((&-L2X8_CW"+22)]80<_Y1.O2JF-6Q>'[Q_=IO'S:R9AEN9_."1V-<%S8JMP;A4\YVIGY'1BN --L MR"IA0I/?R'>F%+.Y(N^68!A/]'MR0;@@?^UDKIF(]-0W&-HZ\#=EF$41)NP( M,R;?I# [37X7$40O[7U$KKC# _9+B% M'N>#*BD#YWS8X7Q5?G6K(W<%6J^U/4)%+G"MIPAV? '56XH]Y4'G W6'[%U[D[ MBK9,1.3I&E0;;^%QY#S:KO(X'TW]QQ:(<04Q[H5X$-P@P[UA!EH_WE[S-V9H M4L%-3EW0R1EPKRK'95RT%[*ZRK\]2O#1V7> MUF7>.AFNCQAH.P,-ZJ89G/RK+ETV.<(.CD;SIJ_B:.;@PPLJ3=;/!-(LD<^8 MMG_)12M:$67<3-%DW $7UG#A&^#@*4-!QN4X-_AYUVPOJ'$3N5+VTXKQ)+"$ M/ /KQ@^/\(=!T(%?:P#M%X%;)EC$6N.=H__36@#HR16 GD,":*T!]/0B0(]5 MH.O8UC) 7Z4#?W*QC63:&O4<2D!K*: GUP)Z#C&@M1K0?CEX4VF/5:&K$]:R M0/MUX52=\+JE$W:TDK"6B_!UG8MJH7R^&MF],;3EF-H$838/+"=94%7-0<6-DYF:/M30XR;C+'Z4I:'AC_ M+/882_":9U2LG+V4Q8WKBF2/][4 MS1&ASGI9M=WS]9*5,B,4WW,@RCQ'_-\[G+'#RH'.6\,#V>VE;G#7RP+M\".6 M3\4]5V]NRY*2'%-!& 4<;U?.+;R)X40;5(B_"#Z(DV>@I3PS]EF_?$Q7CJ<] MPAE.I*9 ZN\%;W"6:2;EQS\-J=/VJ0U/G]_8?ZG$*S'/2. -R_XFJ=ROG+D# M4KQ%928?V.%7W BJ'$Q8)JI?<&BPG@.24DB6-\;*@YS0^A^]-@-Q8J!X[ 9^ M8^";!N$9@Z Q"-[;0]@8A._M8=(85-+=6GLU0GN,T0%N */*AG3,L. ;<$?*E7O,,5;(L&& M"2G 180E(IFX5,BGQPA*N=L(_XT0 M/C$J]P+$-,6IQ3X:MI\.V+MJ0-I1\=]&YZ6Y$@1*\J&S#@F!I74=J/DF)SY<34-#K@TS-?1:,-"?&X)MH,"W2YZUDF>#DA]PPG:4 M?%&BJ2I\:A-3(DY0!M0LLRJ>]9R AIB-!6)(B?J0P,B2V *9V+7.6ZWS0:VZ MLA>8$Y:21#W4.[\+0A.6X\NS"3WO^>$;F;CI0PPQ41\1&J,6]R&>7>ZBE;MX M3Q'[G=!=RG*;M$'[KUTOQR2+QB2+1R+K! %ZQ]VF-W8=:QA'"LRH;-&H;/%8 M;-W8G)P$X/=5L\;^=%9.S.7.@C%K563!0.@;*X %-)_:UP#H'R7Z(]>TAK!3 M9^9F4;.!9F95LX'@U"QK5M3D3%V#QRT\'-[#W^:,2_(%58=S=:XKU,+/@DDH 2I-Z]-LV]I>8=U6%S=&^QV\V4!+>Z2O MO*I;E2-]?5_V"?$=H0)D>*NZ\JYGREU>7T'5+Y(5U1W+,Y.2Y=7C'J,4,R;<7W4%[$;C^#U!+ P04 " #$;@A7S*P9D<,# !H% &0 'AL M+W=O29--T': M!E;WH)6JYGKWV@4G6 MVUC9-[]N?#90"<5%[Z[Q)L)G_SYX9,V"OCI1]YP5" M CQ6)>%KJQ#B<&7;/"M0!?D%/2 B[^PHJZ"03;:W^8$AF#>BJK0]QXGL"F)B MQ:NF[X;%*UJ+$A-TPP"OJPJR?Z]128]KR[6>.F[QOA"JPXY7![A'6R3N#C=, MMNR>DN,*$8XI 0SMUM87]RIU?25H+/[&Z,@'UT"YT066I2'(>/SJHU8^IA,/K)_K7QGGIS#WD:$/+?W NBK5U:8$<[6!= MBEMZ_ UU#H6*E]&2-[_@V-DZ%LAJ+FC5B>4,*DS:?_C8!6(@D!R]P.L$WE00 MO"#P.X'_VA&"3A"\=H2P$S2NVZWO3> 2*&"\8O0(F+*6-'711+]1RWAAHA;* M5C!Y%TN=B&^1P S)S MP4T+"P:]@*Q=C7I<(T!W84"ZXNCBQ^Y@@ 7')/TG% MW38!']]_ N\!)N"O@M8OEGLZ=GQL]_=^CCX+A M]TO%;WC^"[P$[61/+M<$$0S?U\V#KA8#2##/2LIKAG0Y;ZF!GJH*X14_P RM M+5GI.&(/R(H_O',CY[,NX"9AB4E8:@@V2DW0IR:8H\?IHWQQ<,0!Y)QF& J9 MIB,6!<@&N>*R;N3:#+7PJ(&K-\M#[+J!L[(?AI$_-;IT@[%-"NFZMO#,RM^Z"$W"$I.PU!!LE(.HST%TEOH0 MF4R-25AB$I8:@HU2L^A3LSAG?6CAX>")72S]27DXM?&7DQ*2G-K(,C,M#Z=& MT3+45X?+WOW+6?>TTOHX"WCK0C1*2XS24E.T<2J\YU1X9RD4'=94@DS2$J.TU!1M MG*#G_9\[NX?YZ6+AGWSX^VXXK18:H\'FH(OJJ5&XB*;U8I[4QL >G)Q4B.V; M(RLN':J):'?&?6]_+/:E.0R:]%^[5QM7TY^H8[3FI.89WY[!?8-LCV6X2K23 M0SD7"UG96'NLU38$/33G-O=4"%HUEP62L67*0-[?42J>&FJ _G Q_@]02P,$ M% @ Q&X(5^"3R.=6!@ 53 !D !X;"]W;W)K&ULK9MK;]LV%(;_"N$50PNTL23?DLXQT$27;F@[(UFVCP4CT391B71) MRJF!_OB1DB)9L6,GD]V"BU?3\< MRGA#,BPO^)8P_9L5%QE6^E*LAW(K"$Z*H"P=>HXS'6:8LL%B7GRW%(LYSU5* M&5D*)/,LPV)_0U+^=#UP!\]?W-'U1IDOAHOY%J_)/5$/VZ705\.:DM",,$DY M0X*LK@1YYF XHY_*7F2!Y^1Z7 Y20%?/I*J M0Q/#BWDJBW_14W6O,T!Q+A7/JF#=@HRR\B?^43V(@P#=T>X KPKP7@1,3@6, MJH#1N1G&5<#XW(!)%3!Y&7"JT],J8'INAED5,"L&JWRZQ=#X6.'%7/ G),S= MFF8^%.-;1.L1HB,Y^9,BL<_0S'/MICM+<,ZJD4Z*KBC M$]REX$D>-XK<-S*-NYIY4^+&W3A3W=_++8[)]4"7;TG$C@P6O__F3IT_NK0" M"?,A80$D+(2$14"PEEK&M5K&-OKBDRY9:UQ,=)(HE1)3W1#.>,Y4EUBLM+YB M*6'3 F:6 ;N%.W8<9S[<':H ,F4 "0LA81$0K*6"2:V"B54%7_+LD0C$5U4= M,K.8VF"EUT\QT=-8@C#2]8,(G"+&%8T)2K5:=,CKJG"]03^[:U@I&VOZOK*! MA/F0L 2%D+"HA(V:;]J]8O6$LVT%LW4*IJE2:N+Q0ZG.3':$;IX)'K*+Q;4 M72JP\OJJ8'K<(]=QCLL'9-( $A9"PB(@6$L)LUH),ZL2'EA"9[/<$=H3++IV7#YD,P)(6 @)BX!@+55V9I^,UX*42]&?O;>2-]8&]177U?$TW'.%5(E&$&^Y]1,.8J;4F.LQF;V28BD:U9,0D9#I[1B3]I7+* T M'Y06@-+"BG;X7GCMMR*"2MC6RX%7YUKU$K =%9R9(J+E\(E+>6B$H'NE)ZJB MPOR]0B%EF,5&-DLN:;$;#GXH4A6H@.49$>4F^0M7R->+G91++;PPQ>M.55F; MUEM5]HZNZL;'7"_$3#,[U039I@"4%H+2(BA:6WA>(SS/O@Z*8Y'KT=#U")&6 M"+5HNI8A-W9@;[EX1VMB;SR>O9BS.N^:O7B' ]"6A:"T"(K6'N;&9G6MOMSB M87EWUSF8H'XJ*,T'I06@M!"4%D'1VN)H7%5W#&O"NZ#&*BC-!Z4%H+00E!9! MT=JJ:5Q8UV[#]C7C*]QA#9\<>Q^W]JR]U0#JF(+20E!:!$5KJZ&Q5UV[OVI3 MPUL4YT*0$[(XMD:]#E5 VH\^*"T I86@M B*UE9%8[6Z=J_5K@K&V3N;,H[M MTO%EAS0@/4D?E!: TD)06@1%:TNC\5]=N].YQ/M"#*=MUU\ IB>=TEM[9&]) M@!JOH+00E!9!T=J2:,Q7U^Z^+G,1;[ DYF^SU=&E3EU-Q>K_P.!G+"\/Y>5:Q[%*]8Z>Q8VZQ)^PM!$A: MT-&#Z5$/0M"<$12M'.#AP:'GC(AU<9Y=ZO'38U:>?ZZ_K<_,?RA.B@^;V\L# M]Y^Q6%,F44I6.M2YF.E]IBC/L)<7BF^+(]2/7"F>%1\W!"=$F!OT[U>&ULE51M;]HP$/XKIZR:6FEK0H"LZD*D JNV:950 M7[8/TSZ8Y"!6'3NS+]#^^]E.R)A*D?:%^)R[Y^7"7;I5^M&4B 1/E9!F$I1$ M]648FKS$BIES5:.T;U9*5XQLJ->AJ36RPA=5(HRC* DKQF60I?YNH;-4-22X MQ(4&TU05T\]3%&H["0;![N*6KTMR%V&6UFR-=T@/]4+;*.Q1"EZA-%Q)T+B: M!%>#RVGB\GW"=XY;LW<&YV2IU*,+OA23('*"4&!.#H'9QP9G*(0#LC)^=YA! M3^D*]\\[]&OOW7I9,H,S)7[P@LI)2-(55UQ59!Q67[9$]='_8*XOB5@K@KB+WNELBKG#-B6:K5%K3+MFCNX*WZ M:BN.2_=1[DC;M]S643935<7)=ID,,%G 3$GB @/=W,X/3D[@COL>S7TN,/_[57N6C3G M)A?*N";]O%H:TO8/]^M0-UJ2T6$2-X27IF8Y3@([90;U!H/L[9M!$GT\8F'4 M6Q@=0\]NT0UJ@1K4RK?GD, 6(O$0;J@W61)%41IN#A"/>^+Q46++-3K$U5:- M][@N7N5*>J[D*->](B8.D24OC U&+]G"O6FJ4*_]SC"0JT92.UC];;^6KMII M_)O>[K0;IM=<&A"XLJ71^0=K5+=[H@U(U7XVEXKLI/MC:5&PO]%266$X$L>;+2)?WU MU;5LYZ.ZI>O#ELPAM72/SKE'TG4M,BS-6K#;!6,F6.5"EB.R,*;X%(;E;,%R M6EZH@DF+9$KGU-BNGH=EH1E-2R#E(NQU.G&84R[)>"B7^75NRF"FEM*,2+\- M!>[V-1V1;OR1!$YNHE(V(O=G[W\ME;EZ%[C[R8>3D\[]^=5^_*P"SDGH%>V_ M0O2B@^M:#)..=Z6;X:=6J^6>8N1+#WG#1&D#;\ZMC!4QK!=\/,R4W*Q[1%S M*M.#6JAU25AX:1MVP MLC,FQ"T\*#^S'>U5MK5G'=@QV3:MH;KI9%P']+?5G/:V;.]-ND'!'Y3YLK33 MD54?*IO=:);Q5=5?9:T!3+V+J].B$.O/@L]ESMSD7YUP/*0-+U@HS1]M-BB5 MF0TP38('I@V?;4=^:UK11U.3@\$U&R4%Z#.OW]]8A8>>(T$8# M.(J-R \XU(E-TF"ZY,)P6?<6/$V9?'92L/*&3NU!?4??CD]91I?"W+7@B&S: MWUG*EWG2CKJ!A:A';=K?8'K=N#T'VEQ M_IDF213%,;:BDXG7P01;MSB&KU\-\P8,+ ]D^K.UQG<;KY"7ZP#;TYT"5CN0WY\':LK/B2+85DBA*$C\"F-]!%&$(/(TX@CD #Q@21=5[<.]]%#;OJ7#S MZ]7X"5!+ P04 " #$;@A7EXJ[', 3 @ "P %]R96QS+RYR96QS MG9*Y;L,P#$!_Q=">, ?0(8@S9?$6!/D!5J(/V!(%BD6=OZ_:I7&0"QEY/3P2 MW!YI0.TXI+:+J1C]$%)I6M6X 4BV)8]ISI%"KM0L'C6'TD!$VV-#L%HL/D N M&6:WO606IW.D5XA-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,E MC'%BM/XU@LD/['X 4$L#!!0 ( ,1N"%=(?+47%P4 %TJ / >&PO M=V]R:V)O;VLN>&ULQ9I;<]HX%(#_BH:G[$,6\*UM)F0F"=LN,VG# )/7'6&+ MH(TM9209FO[ZE>Q0C@N[T1)MR/_X-)T=Z;\U"@I M$C %DAD!FYX1, .0'!/+#.2%3 /D1@?QX3L@, M0'Y"(#_10GZ6RL<:R+Q?"5&PLEJ[IV%DXS\>/ MK]PYB(FY8D@LB[^X43[9M&SJG[E[755:L?F:FT['8IX8$HMBHG)=";;@WT4G M>F!:&!)[8>YT_G)YQULS5/Y*MCD)\F%&&%(K@4O#GGA9"_95<%N; RM$F!4B M8BO,A),M$IOZ/+G#A4DA(J\XJDJZIJF:\>JE[_S8")P/DB\A)EIR$,MBRM_8 MIAFPS<]#,326-B]UZ&@(B:DB(E;%1%E9^)"R,+SP;KN$F$0B8HF\9U-'N3!W1,3N0-.J M3DT983J)B'5R)*TZVI284B)BI?S,KXZ1Q9A-8F*;H(E6=PH&DTM,+)>3B5;; MH! 3DTM,+)=3JU=2@Z+J1CS34SL&Q2SVYJ8;V)BW^"8:?A+R::9.?2S;G?FBSY9OWSK_:L*G119U#3,P_ MR>^9\?*8"UF%C%RO0G*N[,K[Z&(,,3'_),3^V6,^;D+Y('WMW[;KQ5@X#C$Q M_R3$_MECAHAI>.[85KHUNZ^MTQ749(*NJ9#[9X)X. U*"62@AMA"."1=6$LQ"R5FK'KBTDF 62LY0]8 #S$Q"R7$%CJ.>5N6 M>OO+$$HQ"Z7$%@+U68B3LNSDF"EFGI38/'B!!D=WBIDG)38/C@E'=XJ9)R4V MSWL=>5A&^OS#7QYB8N9)R==C]M/VQQ])=!F?6#@GJ]PV $%,3#@IL7 0S)FP ML.Q),>&DQ,(Y58R_1W.(B0DG)1;.:V38/$SGQ2),/AGYFV08)G1D MALDG:^33;TZV-]>%6/E"O_CF_\+Z_3DO\ZEAX:-],2-)PVKJJB[+>[_O43UH M7NS>CMR]V7GS'U!+ P04 " #$;@A7TDF\;1$" 7)@ &@ 'AL+U]R M96QS+W=OINW]?%Q_%P MJJMF-X[]CY3J>E>.;;WK^G(Z7]ETP[$=S\MAF_IV_=YN2]+E,J?A=D;S_'0[ M<_'ZV9?_F=AM-OMU^=FM?Q_+:?S'X/2G&][KKI2Q6;RVP[:,JR9]'*ZG:[H< MY.X\N5F\O*V:X>5-FC1WD$*0SA]D$&3S!SD$^?Q! 4$Q?U"&H#Q_T#T$W<\? M] !!#_,'/4+0X_Q!LD09EP1)$ZP)M!;D6@B\%@1;",06)%L(S!9$6PC4%F1; M"-P6A%L(Y!:D6PCL%L1;"/16U%L)]%;46PGTULG'-H'>BGHK@=Z*>BN!WHIZ M*X'>BGHK@=Z*>BN!WHIZ*X'>BGHK@=Z&>AN!WH9Z&X'>AGH;@=XVV2PAT-M0 M;R/0VU!O(]#;4&\CT-M0;R/0VU!O(]#;4&\CT-M1;R?0VU%O)]#;46\GT-M1 M;R?0VR>;W01Z.^KM!'H[ZNT$>COJ[01Z.^KM!'H[ZNT$>@?J'01Z!^H=!'H' MZAT$>@?J'01Z!^H=!'K'Y&@>!WH%Z!X'>@7H'@=Z!>@>!WAGUS@1Z M9]0[$^B=4>],H'=&O3.!WAGUSM^I=QT_#Z5>>[[6^/SOI'H\WUNNC[\LOTY. MWMX+SNFVHC[_!5!+ P04 " #$;@A7P(AM=.D! !^)0 $P %M#;VYT M96YT7U1Y<&5S72YX;6S-VEU/PC 4!N"_0G9K6.G7_(APH]ZJ%_Z!NAUD85N; MMB#\>[L!)AHE&DQ\;UB@[7G/>I+GBNNGK:,PVK1-%Z;9(D9WQ5@H%]2:D%M' M75J96]^:F+[Z%^9,N30OQ,1D4K#2=I&Z.(Y]C6QV?4MSLVKBZ&Z3?@ZU[::9 MIR9DHYO=QCYKFAGGFKHT,:VS=5=]2AGO$_)T^#]B? M>UB3]W5%HT?CX[UITRZV:5B(VX9"?KS$%SW:^;PNJ;+EJDU'\N \F2HLB&+; MY+NB9\>38[IAVGWRD_.',L<"T\Y';UU($_/T^[C#2/K38Y<*D8_U\5=\3TRE M3WX_ZJ==4?7#['2]K]8OAWD$-CQ.O^./,WZO_\L^!$@?$J0/!=*'!NFC .GC M'*2/"Y ^+D'ZX!.41E!$Y2BD97)PC$ 8 )PG 3 " &UL4$L! A0#% @ Q&X(5XH6&D[.!0 D!\ M !@ ("!#@@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X(5[&\='OT!0 IQH !@ ("! M\A@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ MQ&X(5]T5,M+\!P 'R, !@ ("!,R@ 'AL+W=O&PO=V]R:W-H965TY+ !X;"]W;W)K&UL4$L! A0#% @ Q&X(5^4%)>+_!0 !PX !D M ("!7E8 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ Q&X(5RFOH-ZL!@ 41 !D ("!QF, 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X(5W;F MF,K^!@ PQ$ !D ("!YG$ 'AL+W=O0 >&PO=V]R:W-H965T8=<\V @8 /L/ 9 " @&UL4$L! A0#% @ Q&X(5UR8=JZ$# F!\ !D M ("!!88 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ Q&X(5S><#VMO! %0H !D ("! M\Y< 'AL+W=OU*L-$$ #,# &0 @(&9G >&PO=V]R:W-H965T%L6@RD 8 %@2 9 M " @:&A !X;"]W;W)K&UL4$L! A0#% M @ Q&X(5_/*4=VZ! W0H !D ("!:*@ 'AL+W=O&PO=V]R:W-H965TK$\&S20, .0& 9 " @72Y !X;"]W;W)K&UL4$L! A0#% @ Q&X(5]HR6=*L @ :08 !D M ("!]+P 'AL+W=O&PO=V]R M:W-H965T&UL M4$L! A0#% @ Q&X(5^!K_OKG!0 K"D !D ("!",< M 'AL+W=O! M $X$ "S$@ &0 @($FS0 >&PO=V]R:W-H965T&UL4$L! A0#% @ MQ&X(5Z!V8G.= P D1, !D ("!7]4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X(5Q29IXA"! S14 !D M ("!_? 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ Q&X(5T[$&WP@ P RPP !D ("!Z?X 'AL M+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X( M5YY811[C @ Q < !D ("!T0&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X(5\QOXMCX @ JPD M !D ("!-14! 'AL+W=O&PO=V]R:W-H965T=&UL4$L! A0#% @ Q&X(5\- _/FW! ="0 !D M ("!)B(! 'AL+W=O&PO=V]R:W-H965T M*2ZH9=P, )D. 9 M " @6XK 0!X;"]W;W)K&UL4$L! A0# M% @ Q&X(5U570X98! %!0 !D ("!'"\! 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ Q&X(5X;F MQ.!J @ N 4 !D ("!,CX! 'AL+W=O65U2H# #*$@ #0 M @ '30 $ >&PO7BKL

&PO7W)E;',O=V]R:V)O;VLN>&UL+G)E;'-02P$"% ,4 " #$ M;@A7P(AM=.D! !^)0 $P @ &>3 $ 6T-O;G1E;G1?5'EP =97-=+GAM;%!+!08 2 !( *\3 "X3@$ ! 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.2 html 274 259 1 true 58 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 Income (Loss) Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss Condensed Consolidated Statements of Comprehensive Income (Loss) Statements 5 false false R6.htm 0000006 - Statement - Condensed Consolidated Statements of Comprehensive Income (Loss) (Parenthetical) Sheet http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLossParenthetical Condensed Consolidated Statements of Comprehensive Income (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 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 23 false false R24.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 24 false false R25.htm 9954701 - Disclosure - Financial Statements (Policies) Sheet http://www.lbfoster.com/role/FinancialStatementsPolicies Financial Statements (Policies) Policies 25 false false R26.htm 9954702 - Disclosure - Business Segments (Tables) Sheet http://www.lbfoster.com/role/BusinessSegmentsTables Business Segments (Tables) Tables http://www.lbfoster.com/role/BusinessSegments 26 false false R27.htm 9954703 - Disclosure - Revenue (Tables) Sheet http://www.lbfoster.com/role/RevenueTables Revenue (Tables) Tables http://www.lbfoster.com/role/Revenue 27 false false R28.htm 9954704 - 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 28 false false R29.htm 9954705 - Disclosure - Accounts Receivable (Tables) Sheet http://www.lbfoster.com/role/AccountsReceivableTables Accounts Receivable (Tables) Tables http://www.lbfoster.com/role/AccountsReceivable 29 false false R30.htm 9954706 - Disclosure - Inventory (Tables) Sheet http://www.lbfoster.com/role/InventoryTables Inventory (Tables) Tables http://www.lbfoster.com/role/Inventory 30 false false R31.htm 9954707 - 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 31 false false R32.htm 9954708 - 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 32 false false R33.htm 9954709 - Disclosure - Stock-Based Compensation (Tables) Sheet http://www.lbfoster.com/role/StockBasedCompensationTables Stock-Based Compensation (Tables) Tables http://www.lbfoster.com/role/StockBasedCompensation 33 false false R34.htm 9954710 - Disclosure - Fair Value Measurements (Tables) Sheet http://www.lbfoster.com/role/FairValueMeasurementsTables Fair Value Measurements (Tables) Tables http://www.lbfoster.com/role/FairValueMeasurements 34 false false R35.htm 9954711 - Disclosure - Retirement Plans (Tables) Sheet http://www.lbfoster.com/role/RetirementPlansTables Retirement Plans (Tables) Tables http://www.lbfoster.com/role/RetirementPlans 35 false false R36.htm 9954712 - 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 36 false false R37.htm 9954713 - 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 37 false false R38.htm 9954714 - 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 38 false false R39.htm 9954715 - 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 39 false false R40.htm 9954716 - Disclosure - Business Segments - Narrative (Details) Sheet http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails Business Segments - Narrative (Details) Details 40 false false R41.htm 9954717 - Disclosure - Revenue - Sales by Major Product Line (Details) Sheet http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails Revenue - Sales by Major Product Line (Details) Details 41 false false R42.htm 9954718 - Disclosure - Revenue - Timing of Transfer (Details) Sheet http://www.lbfoster.com/role/RevenueTimingofTransferDetails Revenue - Timing of Transfer (Details) Details 42 false false R43.htm 9954719 - Disclosure - Revenue - Over Time Sales (Details) Sheet http://www.lbfoster.com/role/RevenueOverTimeSalesDetails Revenue - Over Time Sales (Details) Details 43 false false R44.htm 9954720 - Disclosure - Revenue - Contract with Customer (Details) Sheet http://www.lbfoster.com/role/RevenueContractwithCustomerDetails Revenue - Contract with Customer (Details) Details 44 false false R45.htm 9954721 - Disclosure - Revenue - Remaining Performance Obligation (Details) Sheet http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails Revenue - Remaining Performance Obligation (Details) Details 45 false false R46.htm 9954722 - 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 46 false false R47.htm 9954723 - 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 47 false false R48.htm 9954724 - Disclosure - Goodwill and Other Intangible Assets - Narrative (Details) Sheet http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails Goodwill and Other Intangible Assets - Narrative (Details) Details 48 false false R49.htm 9954725 - Disclosure - Accounts Receivable - Narrative (Details) Sheet http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails Accounts Receivable - Narrative (Details) Details 49 false false R50.htm 9954726 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details) Sheet http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails Accounts Receivable - Allowance for Credit Losses (Details) Details 50 false false R51.htm 9954727 - Disclosure - Inventory (Details) Sheet http://www.lbfoster.com/role/InventoryDetails Inventory (Details) Details http://www.lbfoster.com/role/InventoryTables 51 false false R52.htm 9954728 - 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 52 false false R53.htm 9954729 - 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 53 false false R54.htm 9954730 - 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 54 false false R55.htm 9954731 - Disclosure - Income Taxes (Details) Sheet http://www.lbfoster.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.lbfoster.com/role/IncomeTaxes 55 false false R56.htm 9954732 - Disclosure - Stock-Based Compensation - Narrative (Details) Sheet http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails Stock-Based Compensation - Narrative (Details) Details 56 false false R57.htm 9954733 - 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 57 false false R58.htm 9954734 - Disclosure - Fair Value Measurements - Narrative (Details) Sheet http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails Fair Value Measurements - Narrative (Details) Details 58 false false R59.htm 9954735 - 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 59 false false R60.htm 9954736 - Disclosure - Retirement Plans - Narrative (Details) Sheet http://www.lbfoster.com/role/RetirementPlansNarrativeDetails Retirement Plans - Narrative (Details) Details 60 false false R61.htm 9954737 - 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 61 false false R62.htm 9954738 - 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 62 false false R63.htm 9954739 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details) Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails Commitments and Contingent Liabilities - Narrative (Details) Details 63 false false R64.htm 9954740 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details) Sheet http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails Commitments and Contingent Liabilities - Future Payments (Details) Details 64 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-20230630.htm 4 fstr-20230630.htm ex-311q22023.htm ex-312q22023.htm ex-31q22023.htm ex-320q22023.htm fstr-20230630.xsd fstr-20230630_cal.xml fstr-20230630_def.xml fstr-20230630_lab.xml fstr-20230630_pre.xml fstr-20230630_g1.gif http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 83 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "fstr-20230630.htm": { "axisCustom": 0, "axisStandard": 24, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 848, "http://xbrl.sec.gov/dei/2023": 30, "http://xbrl.sec.gov/ecd/2023": 4 }, "contextCount": 274, "dts": { "calculationLink": { "local": [ "fstr-20230630_cal.xml" ] }, "definitionLink": { "local": [ "fstr-20230630_def.xml" ] }, "inline": { "local": [ "fstr-20230630.htm" ] }, "labelLink": { "local": [ "fstr-20230630_lab.xml" ] }, "presentationLink": { "local": [ "fstr-20230630_pre.xml" ] }, "schema": { "local": [ "fstr-20230630.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://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd" ] } }, "elementCount": 522, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2023": 3, "http://xbrl.sec.gov/dei/2023": 5, "total": 8 }, "keyCustom": 37, "keyStandard": 222, "memberCustom": 19, "memberStandard": 38, "nsprefix": "fstr", "nsuri": "http://www.lbfoster.com/20230630", "report": { "R1": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-3", "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-20230630.htm", "contextRef": "c-3", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "menuCat": "Notes", "order": "23", "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "shortName": "Pay vs Performance Disclosure", "subGroupType": "", "uniqueAnchor": null }, "R24": { "firstAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": null, "first": true, "lang": "en-US", "name": "ecd:Rule10b51ArrAdoptedFlag", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "995445 - Disclosure - Insider Trading Arrangements", "menuCat": "Notes", "order": "24", "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "shortName": "Insider Trading Arrangements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": null, "first": true, "lang": "en-US", "name": "ecd:Rule10b51ArrAdoptedFlag", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954701 - Disclosure - Financial Statements (Policies)", "menuCat": "Policies", "order": "25", "role": "http://www.lbfoster.com/role/FinancialStatementsPolicies", "shortName": "Financial Statements (Policies)", "subGroupType": "policies", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954702 - Disclosure - Business Segments (Tables)", "menuCat": "Tables", "order": "26", "role": "http://www.lbfoster.com/role/BusinessSegmentsTables", "shortName": "Business Segments (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954703 - Disclosure - Revenue (Tables)", "menuCat": "Tables", "order": "27", "role": "http://www.lbfoster.com/role/RevenueTables", "shortName": "Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954704 - Disclosure - Goodwill and Other Intangible Assets (Tables)", "menuCat": "Tables", "order": "28", "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-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954705 - Disclosure - Accounts Receivable (Tables)", "menuCat": "Tables", "order": "29", "role": "http://www.lbfoster.com/role/AccountsReceivableTables", "shortName": "Accounts Receivable (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "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": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954706 - Disclosure - Inventory (Tables)", "menuCat": "Tables", "order": "30", "role": "http://www.lbfoster.com/role/InventoryTables", "shortName": "Inventory (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954707 - Disclosure - Long-Term Debt and Related Matters (Tables)", "menuCat": "Tables", "order": "31", "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-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954708 - Disclosure - Earnings Per Common Share (Tables)", "menuCat": "Tables", "order": "32", "role": "http://www.lbfoster.com/role/EarningsPerCommonShareTables", "shortName": "Earnings Per Common Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954709 - Disclosure - Stock-Based Compensation (Tables)", "menuCat": "Tables", "order": "33", "role": "http://www.lbfoster.com/role/StockBasedCompensationTables", "shortName": "Stock-Based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfNonvestedShareActivityTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954710 - Disclosure - Fair Value Measurements (Tables)", "menuCat": "Tables", "order": "34", "role": "http://www.lbfoster.com/role/FairValueMeasurementsTables", "shortName": "Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954711 - Disclosure - Retirement Plans (Tables)", "menuCat": "Tables", "order": "35", "role": "http://www.lbfoster.com/role/RetirementPlansTables", "shortName": "Retirement Plans (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfCostsOfRetirementPlansTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954712 - Disclosure - Commitments and Contingent Liabilities (Tables)", "menuCat": "Tables", "order": "36", "role": "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesTables", "shortName": "Commitments and Contingent Liabilities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": null, "first": true, "lang": "en-US", "name": "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954713 - Disclosure - Business Segments - Reconciliation of Revenue from Segments to Consolidated (Details)", "menuCat": "Details", "order": "37", "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-20230630.htm", "contextRef": "c-82", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OperatingIncomeLoss", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954714 - Disclosure - Business Segments - Reconciliation of Operating Profit (Loss) from Segments to Consolidated (Details)", "menuCat": "Details", "order": "38", "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-20230630.htm", "contextRef": "c-82", "decimals": "-3", "lang": "en-US", "name": "us-gaap:InterestIncomeExpenseNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Assets", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954715 - Disclosure - Business Segments - Reconciliation of Assets from Segment to Consolidated (Details)", "menuCat": "Details", "order": "39", "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-20230630.htm", "contextRef": "c-92", "decimals": "-3", "lang": "en-US", "name": "us-gaap:Assets", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "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-20230630.htm", "contextRef": "c-13", "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-20230630.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProceedsFromDivestitureOfBusinesses", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954716 - Disclosure - Business Segments - Narrative (Details)", "menuCat": "Details", "order": "40", "role": "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "shortName": "Business Segments - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-100", "decimals": "-3", "lang": "en-US", "name": "us-gaap:ProceedsFromDivestitureOfBusinesses", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954717 - Disclosure - Revenue - Sales by Major Product Line (Details)", "menuCat": "Details", "order": "41", "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-20230630.htm", "contextRef": "c-103", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R42": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfRevenuesByMajorProductLineTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954718 - Disclosure - Revenue - Timing of Transfer (Details)", "menuCat": "Details", "order": "42", "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-20230630.htm", "contextRef": "c-142", "decimals": "-3", "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:OverTimeSalesAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954719 - Disclosure - Revenue - Over Time Sales (Details)", "menuCat": "Details", "order": "43", "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-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:OverTimeSalesAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ContractWithCustomerAssetNet", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954720 - Disclosure - Revenue - Contract with Customer (Details)", "menuCat": "Details", "order": "44", "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-20230630.htm", "contextRef": "c-1", "decimals": "-3", "lang": "en-US", "name": "fstr:ContractWithCustomerAssetAdditions", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954721 - Disclosure - Revenue - Remaining Performance Obligation (Details)", "menuCat": "Details", "order": "45", "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-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:RevenueRemainingPerformanceObligation", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954722 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Goodwill (Details)", "menuCat": "Details", "order": "46", "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-20230630.htm", "contextRef": "c-1", "decimals": "-3", "lang": "en-US", "name": "us-gaap:GoodwillForeignCurrencyTranslationGainLoss", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954723 - Disclosure - Goodwill and Other Intangible Assets - Schedule of Intangible Asset (Details)", "menuCat": "Details", "order": "47", "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-20230630.htm", "contextRef": "c-202", "decimals": "-3", "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsNet", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954724 - Disclosure - Goodwill and Other Intangible Assets - Narrative (Details)", "menuCat": "Details", "order": "48", "role": "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "shortName": "Goodwill and Other Intangible Assets - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R49": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ProvisionForDoubtfulAccounts", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954725 - Disclosure - Accounts Receivable - Narrative (Details)", "menuCat": "Details", "order": "49", "role": "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails", "shortName": "Accounts Receivable - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-213", "decimals": "-3", "lang": "en-US", "name": "us-gaap:ProvisionForDoubtfulAccounts", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R5": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "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 Income (Loss)", "menuCat": "Statements", "order": "5", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss", "shortName": "Condensed Consolidated Statements of Comprehensive Income (Loss)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "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:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954726 - Disclosure - Accounts Receivable - Allowance for Credit Losses (Details)", "menuCat": "Details", "order": "50", "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-20230630.htm", "contextRef": "c-4", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryFinishedGoodsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954727 - Disclosure - Inventory (Details)", "menuCat": "Details", "order": "51", "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-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InventoryFinishedGoodsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfDebtInstrumentsTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LineOfCredit", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954728 - Disclosure - Long-Term Debt and Related Matters - Schedule of Long-term Debt Instruments (Details)", "menuCat": "Details", "order": "52", "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-20230630.htm", "contextRef": "c-3", "decimals": "-3", "lang": "en-US", "name": "us-gaap:FinanceLeaseLiability", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-223", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:DebtInstrumentCovenantLeverageRatioMaximum", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954729 - Disclosure - Long-Term Debt and Related Matters - Narrative (Details)", "menuCat": "Details", "order": "53", "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-20230630.htm", "contextRef": "c-223", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:DebtInstrumentCovenantLeverageRatioMaximum", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954730 - Disclosure - Earning Per Common Share - Schedule of Earnings Per Share, Basic and Diluted (Details)", "menuCat": "Details", "order": "54", "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-20230630.htm", "contextRef": "c-13", "decimals": "-3", "lang": "en-US", "name": "us-gaap:WeightedAverageNumberOfSharesIssuedBasic", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxExpenseBenefit", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954731 - Disclosure - Income Taxes (Details)", "menuCat": "Details", "order": "55", "role": "http://www.lbfoster.com/role/IncomeTaxesDetails", "shortName": "Income Taxes (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "3", "lang": "en-US", "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "number", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensation", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954732 - Disclosure - Stock-Based Compensation - Narrative (Details)", "menuCat": "Details", "order": "56", "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-20230630.htm", "contextRef": "c-1", "decimals": null, "lang": "en-US", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-4", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954733 - Disclosure - Stock-Based Compensation - Restricted Stock and Performance Share Units (Details)", "menuCat": "Details", "order": "57", "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-20230630.htm", "contextRef": "c-4", "decimals": "2", "first": true, "lang": "en-US", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "reportCount": 1, "unique": true, "unitRef": "usdPerShare", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:InterestExpense", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954734 - Disclosure - Fair Value Measurements - Narrative (Details)", "menuCat": "Details", "order": "58", "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-20230630.htm", "contextRef": "c-241", "decimals": "-3", "lang": "en-US", "name": "us-gaap:DerivativeNotionalAmount", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954735 - Disclosure - Fair Value Measurements - Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis (Details)", "menuCat": "Details", "order": "59", "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-20230630.htm", "contextRef": "c-3", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:CashAndCashEquivalentsFairValueDisclosure", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "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 Income (Loss) (Parenthetical)", "menuCat": "Statements", "order": "6", "role": "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLossParenthetical", "shortName": "Condensed Consolidated Statements of Comprehensive Income (Loss) (Parenthetical)", "subGroupType": "parenthetical", "uniqueAnchor": { "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R60": { "firstAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-265", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:NumberOfDefinedContributionPlans", "reportCount": 1, "unique": true, "unitRef": "plan", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954736 - Disclosure - Retirement Plans - Narrative (Details)", "menuCat": "Details", "order": "60", "role": "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "shortName": "Retirement Plans - Narrative (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-265", "decimals": "INF", "first": true, "lang": "en-US", "name": "fstr:NumberOfDefinedContributionPlans", "reportCount": 1, "unique": true, "unitRef": "plan", "xsiNil": "false" } }, "R61": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfNetBenefitCostsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-257", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedBenefitPlanInterestCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954737 - Disclosure - Retirement Plans - Schedule of Net Benefit Costs (Details)", "menuCat": "Details", "order": "61", "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-20230630.htm", "contextRef": "c-257", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedBenefitPlanInterestCost", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R62": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "ix:continuation", "div", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954738 - Disclosure - Retirement Plans - Schedule of Costs of Retirement Plans (Details)", "menuCat": "Details", "order": "62", "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-20230630.htm", "contextRef": "c-13", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:DefinedContributionPlanCostRecognized", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" } }, "R63": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "us-gaap:LitigationSettlementAmountAwardedToOtherParty", "reportCount": 1, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954739 - Disclosure - Commitments and Contingent Liabilities - Narrative (Details)", "menuCat": "Details", "order": "63", "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-20230630.htm", "contextRef": "c-273", "decimals": "-1", "lang": "en-US", "name": "fstr:NumberOfCompaniesReceivingGeneralNoticeLetter", "reportCount": 1, "unique": true, "unitRef": "company", "xsiNil": "false" } }, "R64": { "firstAnchor": { "ancestors": [ "span", "td", "tr", "table", "div", "fstr:ScheduleOfFuturePaymentsOfLegalSettlementsTableTextBlock", "ix:continuation", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "decimals": "-3", "first": true, "lang": "en-US", "name": "fstr:LitigationSettlementAmountAwardedToOtherPartyScheduledPaymentRemainderOfYear", "reportCount": 1, "unique": true, "unitRef": "usd", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "9954740 - Disclosure - Commitments and Contingent Liabilities - Future Payments (Details)", "menuCat": "Details", "order": "64", "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-20230630.htm", "contextRef": "c-1", "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", "body", "html" ], "baseRef": "fstr-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-1", "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-20230630.htm", "contextRef": "c-16", "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-20230630.htm", "contextRef": "c-16", "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-20230630.htm", "contextRef": "c-13", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockRepurchasedDuringPeriodShares", "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-20230630.htm", "contextRef": "c-13", "decimals": "INF", "first": true, "lang": "en-US", "name": "us-gaap:StockRepurchasedDuringPeriodShares", "reportCount": 1, "unique": true, "unitRef": "shares", "xsiNil": "false" } } }, "segmentCount": 58, "tag": { "country_CA": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "CANADA", "terseLabel": "Canada" } } }, "localname": "CA", "nsuri": "http://xbrl.sec.gov/country/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r722" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r755" ], "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r720" ], "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/2023", "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r720" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r720" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r794" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r720" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r720" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r720" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r720" ], "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/2023", "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/2023", "presentation": [ "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r719" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r721" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/Cover" ], "xbrltype": "tradingSymbolItemType" }, "ecd_Additional402vDisclosureTextBlock": { "auth_ref": [ "r756" ], "lang": { "en-us": { "role": { "label": "Additional 402(v) Disclosure [Text Block]", "terseLabel": "Additional 402(v) Disclosure" } } }, "localname": "Additional402vDisclosureTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AdjToCompAmt": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation Amount", "terseLabel": "Adjustment to Compensation, Amount" } } }, "localname": "AdjToCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_AdjToCompAxis": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "Adjustment to Compensation [Axis]", "terseLabel": "Adjustment to Compensation:" } } }, "localname": "AdjToCompAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "stringItemType" }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]", "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote" } } }, "localname": "AdjToNonPeoNeoCompFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AdjToPeoCompFnTextBlock": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "Adjustment To PEO Compensation, Footnote [Text Block]", "terseLabel": "Adjustment To PEO Compensation, Footnote" } } }, "localname": "AdjToPeoCompFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AggtErrCompAmt": { "auth_ref": [ "r727", "r738", "r748", "r773" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Amount", "terseLabel": "Aggregate Erroneous Compensation Amount" } } }, "localname": "AggtErrCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "auth_ref": [ "r730", "r741", "r751", "r776" ], "lang": { "en-us": { "role": { "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]", "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined" } } }, "localname": "AggtErrCompNotYetDeterminedTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AllAdjToCompMember": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "All Adjustments to Compensation [Member]", "terseLabel": "All Adjustments to Compensation" } } }, "localname": "AllAdjToCompMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "domainItemType" }, "ecd_AllExecutiveCategoriesMember": { "auth_ref": [ "r769" ], "lang": { "en-us": { "role": { "label": "All Executive Categories [Member]", "terseLabel": "All Executive Categories" } } }, "localname": "AllExecutiveCategoriesMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "domainItemType" }, "ecd_AllIndividualsMember": { "auth_ref": [ "r734", "r742", "r752", "r769", "r777", "r781", "r789" ], "lang": { "en-us": { "role": { "label": "All Individuals [Member]", "terseLabel": "All Individuals" } } }, "localname": "AllIndividualsMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "domainItemType" }, "ecd_AllTradingArrangementsMember": { "auth_ref": [ "r787" ], "lang": { "en-us": { "role": { "label": "All Trading Arrangements [Member]", "terseLabel": "All Trading Arrangements" } } }, "localname": "AllTradingArrangementsMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "domainItemType" }, "ecd_AwardExrcPrice": { "auth_ref": [ "r784" ], "lang": { "en-us": { "role": { "label": "Award Exercise Price", "terseLabel": "Exercise Price" } } }, "localname": "AwardExrcPrice", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "perShareItemType" }, "ecd_AwardGrantDateFairValue": { "auth_ref": [ "r785" ], "lang": { "en-us": { "role": { "label": "Award Grant Date Fair Value", "terseLabel": "Fair Value as of Grant Date" } } }, "localname": "AwardGrantDateFairValue", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_AwardTmgDiscLineItems": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "localname": "AwardTmgDiscLineItems", "nsuri": "http://xbrl.sec.gov/ecd/2023", "xbrltype": "stringItemType" }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing, How MNPI Considered [Text Block]", "terseLabel": "Award Timing, How MNPI Considered" } } }, "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AwardTmgMethodTextBlock": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing Method [Text Block]", "terseLabel": "Award Timing Method" } } }, "localname": "AwardTmgMethodTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AwardTmgMnpiCnsdrdFlag": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Considered [Flag]", "terseLabel": "Award Timing MNPI Considered" } } }, "localname": "AwardTmgMnpiCnsdrdFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "booleanItemType" }, "ecd_AwardTmgMnpiDiscTextBlock": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing MNPI Disclosure [Text Block]", "terseLabel": "Award Timing MNPI Disclosure" } } }, "localname": "AwardTmgMnpiDiscTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_AwardTmgPredtrmndFlag": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "Award Timing Predetermined [Flag]", "terseLabel": "Award Timing Predetermined" } } }, "localname": "AwardTmgPredtrmndFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "booleanItemType" }, "ecd_AwardUndrlygSecuritiesAmt": { "auth_ref": [ "r783" ], "lang": { "en-us": { "role": { "label": "Award Underlying Securities Amount", "terseLabel": "Underlying Securities" } } }, "localname": "AwardUndrlygSecuritiesAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "decimalItemType" }, "ecd_AwardsCloseToMnpiDiscIndName": { "auth_ref": [ "r782" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures, Individual Name", "terseLabel": "Name" } } }, "localname": "AwardsCloseToMnpiDiscIndName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "stringItemType" }, "ecd_AwardsCloseToMnpiDiscTable": { "auth_ref": [ "r781" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table]", "terseLabel": "Awards Close in Time to MNPI Disclosures" } } }, "localname": "AwardsCloseToMnpiDiscTable", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "stringItemType" }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "auth_ref": [ "r781" ], "lang": { "en-us": { "role": { "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]", "terseLabel": "Awards Close in Time to MNPI Disclosures, Table" } } }, "localname": "AwardsCloseToMnpiDiscTableTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_ChangedPeerGroupFnTextBlock": { "auth_ref": [ "r760" ], "lang": { "en-us": { "role": { "label": "Changed Peer Group, Footnote [Text Block]", "terseLabel": "Changed Peer Group, Footnote" } } }, "localname": "ChangedPeerGroupFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_CoSelectedMeasureAmt": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Amount", "terseLabel": "Company Selected Measure Amount" } } }, "localname": "CoSelectedMeasureAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "decimalItemType" }, "ecd_CoSelectedMeasureName": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Company Selected Measure Name", "terseLabel": "Company Selected Measure Name" } } }, "localname": "CoSelectedMeasureName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "normalizedStringItemType" }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "auth_ref": [ "r766" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Company Selected Measure" } } }, "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "auth_ref": [ "r765" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Net Income [Text Block]", "terseLabel": "Compensation Actually Paid vs. Net Income" } } }, "localname": "CompActuallyPaidVsNetIncomeTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "auth_ref": [ "r767" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Other Measure [Text Block]", "terseLabel": "Compensation Actually Paid vs. Other Measure" } } }, "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "auth_ref": [ "r764" ], "lang": { "en-us": { "role": { "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]", "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return" } } }, "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "auth_ref": [ "r763" ], "lang": { "en-us": { "role": { "label": "Equity Valuation Assumption Difference, Footnote [Text Block]", "terseLabel": "Equity Valuation Assumption Difference, Footnote" } } }, "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_ErrCompAnalysisTextBlock": { "auth_ref": [ "r727", "r738", "r748", "r773" ], "lang": { "en-us": { "role": { "label": "Erroneous Compensation Analysis [Text Block]", "terseLabel": "Erroneous Compensation Analysis" } } }, "localname": "ErrCompAnalysisTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_ErrCompRecoveryTable": { "auth_ref": [ "r724", "r735", "r745", "r770" ], "lang": { "en-us": { "role": { "label": "Erroneously Awarded Compensation Recovery [Table]", "terseLabel": "Erroneously Awarded Compensation Recovery" } } }, "localname": "ErrCompRecoveryTable", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "stringItemType" }, "ecd_ExecutiveCategoryAxis": { "auth_ref": [ "r769" ], "lang": { "en-us": { "role": { "label": "Executive Category [Axis]", "terseLabel": "Executive Category:" } } }, "localname": "ExecutiveCategoryAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "stringItemType" }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "auth_ref": [ "r731", "r742", "r752", "r777" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "auth_ref": [ "r731", "r742", "r752", "r777" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Expense of Enforcement, Amount", "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "auth_ref": [ "r731", "r742", "r752", "r777" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery due to Violation of Home Country Law, Amount", "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "auth_ref": [ "r731", "r742", "r752", "r777" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Explanation of Impracticability [Text Block]", "terseLabel": "Forgone Recovery, Explanation of Impracticability" } } }, "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_ForgoneRecoveryIndName": { "auth_ref": [ "r731", "r742", "r752", "r777" ], "lang": { "en-us": { "role": { "label": "Forgone Recovery, Individual Name", "terseLabel": "Name" } } }, "localname": "ForgoneRecoveryIndName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "stringItemType" }, "ecd_IndividualAxis": { "auth_ref": [ "r734", "r742", "r752", "r769", "r777", "r781", "r789" ], "lang": { "en-us": { "role": { "label": "Individual [Axis]", "terseLabel": "Individual:" } } }, "localname": "IndividualAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "stringItemType" }, "ecd_InsiderTradingArrLineItems": { "auth_ref": [ "r787" ], "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "localname": "InsiderTradingArrLineItems", "nsuri": "http://xbrl.sec.gov/ecd/2023", "xbrltype": "stringItemType" }, "ecd_InsiderTradingPoliciesProcLineItems": { "auth_ref": [ "r723", "r793" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]" } } }, "localname": "InsiderTradingPoliciesProcLineItems", "nsuri": "http://xbrl.sec.gov/ecd/2023", "xbrltype": "stringItemType" }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "auth_ref": [ "r723", "r793" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Adopted [Flag]", "terseLabel": "Insider Trading Policies and Procedures Adopted" } } }, "localname": "InsiderTrdPoliciesProcAdoptedFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "xbrltype": "booleanItemType" }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "auth_ref": [ "r723", "r793" ], "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]", "terseLabel": "Insider Trading Policies and Procedures Not Adopted" } } }, "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "xbrltype": "textBlockItemType" }, "ecd_MeasureAxis": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Measure [Axis]", "terseLabel": "Measure:" } } }, "localname": "MeasureAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "stringItemType" }, "ecd_MeasureName": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Measure Name", "terseLabel": "Name" } } }, "localname": "MeasureName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "normalizedStringItemType" }, "ecd_MnpiDiscTimedForCompValFlag": { "auth_ref": [ "r780" ], "lang": { "en-us": { "role": { "label": "MNPI Disclosure Timed for Compensation Value [Flag]", "terseLabel": "MNPI Disclosure Timed for Compensation Value" } } }, "localname": "MnpiDiscTimedForCompValFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "booleanItemType" }, "ecd_MtrlTermsOfTrdArrTextBlock": { "auth_ref": [ "r788" ], "lang": { "en-us": { "role": { "label": "Material Terms of Trading Arrangement [Text Block]", "terseLabel": "Material Terms of Trading Arrangement" } } }, "localname": "MtrlTermsOfTrdArrTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "textBlockItemType" }, "ecd_NamedExecutiveOfficersFnTextBlock": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "Named Executive Officers, Footnote [Text Block]", "terseLabel": "Named Executive Officers, Footnote" } } }, "localname": "NamedExecutiveOfficersFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_NonGaapMeasureDescriptionTextBlock": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Non-GAAP Measure Description [Text Block]", "terseLabel": "Non-GAAP Measure Description" } } }, "localname": "NonGaapMeasureDescriptionTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_NonNeosMember": { "auth_ref": [ "r731", "r742", "r752", "r769", "r777" ], "lang": { "en-us": { "role": { "label": "Non-NEOs [Member]", "terseLabel": "Non-NEOs" } } }, "localname": "NonNeosMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "domainItemType" }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "auth_ref": [ "r759" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Compensation Actually Paid Amount", "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_NonPeoNeoAvgTotalCompAmt": { "auth_ref": [ "r758" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO Average Total Compensation Amount", "terseLabel": "Non-PEO NEO Average Total Compensation Amount" } } }, "localname": "NonPeoNeoAvgTotalCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_NonPeoNeoMember": { "auth_ref": [ "r769" ], "lang": { "en-us": { "role": { "label": "Non-PEO NEO [Member]", "terseLabel": "Non-PEO NEO" } } }, "localname": "NonPeoNeoMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "domainItemType" }, "ecd_NonRule10b51ArrAdoptedFlag": { "auth_ref": [ "r788" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted" } } }, "localname": "NonRule10b51ArrAdoptedFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "booleanItemType" }, "ecd_NonRule10b51ArrTrmntdFlag": { "auth_ref": [ "r788" ], "lang": { "en-us": { "role": { "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated" } } }, "localname": "NonRule10b51ArrTrmntdFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "booleanItemType" }, "ecd_OtherPerfMeasureAmt": { "auth_ref": [ "r761" ], "lang": { "en-us": { "role": { "label": "Other Performance Measure, Amount", "terseLabel": "Other Performance Measure, Amount" } } }, "localname": "OtherPerfMeasureAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "decimalItemType" }, "ecd_OutstandingAggtErrCompAmt": { "auth_ref": [ "r729", "r740", "r750", "r775" ], "lang": { "en-us": { "role": { "label": "Outstanding Aggregate Erroneous Compensation Amount", "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "localname": "OutstandingAggtErrCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_OutstandingRecoveryCompAmt": { "auth_ref": [ "r732", "r743", "r753", "r778" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery Compensation Amount", "terseLabel": "Compensation Amount" } } }, "localname": "OutstandingRecoveryCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_OutstandingRecoveryIndName": { "auth_ref": [ "r732", "r743", "r753", "r778" ], "lang": { "en-us": { "role": { "label": "Outstanding Recovery, Individual Name", "terseLabel": "Name" } } }, "localname": "OutstandingRecoveryIndName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "stringItemType" }, "ecd_PayVsPerformanceDisclosureLineItems": { "auth_ref": [ "r757" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "localname": "PayVsPerformanceDisclosureLineItems", "nsuri": "http://xbrl.sec.gov/ecd/2023", "xbrltype": "stringItemType" }, "ecd_PeerGroupIssuersFnTextBlock": { "auth_ref": [ "r760" ], "lang": { "en-us": { "role": { "label": "Peer Group Issuers, Footnote [Text Block]", "terseLabel": "Peer Group Issuers, Footnote" } } }, "localname": "PeerGroupIssuersFnTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_PeerGroupTotalShareholderRtnAmt": { "auth_ref": [ "r760" ], "lang": { "en-us": { "role": { "label": "Peer Group Total Shareholder Return Amount", "terseLabel": "Peer Group Total Shareholder Return Amount" } } }, "localname": "PeerGroupTotalShareholderRtnAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_PeoActuallyPaidCompAmt": { "auth_ref": [ "r759" ], "lang": { "en-us": { "role": { "label": "PEO Actually Paid Compensation Amount", "terseLabel": "PEO Actually Paid Compensation Amount" } } }, "localname": "PeoActuallyPaidCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_PeoMember": { "auth_ref": [ "r769" ], "lang": { "en-us": { "role": { "label": "PEO [Member]", "terseLabel": "PEO" } } }, "localname": "PeoMember", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "domainItemType" }, "ecd_PeoName": { "auth_ref": [ "r762" ], "lang": { "en-us": { "role": { "label": "PEO Name", "terseLabel": "PEO Name" } } }, "localname": "PeoName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "normalizedStringItemType" }, "ecd_PeoTotalCompAmt": { "auth_ref": [ "r758" ], "lang": { "en-us": { "role": { "label": "PEO Total Compensation Amount", "terseLabel": "PEO Total Compensation Amount" } } }, "localname": "PeoTotalCompAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_PvpTable": { "auth_ref": [ "r757" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Table]", "terseLabel": "Pay vs Performance Disclosure" } } }, "localname": "PvpTable", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "stringItemType" }, "ecd_PvpTableTextBlock": { "auth_ref": [ "r757" ], "lang": { "en-us": { "role": { "label": "Pay vs Performance [Table Text Block]", "terseLabel": "Pay vs Performance Disclosure, Table" } } }, "localname": "PvpTableTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "auth_ref": [ "r724", "r735", "r745", "r770" ], "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]" } } }, "localname": "RecoveryOfErrCompDisclosureLineItems", "nsuri": "http://xbrl.sec.gov/ecd/2023", "xbrltype": "stringItemType" }, "ecd_RestatementDateAxis": { "auth_ref": [ "r725", "r736", "r746", "r771" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date [Axis]", "terseLabel": "Restatement Determination Date:" } } }, "localname": "RestatementDateAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "stringItemType" }, "ecd_RestatementDeterminationDate": { "auth_ref": [ "r726", "r737", "r747", "r772" ], "lang": { "en-us": { "role": { "label": "Restatement Determination Date", "terseLabel": "Restatement Determination Date" } } }, "localname": "RestatementDeterminationDate", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "dateItemType" }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "auth_ref": [ "r733", "r744", "r754", "r779" ], "lang": { "en-us": { "role": { "label": "Restatement Does Not Require Recovery [Text Block]", "terseLabel": "Restatement does not require Recovery" } } }, "localname": "RestatementDoesNotRequireRecoveryTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_Rule10b51ArrAdoptedFlag": { "auth_ref": [ "r788" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Adopted [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Adopted" } } }, "localname": "Rule10b51ArrAdoptedFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "booleanItemType" }, "ecd_Rule10b51ArrTrmntdFlag": { "auth_ref": [ "r788" ], "lang": { "en-us": { "role": { "label": "Rule 10b5-1 Arrangement Terminated [Flag]", "terseLabel": "Rule 10b5-1 Arrangement Terminated" } } }, "localname": "Rule10b51ArrTrmntdFlag", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "booleanItemType" }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "auth_ref": [ "r728", "r739", "r749", "r774" ], "lang": { "en-us": { "role": { "label": "Stock Price or TSR Estimation Method [Text Block]", "terseLabel": "Stock Price or TSR Estimation Method" } } }, "localname": "StkPrcOrTsrEstimationMethodTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_TabularListTableTextBlock": { "auth_ref": [ "r768" ], "lang": { "en-us": { "role": { "label": "Tabular List [Table Text Block]", "terseLabel": "Tabular List, Table" } } }, "localname": "TabularListTableTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_TotalShareholderRtnAmt": { "auth_ref": [ "r760" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Amount", "terseLabel": "Total Shareholder Return Amount" } } }, "localname": "TotalShareholderRtnAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "monetaryItemType" }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "auth_ref": [ "r767" ], "lang": { "en-us": { "role": { "label": "Total Shareholder Return Vs Peer Group [Text Block]", "terseLabel": "Total Shareholder Return Vs Peer Group" } } }, "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "xbrltype": "textBlockItemType" }, "ecd_TradingArrAxis": { "auth_ref": [ "r787" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement [Axis]", "terseLabel": "Trading Arrangement:" } } }, "localname": "TradingArrAxis", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_TradingArrByIndTable": { "auth_ref": [ "r789" ], "lang": { "en-us": { "role": { "label": "Trading Arrangements, by Individual [Table]", "terseLabel": "Trading Arrangements, by Individual" } } }, "localname": "TradingArrByIndTable", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_TrdArrAdoptionDate": { "auth_ref": [ "r790" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Adoption Date", "terseLabel": "Adoption Date" } } }, "localname": "TrdArrAdoptionDate", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_TrdArrDuration": { "auth_ref": [ "r791" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Duration", "terseLabel": "Arrangement Duration" } } }, "localname": "TrdArrDuration", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "durationItemType" }, "ecd_TrdArrIndName": { "auth_ref": [ "r789" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Name", "terseLabel": "Name" } } }, "localname": "TrdArrIndName", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_TrdArrIndTitle": { "auth_ref": [ "r789" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Individual Title", "terseLabel": "Title" } } }, "localname": "TrdArrIndTitle", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_TrdArrSecuritiesAggAvailAmt": { "auth_ref": [ "r792" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement, Securities Aggregate Available Amount", "terseLabel": "Aggregate Available" } } }, "localname": "TrdArrSecuritiesAggAvailAmt", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "sharesItemType" }, "ecd_TrdArrTerminationDate": { "auth_ref": [ "r790" ], "lang": { "en-us": { "role": { "label": "Trading Arrangement Termination Date", "terseLabel": "Termination Date" } } }, "localname": "TrdArrTerminationDate", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "xbrltype": "stringItemType" }, "ecd_UndrlygSecurityMktPriceChngPct": { "auth_ref": [ "r786" ], "lang": { "en-us": { "role": { "label": "Underlying Security Market Price Change, Percent", "terseLabel": "Underlying Security Market Price Change" } } }, "localname": "UndrlygSecurityMktPriceChngPct", "nsuri": "http://xbrl.sec.gov/ecd/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "pureItemType" }, "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "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/20230630", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "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/20230630", "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_IncreaseDecreaseInAccruedSettlement": { "auth_ref": [], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 19.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Increase (Decrease) in Accrued Settlement", "label": "Increase (Decrease) in Accrued Settlement", "negatedLabel": "Accrued settlement" } } }, "localname": "IncreaseDecreaseInAccruedSettlement", "nsuri": "http://www.lbfoster.com/20230630", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "decimalItemType" }, "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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_PrecastInfrastructureProductsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Precast Infrastructure Products", "label": "Precast Infrastructure Products [Member]", "terseLabel": "Precast Infrastructure Products" } } }, "localname": "PrecastInfrastructureProductsMember", "nsuri": "http://www.lbfoster.com/20230630", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "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/20230630", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "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/20230630", "presentation": [ "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "fstr_RailProductsBusinessUnitMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Rail Products Business Unit", "label": "Rail Products Business Unit [Member]", "terseLabel": "Rail Products" } } }, "localname": "RailProductsBusinessUnitMember", "nsuri": "http://www.lbfoster.com/20230630", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails" ], "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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/20230630", "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_Swap2Member": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Swap 2", "label": "Swap 2 [Member]", "terseLabel": "Swap 2" } } }, "localname": "Swap2Member", "nsuri": "http://www.lbfoster.com/20230630", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "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/20230630", "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/20230630", "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/20230630", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "fstr_VanHooseCoEnterprisesLtdMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "VanHooseCo Enterprises Ltd", "label": "VanHooseCo Enterprises Ltd [Member]", "terseLabel": "VanHooseCo acquisition" } } }, "localname": "VanHooseCoEnterprisesLtdMember", "nsuri": "http://www.lbfoster.com/20230630", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "domainItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r196", "r229", "r240", "r241", "r242", "r243", "r244", "r246", "r250", "r295", "r296", "r297", "r298", "r300", "r301", "r303", "r305", "r306", "r841", "r842" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]", "terseLabel": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2023", "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", "r229", "r240", "r241", "r242", "r243", "r244", "r246", "r250", "r295", "r296", "r297", "r298", "r300", "r301", "r303", "r305", "r306", "r841", "r842" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]", "terseLabel": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2023", "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": [ "r818", "r896" ], "lang": { "en-us": { "role": { "label": "Director [Member]", "terseLabel": "Director" } } }, "localname": "DirectorMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_MajorCustomersAxis": { "auth_ref": [ "r255", "r686", "r845", "r892", "r893" ], "lang": { "en-us": { "role": { "label": "Customer [Axis]", "terseLabel": "Customer [Axis]" } } }, "localname": "MajorCustomersAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_MinimumMember": { "auth_ref": [ "r290", "r291", "r293", "r294", "r427", "r524", "r569", "r595", "r596", "r645", "r646", "r647", "r648", "r657", "r662", "r663", "r674", "r682", "r701", "r707", "r843", "r884", "r885", "r886", "r887", "r888", "r889" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]", "terseLabel": "Minimum" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_NameOfMajorCustomerDomain": { "auth_ref": [ "r255", "r686", "r845", "r892", "r893" ], "lang": { "en-us": { "role": { "label": "Customer [Domain]", "terseLabel": "Customer [Domain]" } } }, "localname": "NameOfMajorCustomerDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_ProductOrServiceAxis": { "auth_ref": [ "r252", "r526", "r563", "r564", "r565", "r566", "r567", "r568", "r664", "r684", "r706", "r799", "r839", "r840", "r845", "r892" ], "lang": { "en-us": { "role": { "label": "Product and Service [Axis]", "terseLabel": "Products and Services [Axis]" } } }, "localname": "ProductOrServiceAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "stringItemType" }, "srt_ProductsAndServicesDomain": { "auth_ref": [ "r252", "r526", "r563", "r564", "r565", "r566", "r567", "r568", "r664", "r684", "r706", "r799", "r839", "r840", "r845", "r892" ], "lang": { "en-us": { "role": { "label": "Product and Service [Domain]", "terseLabel": "Products and Services [Domain]" } } }, "localname": "ProductsAndServicesDomain", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/RevenueSalesbyMajorProductLineDetails" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r290", "r291", "r293", "r294", "r375", "r427", "r456", "r457", "r458", "r523", "r524", "r569", "r595", "r596", "r645", "r646", "r647", "r648", "r657", "r662", "r663", "r674", "r682", "r701", "r707", "r710", "r834", "r843", "r885", "r886", "r887", "r888", "r889" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]", "terseLabel": "Range [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails", "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r290", "r291", "r293", "r294", "r375", "r427", "r456", "r457", "r458", "r523", "r524", "r569", "r595", "r596", "r645", "r646", "r647", "r648", "r657", "r662", "r663", "r674", "r682", "r701", "r707", "r710", "r834", "r843", "r885", "r886", "r887", "r888", "r889" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]", "terseLabel": "Range [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails", "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r818", "r881" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]", "terseLabel": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "srt_WeightedAverageMember": { "auth_ref": [ "r662", "r663", "r884", "r886", "r889" ], "lang": { "en-us": { "role": { "label": "Weighted Average [Member]", "terseLabel": "Weighted Average" } } }, "localname": "WeightedAverageMember", "nsuri": "http://fasb.org/srt/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_AccountsNotesAndLoansReceivableNetCurrent": { "auth_ref": [ "r256", "r673" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r19", "r705" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "auth_ref": [ "r820" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_AccrualForEnvironmentalLossContingencies": { "auth_ref": [ "r292", "r676", "r795", "r796", "r835", "r837" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r21" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r28", "r29", "r103", "r162", "r539", "r574", "r575" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 5.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source.", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "terseLabel": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r2", "r12", "r29", "r495", "r498", "r519", "r570", "r571", "r800", "r801", "r802", "r809", "r810", "r811" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdditionalPaidInCapital": { "auth_ref": [ "r95", "r705", "r897" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r464", "r465", "r466", "r585", "r809", "r810", "r811", "r878", "r899" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentForAmortization": { "auth_ref": [ "r9", "r54" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r65", "r66", "r431" ], "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/2023", "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 income to cash used in operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "auth_ref": [ "r163", "r257", "r261", "r262", "r265", "r891" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails" ], "xbrltype": "stringItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "auth_ref": [ "r264" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r9", "r51", "r54" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_Assets": { "auth_ref": [ "r133", "r161", "r194", "r227", "r242", "r248", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r486", "r491", "r507", "r535", "r615", "r705", "r718", "r841", "r842", "r882" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r155", "r166", "r194", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r486", "r491", "r507", "r705", "r841", "r842", "r882" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r82" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r434", "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" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FinancialStatementsPolicies" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r484", "r695", "r698" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]", "terseLabel": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r67", "r68", "r484", "r695", "r698" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]", "terseLabel": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r37", "r157", "r665" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "auth_ref": [ "r37", "r113", "r192" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r1", "r113" ], "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 increase (decrease) in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r120", "r288", "r289", "r661", "r836" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilities" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r708", "r709", "r710", "r712", "r713", "r714", "r715", "r809", "r810", "r878", "r894", "r899" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r94" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r94", "r603" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r94" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r13", "r94", "r603", "r621", "r899", "r900" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r94", "r538", "r705" ], "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 June\u00a030, 2023 and December\u00a031, 2022, 11,115,779; shares outstanding at June\u00a030, 2023 and December\u00a031, 2022, 10,816,902 and 10,776,827, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r30", "r175", "r177", "r184", "r532", "r549" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "totalLabel": "Comprehensive income (loss) attributable to L.B. Foster Company" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxAttributableToNoncontrollingInterest": { "auth_ref": [ "r7", "r74", "r77", "r175", "r177", "r183", "r531", "r548" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r77", "r130", "r175", "r177", "r182", "r530", "r547" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "Comprehensive Income (Loss), Net of Tax, Including Portion Attributable to Noncontrolling Interest", "totalLabel": "Total comprehensive income (loss)" } } }, "localname": "ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "auth_ref": [ "r844" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNet": { "auth_ref": [ "r335", "r337", "r348" ], "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 June 30, 2023", "periodStartLabel": "Balance as of December 31, 2022", "terseLabel": "Contract assets - net (Note 3)" } } }, "localname": "ContractWithCustomerAssetNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerAssetReclassifiedToReceivable": { "auth_ref": [ "r683" ], "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" } } }, "localname": "ContractWithCustomerAssetReclassifiedToReceivable", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiability": { "auth_ref": [ "r335", "r336", "r348" ], "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 June 30, 2023", "periodStartLabel": "Balance as of December 31, 2022" } } }, "localname": "ContractWithCustomerLiability", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r335", "r336", "r348" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r349" ], "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" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueContractwithCustomerDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_CorporateNonSegmentMember": { "auth_ref": [ "r15", "r241", "r242", "r243", "r244", "r250", "r816" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofAssetsfromSegmenttoConsolidatedDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CostOfRevenue": { "auth_ref": [ "r107", "r194", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r507", "r841" ], "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r71" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtAndCapitalLeaseObligations": { "auth_ref": [ "r138" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_DebtDisclosureTextBlock": { "auth_ref": [ "r121", "r193", "r308", "r314", "r315", "r316", "r317", "r318", "r319", "r324", "r331", "r332", "r333" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMatters" ], "xbrltype": "textBlockItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r17", "r91", "r92", "r134", "r135", "r196", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r515", "r677", "r678", "r679", "r680", "r681", "r805" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r23", "r196", "r309", "r310", "r311", "r312", "r313", "r315", "r320", "r321", "r322", "r323", "r325", "r326", "r327", "r328", "r329", "r330", "r515", "r677", "r678", "r679", "r680", "r681", "r805" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodAxis": { "auth_ref": [ "r14" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodDomain": { "auth_ref": [ "r14" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodOneMember": { "auth_ref": [ "r14" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentRedemptionPeriodTwoMember": { "auth_ref": [ "r14" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_DeferredIncomeTaxAssetsNet": { "auth_ref": [ "r468", "r469" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r9", "r127", "r146", "r479", "r480", "r807" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r468", "r469", "r536" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanAmortizationOfGainsLosses": { "auth_ref": [ "r353", "r391", "r416", "r693", "r694" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanAmortizationOfPriorServiceCostCredit": { "auth_ref": [ "r353", "r392", "r417", "r693", "r694" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanContributionsByEmployer": { "auth_ref": [ "r368", "r378", "r420", "r691", "r692", "r693", "r694" ], "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/2023", "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/2023", "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": [ "r694", "r846" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanExpectedReturnOnPlanAssets": { "auth_ref": [ "r353", "r390", "r415", "r693", "r694" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanInterestCost": { "auth_ref": [ "r353", "r357", "r389", "r414", "r693", "r694" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedBenefitPlanNetPeriodicBenefitCost": { "auth_ref": [ "r387", "r412", "r693", "r694" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanCostRecognized": { "auth_ref": [ "r424" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DefinedContributionPlanDisclosureLineItems": { "auth_ref": [ "r424" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DefinedContributionPlanTable": { "auth_ref": [ "r424" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails" ], "xbrltype": "stringItemType" }, "us-gaap_Depreciation": { "auth_ref": [ "r9", "r55" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeAssets": { "auth_ref": [ "r167", "r168", "r506", "r587", "r588", "r589", "r590", "r591", "r592", "r593", "r594", "r595", "r596", "r609", "r610", "r649", "r651", "r652", "r653", "r655", "r656", "r670", "r710", "r895" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [ "r594", "r596", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r616", "r617", "r618", "r619", "r630", "r631", "r632", "r633", "r636", "r637", "r638", "r639", "r649", "r650", "r652", "r655", "r708", "r710" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r78", "r79", "r80", "r81", "r594", "r596", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r616", "r617", "r618", "r619", "r630", "r631", "r632", "r633", "r636", "r637", "r638", "r639", "r649", "r650", "r652", "r655", "r670", "r708", "r710" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration": { "auth_ref": [ "r493" ], "lang": { "en-us": { "role": { "documentation": "Indicates line item in statement of financial position that includes derivative liability.", "label": "Derivative Liability, Statement of Financial Position [Extensible Enumeration]", "terseLabel": "Derivative Liability, Statement of Financial Position [Extensible Enumeration]" } } }, "localname": "DerivativeLiabilityStatementOfFinancialPositionExtensibleEnumeration", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "enumerationSetItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r876", "r877" ], "lang": { "en-us": { "role": { "documentation": "Nominal or face amount used to calculate payment on derivative.", "label": "Derivative, Notional Amount", "terseLabel": "Derivative, notional amount" } } }, "localname": "DerivativeNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_DisaggregationOfRevenueLineItems": { "auth_ref": [ "r347", "r684", "r685", "r686", "r687", "r688", "r689", "r690" ], "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/2023", "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": [ "r347", "r684", "r685", "r686", "r687", "r688", "r689", "r690" ], "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/2023", "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": [ "r845" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r429", "r433", "r460", "r461", "r463", "r702" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DomesticPlanMember": { "auth_ref": [ "r847", "r848", "r849" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r185", "r202", "r203", "r204", "r205", "r206", "r211", "r213", "r215", "r216", "r217", "r221", "r501", "r502", "r533", "r550", "r671" ], "lang": { "en-us": { "role": { "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period.", "label": "Earnings Per Share, Basic", "terseLabel": "Basic earnings per common share (usd per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2023", "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", "r213", "r215", "r216", "r217", "r221", "r501", "r502", "r533", "r550", "r671" ], "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 earnings per common share (usd per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r210", "r218", "r219", "r220" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/EarningsPerCommonShare" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r880" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r471" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/IncomeTaxesDetails" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "auth_ref": [ "r21" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognized": { "auth_ref": [ "r462" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r462" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_EmployeeStockOptionMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time.", "label": "Employee Stock Option [Member]", "terseLabel": "Employee Stock Option" } } }, "localname": "EmployeeStockOptionMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "domainItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r13", "r151", "r178", "r179", "r180", "r197", "r198", "r199", "r201", "r207", "r209", "r222", "r259", "r260", "r334", "r464", "r465", "r466", "r475", "r476", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r508", "r509", "r510", "r511", "r512", "r513", "r519", "r570", "r571", "r572", "r585", "r642" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails", "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByBalanceSheetGroupingTable": { "auth_ref": [ "r82", "r83", "r84" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails", "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r322", "r378", "r379", "r380", "r381", "r382", "r383", "r505", "r520", "r521", "r522", "r678", "r679", "r691", "r692", "r693" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r503" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r322", "r378", "r383", "r505", "r520", "r691", "r692", "r693" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r322", "r378", "r383", "r505", "r521", "r678", "r679", "r691", "r692", "r693" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r322", "r378", "r379", "r380", "r381", "r382", "r383", "r505", "r522", "r678", "r679", "r691", "r692", "r693" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r322", "r378", "r379", "r380", "r381", "r382", "r383", "r520", "r521", "r522", "r678", "r679", "r691", "r692", "r693" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsScheduleofFairValueAssetsandLiabilitiesMeasuredonRecurringBasisDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeaseLiability": { "auth_ref": [ "r517", "r518" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinancingReceivableAllowanceForCreditLossesLineItems": { "auth_ref": [ "r150", "r820" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "durationItemType" }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "auth_ref": [ "r159", "r281" ], "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", "terseLabel": "Accumulated amortization" } } }, "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r279", "r280", "r281", "r282", "r527", "r528" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "auth_ref": [ "r119", "r528" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "auth_ref": [ "r527" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r52", "r53" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r119", "r527" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignPlanMember": { "auth_ref": [ "r847", "r848", "r849" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "domainItemType" }, "us-gaap_GainLossOnSaleOfBusiness": { "auth_ref": [ "r490", "r804" ], "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 (gain) on asset divestitures" } } }, "localname": "GainLossOnSaleOfBusiness", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "auth_ref": [ "r9" ], "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 on sales and disposals of property, plant, and equipment" } } }, "localname": "GainLossOnSaleOfPropertyPlantEquipment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r158", "r267", "r529", "r675", "r705", "r822", "r829" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillAcquiredDuringPeriod": { "auth_ref": [ "r270", "r675" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized resulting from a business combination.", "label": "Goodwill, Acquired During Period", "terseLabel": "VanHooseCo acquisition" } } }, "localname": "GoodwillAcquiredDuringPeriod", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "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/2023", "xbrltype": "stringItemType" }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "auth_ref": [ "r118" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssets" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "auth_ref": [ "r274" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillLineItems": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r675" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r106", "r194", "r227", "r241", "r247", "r250", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r507", "r672", "r841" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsAttributableToNoncontrollingEntity": { "auth_ref": [ "r72", "r130" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r0", "r104", "r139", "r227", "r241", "r247", "r250", "r534", "r543", "r672" ], "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": "Income before income taxes", "totalLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r130", "r194", "r200", "r227", "r241", "r247", "r250", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r502", "r507", "r543", "r672", "r841" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 2.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "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 income", "terseLabel": "Net income", "totalLabel": "Net income", "verboseLabel": "Net income" } } }, "localname": "IncomeLossFromContinuingOperationsIncludingPortionAttributableToNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r283", "r285", "r626" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r285", "r626" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r195", "r467", "r472", "r473", "r474", "r477", "r481", "r482", "r483", "r582" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/IncomeTaxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r143", "r147", "r208", "r209", "r235", "r470", "r478", "r551" ], "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 expense", "verboseLabel": "Income tax expense (benefit)" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/IncomeTaxesDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeTaxesPaidNet": { "auth_ref": [ "r38" ], "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) paid" } } }, "localname": "IncomeTaxesPaidNet", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsAndOtherReceivables": { "auth_ref": [ "r8" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r8" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r803" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "auth_ref": [ "r525", "r803" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "auth_ref": [ "r8" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r8" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_IncreaseDecreaseInOtherAccruedLiabilities": { "auth_ref": [ "r8" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherCurrentAssets": { "auth_ref": [ "r803" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInOtherNoncurrentAssets": { "auth_ref": [ "r803" ], "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_IncrementalCommonSharesAttributableToNonvestedSharesWithForfeitableDividends": { "auth_ref": [ "r41", "r812", "r813", "r814", "r815" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of additional shares included in diluted EPS for potentially dilutive effect of nonvested equity-based payment award containing forfeitable rights to dividends or dividend equivalents, whether paid or unpaid.", "label": "Incremental Common Shares Attributable to Dilutive Effect of Nonvested Shares with Forfeitable Dividends", "terseLabel": "Stock compensation plans (in shares)" } } }, "localname": "IncrementalCommonSharesAttributableToNonvestedSharesWithForfeitableDividends", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r87", "r142", "r181", "r231", "r514", "r627", "r716", "r898" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestIncomeExpenseNet": { "auth_ref": [ "r141" ], "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/2023", "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r266" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Inventory" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r117", "r667" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r164", "r666", "r705" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r117", "r669" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r117", "r668" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/InventoryDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_InvestmentIncomeInterest": { "auth_ref": [ "r109", "r230" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount before accretion (amortization) of purchase discount (premium) of interest income on nonoperating securities.", "label": "Investment Income, Interest", "terseLabel": "Interest income" } } }, "localname": "InvestmentIncomeInterest", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r99", "r137", "r542", "r705", "r806", "r819", "r879" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r22", "r156", "r194", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r487", "r491", "r492", "r507", "r705", "r841", "r882", "r883" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCredit": { "auth_ref": [ "r17", "r135", "r890" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails", "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityAxis": { "auth_ref": [ "r20", "r805" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityLenderDomain": { "auth_ref": [ "r20", "r805" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_LineOfCreditFacilityLineItems": { "auth_ref": [ "r805" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "auth_ref": [ "r20" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LineOfCreditFacilityTable": { "auth_ref": [ "r20", "r805" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesFuturePaymentsDetails", "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LoansNotesTradeAndOtherReceivablesDisclosureTextBlock": { "auth_ref": [ "r817" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivable" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligations": { "auth_ref": [ "r17", "r537" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets", "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersScheduleofLongtermDebtInstrumentsDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtAndCapitalLeaseObligationsCurrent": { "auth_ref": [ "r21" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_MinorityInterest": { "auth_ref": [ "r27", "r136", "r194", "r258", "r295", "r298", "r299", "r300", "r306", "r307", "r507", "r541", "r605" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to noncontrolling interest. Excludes temporary equity.", "label": "Equity, Attributable to Noncontrolling Interest", "terseLabel": "Noncontrolling interest" } } }, "localname": "MinorityInterest", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r113", "r114", "r115" ], "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 used in operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r105", "r115", "r140", "r154", "r174", "r176", "r180", "r194", "r200", "r202", "r203", "r204", "r205", "r208", "r209", "r214", "r227", "r241", "r247", "r250", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r502", "r507", "r546", "r623", "r640", "r641", "r672", "r716", "r841" ], "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)", "terseLabel": "Net Income (Loss)", "totalLabel": "Net income attributable to L.B. Foster Company" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "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 earnings per common share:" } } }, "localname": "NetIncomeLossAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLossAttributableToNoncontrollingInterest": { "auth_ref": [ "r76", "r131", "r174", "r176", "r208", "r209", "r545", "r802" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_NoncompeteAgreementsMember": { "auth_ref": [ "r70" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_NoncontrollingInterestMember": { "auth_ref": [ "r72", "r334", "r809", "r810", "r811", "r899" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_OffMarketFavorableLeaseMember": { "auth_ref": [ "r832" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r227", "r241", "r247", "r250", "r672" ], "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", "totalLabel": "Operating profit", "verboseLabel": "Operating profit for reportable segments" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r517" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r516" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r250" ], "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/2023", "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": [ "r90", "r129", "r576", "r577" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FinancialStatements" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAssetsCurrent": { "auth_ref": [ "r165", "r705" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r160" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r4", "r11", "r103", "r130" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r7", "r11", "r130" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeForeignCurrencyTransactionAndTranslationAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r7", "r11", "r130" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax": { "auth_ref": [ "r169", "r170" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 4.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "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 gain on cash flow hedges, net of tax expense of $0, $50, $0, and $238, respectively", "verboseLabel": "Unrealized derivative gain on cash flow hedges" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax": { "auth_ref": [ "r171" ], "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", "terseLabel": "Unrealized gain on cash flow hedge, tax" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossBeforeReclassificationTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax": { "auth_ref": [ "r170", "r172" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 5.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "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, $0, $0, and $66, respectively" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationAfterTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossReclassificationTax": { "auth_ref": [ "r171" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax": { "auth_ref": [ "r3" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax and reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature.", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, Net of Tax", "terseLabel": "Foreign currency translation adjustment" } } }, "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax": { "auth_ref": [ "r6", "r103", "r125", "r173" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss": { "order": 3.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTaxIncludingPortionAttributableToNoncontrollingInterest", "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, $16, $4 and $32, respectively" } } }, "localname": "OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansNetOfTax", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLoss" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossReclassificationAdjustmentFromAOCIPensionAndOtherPostretirementBenefitPlansTax": { "auth_ref": [ "r5", "r130" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofComprehensiveIncomeLossParenthetical" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r24" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r110" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "monetaryItemType" }, "us-gaap_PatentsMember": { "auth_ref": [ "r128" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "auth_ref": [ "r35" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r32" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "Payments to Acquire Businesses, Net of Cash Acquired", "negatedLabel": "Acquisitions, net of cash acquired" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r112" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionAndOtherPostretirementBenefitsDisclosureTextBlock": { "auth_ref": [ "r351", "r375", "r377", "r383", "r401", "r403", "r404", "r405", "r406", "r407", "r422", "r423", "r424", "r693" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlans" ], "xbrltype": "textBlockItemType" }, "us-gaap_PensionPlansDefinedBenefitMember": { "auth_ref": [ "r352", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r399", "r400", "r402", "r405", "r408", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r424", "r425", "r428", "r693", "r694", "r698", "r699", "r700" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "domainItemType" }, "us-gaap_ProceedsFromDivestitureOfBusinesses": { "auth_ref": [ "r31" ], "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 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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfOtherLongTermDebt": { "auth_ref": [ "r34" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromMinorityShareholders": { "auth_ref": [ "r33" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "auth_ref": [ "r111" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows": { "order": 4.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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProductLiabilityContingencyLineItems": { "auth_ref": [ "r293", "r837", "r838", "r839" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ProductLiabilityContingencyTable": { "auth_ref": [ "r293", "r837", "r838", "r839" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CommitmentsandContingentLiabilitiesNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ProductMember": { "auth_ref": [ "r684" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "domainItemType" }, "us-gaap_ProfitLoss": { "auth_ref": [ "r154", "r174", "r176", "r188", "r194", "r200", "r208", "r209", "r227", "r241", "r247", "r250", "r258", "r295", "r296", "r298", "r299", "r300", "r302", "r304", "r306", "r307", "r485", "r488", "r489", "r502", "r507", "r534", "r544", "r584", "r623", "r640", "r641", "r672", "r703", "r704", "r717", "r802", "r841" ], "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 income (loss)" } } }, "localname": "ProfitLoss", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentAndFinanceLeaseRightOfUseAssetAfterAccumulatedDepreciationAndAmortization": { "auth_ref": [ "r798", "r833" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProvisionForDoubtfulAccounts": { "auth_ref": [ "r186", "r263" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableAllowanceforCreditLossesDetails", "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReconciliationOfAssetsFromSegmentToConsolidatedTextBlock": { "auth_ref": [ "r48", "r49" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTable": { "auth_ref": [ "r47", "r49" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ReconciliationOfOperatingProfitLossFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r47", "r49" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReconciliationOfRevenueFromSegmentsToConsolidatedTextBlock": { "auth_ref": [ "r46", "r49" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_RepaymentsOfOtherLongTermDebt": { "auth_ref": [ "r36" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReportingUnitAxis": { "auth_ref": [ "r277", "r278", "r675" ], "lang": { "en-us": { "role": { "documentation": "Information by reporting unit.", "label": "Reporting Unit [Axis]", "terseLabel": "Reporting Unit [Axis]" } } }, "localname": "ReportingUnitAxis", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ReportingUnitDomain": { "auth_ref": [ "r277", "r278", "r675" ], "lang": { "en-us": { "role": { "documentation": "Level of reporting at which goodwill is tested for impairment.", "label": "Reporting Unit [Domain]", "terseLabel": "Reporting Unit [Domain]" } } }, "localname": "ReportingUnitDomain", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_RestrictedStockMember": { "auth_ref": [ "r42" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "domainItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r96", "r124", "r540", "r573", "r575", "r581", "r604", "r705" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated undistributed earnings (deficit).", "label": "Retained Earnings (Accumulated Deficit)", "terseLabel": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r151", "r197", "r198", "r199", "r201", "r207", "r209", "r259", "r260", "r464", "r465", "r466", "r475", "r476", "r494", "r496", "r497", "r499", "r500", "r570", "r572", "r585", "r899" ], "lang": { "en-us": { "role": { "documentation": "Accumulated undistributed earnings (deficit).", "label": "Retained Earnings [Member]", "terseLabel": "Retained Earnings" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanSponsorLocationAxis": { "auth_ref": [ "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r402", "r405", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r847", "r848", "r849" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanSponsorLocationDomain": { "auth_ref": [ "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r398", "r399", "r400", "r402", "r405", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r847", "r848", "r849" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofCostsofRetirementPlansDetails", "http://www.lbfoster.com/role/RetirementPlansScheduleofNetBenefitCostsDetails", "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanTypeAxis": { "auth_ref": [ "r352", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r399", "r400", "r402", "r405", "r408", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r424", "r425", "r426", "r428", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanTypeDomain": { "auth_ref": [ "r352", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r399", "r400", "r402", "r405", "r408", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420", "r421", "r424", "r425", "r426", "r428", "r693", "r694", "r695", "r696", "r697", "r698", "r699", "r700" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "auth_ref": [ "r228", "r229", "r240", "r245", "r246", "r252", "r254", "r255", "r346", "r347", "r526" ], "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/2023", "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": [ "r148", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r350" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/Revenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r144" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r145" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r145" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueRemainingPerformanceObligationDetails" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r797" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfCostsOfRetirementPlansTableTextBlock": { "auth_ref": [ "r10" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDebtInstrumentsTextBlock": { "auth_ref": [ "r23", "r56", "r57", "r85", "r86", "r88", "r89", "r122", "r123", "r678", "r680", "r808" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/LongTermDebtandRelatedMattersTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDefinedBenefitPlansDisclosuresTable": { "auth_ref": [ "r10", "r60", "r61", "r62", "r63" ], "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/2023", "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": [ "r815" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/EarningsPerCommonShareTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "auth_ref": [ "r504", "r505" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFinancingReceivableAllowanceForCreditLossesTable": { "auth_ref": [ "r149", "r820" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "auth_ref": [ "r52", "r53", "r527" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsNarrativeDetails", "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "auth_ref": [ "r52", "r53" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTable": { "auth_ref": [ "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r277", "r278", "r675" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofGoodwillDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r675", "r821", "r822", "r823", "r824", "r825", "r826", "r827", "r828", "r829", "r830", "r831" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "auth_ref": [ "r18", "r100", "r101", "r102" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/InventoryTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNetBenefitCostsTableTextBlock": { "auth_ref": [ "r126" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RetirementPlansTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfNonvestedShareActivityTableTextBlock": { "auth_ref": [ "r64" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationTables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "auth_ref": [ "r43", "r44", "r45", "r50" ], "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/2023", "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": [ "r430", "r432", "r434", "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" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r224", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r250", "r255", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r286", "r287", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r675", "r799", "r892" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r223", "r224", "r225", "r226", "r227", "r239", "r244", "r248", "r249", "r250", "r251", "r252", "r253", "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/2023", "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/BusinessSegmentsReconciliationofOperatingProfitLossfromSegmentstoConsolidatedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r108" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/AccountsReceivableNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_ServiceMember": { "auth_ref": [ "r684" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r8" ], "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "auth_ref": [ "r702" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "durationItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r448" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r448" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r445", "r446" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r445", "r446" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r449" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r449" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "auth_ref": [ "r430", "r432", "r434", "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" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails" ], "xbrltype": "stringItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r434", "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" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails", "http://www.lbfoster.com/role/StockBasedCompensationRestrictedStockandPerformanceShareUnitsDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r153", "r224", "r227", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r250", "r255", "r268", "r269", "r270", "r271", "r272", "r273", "r274", "r275", "r276", "r284", "r286", "r287", "r552", "r553", "r554", "r555", "r556", "r557", "r558", "r559", "r560", "r561", "r562", "r675", "r799", "r892" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]", "terseLabel": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r13", "r25", "r151", "r178", "r179", "r180", "r197", "r198", "r199", "r201", "r207", "r209", "r222", "r259", "r260", "r334", "r464", "r465", "r466", "r475", "r476", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r508", "r509", "r510", "r511", "r512", "r513", "r519", "r570", "r571", "r572", "r585", "r642" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [ "r197", "r198", "r199", "r222", "r526", "r578", "r586", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r616", "r617", "r618", "r619", "r620", "r622", "r624", "r625", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r642", "r711" ], "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/2023", "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/2023", "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/2023", "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/2023", "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/2023", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r197", "r198", "r199", "r222", "r526", "r578", "r586", "r597", "r598", "r599", "r600", "r601", "r602", "r603", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r616", "r617", "r618", "r619", "r620", "r622", "r624", "r625", "r628", "r629", "r630", "r631", "r632", "r633", "r634", "r635", "r636", "r637", "r638", "r639", "r642", "r711" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofOperations", "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "stringItemType" }, "us-gaap_StockAppreciationRightsSARSMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period.", "label": "Stock Appreciation Rights (SARs) [Member]", "terseLabel": "Stock Appreciation Rights (SARs)" } } }, "localname": "StockAppreciationRightsSARSMember", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "xbrltype": "domainItemType" }, "us-gaap_StockIssuedDuringPeriodSharesNewIssues": { "auth_ref": [ "r13", "r93", "r94", "r124", "r579", "r642", "r658" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueNewIssues": { "auth_ref": [ "r13", "r93", "r94", "r124", "r585", "r642", "r658", "r717" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockRepurchasedDuringPeriodShares": { "auth_ref": [ "r13", "r93", "r94", "r124", "r580", "r642", "r659" ], "lang": { "en-us": { "role": { "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.", "label": "Stock Repurchased During Period, Shares", "terseLabel": "Purchase of common shares for treasury (in shares)" } } }, "localname": "StockRepurchasedDuringPeriodShares", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquityParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_StockRepurchasedDuringPeriodValue": { "auth_ref": [ "r13", "r93", "r94", "r124", "r585", "r642", "r659", "r717" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock.", "label": "Stock Repurchased During Period, Value", "negatedTerseLabel": "Purchase of common shares for treasury" } } }, "localname": "StockRepurchasedDuringPeriodValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r94", "r97", "r98", "r116", "r605", "r621", "r643", "r644", "r705", "r718", "r806", "r819", "r879", "r899" ], "calculation": { "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest.", "label": "Equity, Attributable to Parent", "totalLabel": "Total L.B. Foster Company stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Equity, Attributable to Parent [Abstract]", "terseLabel": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityIncludingPortionAttributableToNoncontrollingInterest": { "auth_ref": [ "r72", "r73", "r75", "r151", "r152", "r179", "r197", "r198", "r199", "r201", "r207", "r259", "r260", "r334", "r464", "r465", "r466", "r475", "r476", "r494", "r495", "r496", "r497", "r498", "r499", "r500", "r508", "r509", "r513", "r519", "r571", "r572", "r583", "r605", "r621", "r643", "r644", "r660", "r717", "r806", "r819", "r879", "r899" ], "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 equity (deficit) attributable to parent and noncontrolling interest. Excludes temporary equity.", "label": "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/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofCashFlows" ], "xbrltype": "stringItemType" }, "us-gaap_SwapMember": { "auth_ref": [ "r132", "r610", "r614", "r619", "r633", "r639", "r654", "r655", "r710" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/FairValueMeasurementsNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TechnologyBasedIntangibleAssetsMember": { "auth_ref": [ "r16" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "auth_ref": [ "r689", "r845" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "auth_ref": [ "r689", "r845" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueOverTimeSalesDetails", "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TrademarksAndTradeNamesMember": { "auth_ref": [ "r69" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/GoodwillandOtherIntangibleAssetsScheduleofIntangibleAssetDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredAtPointInTimeMember": { "auth_ref": [ "r689" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredOverTimeMember": { "auth_ref": [ "r689" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/RevenueTimingofTransferDetails" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonMember": { "auth_ref": [ "r58" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedStatementsofStockholdersEquity" ], "xbrltype": "domainItemType" }, "us-gaap_TreasuryStockCommonShares": { "auth_ref": [ "r58" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheetsParenthetical" ], "xbrltype": "sharesItemType" }, "us-gaap_TreasuryStockCommonValue": { "auth_ref": [ "r26", "r58", "r59" ], "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, 298,877 and 338,952 common stock shares at June\u00a030, 2023 and December\u00a031, 2022, respectively" } } }, "localname": "TreasuryStockCommonValue", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/CondensedConsolidatedBalanceSheets" ], "xbrltype": "monetaryItemType" }, "us-gaap_VestingAxis": { "auth_ref": [ "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "stringItemType" }, "us-gaap_VestingDomain": { "auth_ref": [ "r850", "r851", "r852", "r853", "r854", "r855", "r856", "r857", "r858", "r859", "r860", "r861", "r862", "r863", "r864", "r865", "r866", "r867", "r868", "r869", "r870", "r871", "r872", "r873", "r874", "r875" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/StockBasedCompensationNarrativeDetails" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "auth_ref": [ "r815" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "The sum of dilutive potential common shares or units used in the calculation of the diluted per-share or per-unit computation.", "label": "Weighted Average Number of Shares Outstanding, Diluted, Adjustment", "totalLabel": "Dilutive potential common shares (in shares)" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "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/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r212", "r217" ], "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 earnings per common share - adjusted weighted average shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesIssuedBasic": { "auth_ref": [ "r39", "r40" ], "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/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r211", "r217" ], "calculation": { "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails": { "order": 2.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Weighted Average Number of Shares Outstanding, Basic", "totalLabel": "Denominator for basic earnings per common share (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "presentation": [ "http://www.lbfoster.com/role/EarningPerCommonShareScheduleofEarningsPerShareBasicandDilutedDetails" ], "xbrltype": "stringItemType" } }, "unitCount": 9 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r100": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r101": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r102": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r104": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r105": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r106": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r107": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r108": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.7(b))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r110": { "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//1943274/2147483621/220-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-24", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-25", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147480418/310-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org//1943274/2147480581/330-10-S99-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r118": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "350", "URI": "https://asc.fasb.org//350/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r120": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org//440/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r121": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org//470/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r122": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-6", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-7", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r127": { "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//1943274/2147479360/740-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-38", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r129": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org//810/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "83", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480647/815-10-15-83", "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(11))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "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(13))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "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(16))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r136": { "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//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r137": { "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//1943274/2147479853/942-210-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r138": { "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//1943274/2147479853/942-210-S99-1", "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(15))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Subparagraph": "e", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r140": { "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//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r141": { "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//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r142": { "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//1943274/2147483589/942-220-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482659/740-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r147": { "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//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r148": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org//606/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r149": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "(c)", "Publisher": "SEC", "Section": "1405", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r150": { "Name": "Regulation S-K (SK)", "Number": "229", "Paragraph": "c", "Publisher": "SEC", "Section": "1405", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "105", "URI": "https://asc.fasb.org//1943274/2147479343/105-10-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org//1943274/2147483499/205-20-50-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-5", "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(1))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(15))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(16))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-13", "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(17))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(18))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(4))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(6))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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(8))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r166": { "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//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "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(22))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r172": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "17A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-17A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-1A", "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//1943274/2147482790/220-10-45-1A", "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//1943274/2147482790/220-10-45-1B", "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//1943274/2147482790/220-10-45-1B", "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//1943274/2147482765/220-10-50-4", "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//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483489/210-10-50-1", "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//1943274/2147482765/220-10-50-6", "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//1943274/2147483621/220-10-S99-2", "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(22))", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2", "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//1943274/2147483621/220-10-S99-2", "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//1943274/2147483621/220-10-S99-2", "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//1943274/2147483621/220-10-S99-2", "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//1943274/2147483621/220-10-S99-2", "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//1943274/2147482740/230-10-45-17", "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//1943274/2147482740/230-10-45-2", "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//1943274/2147482740/230-10-45-24", "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.19(a))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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//1943274/2147482740/230-10-45-25", "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//1943274/2147482913/230-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-8", "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(c))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "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(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "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)(2))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "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//1943274/2147480678/235-10-S99-3", "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//1943274/2147483421/250-10-45-23", "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//1943274/2147483421/250-10-45-24", "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//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "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//1943274/2147483443/250-10-50-1", "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//1943274/2147483443/250-10-50-1", "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//1943274/2147483443/250-10-50-11", "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//1943274/2147483443/250-10-50-11", "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//1943274/2147483443/250-10-50-3", "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//1943274/2147483443/250-10-50-4", "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//1943274/2147483443/250-10-50-7", "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//1943274/2147483443/250-10-50-7", "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//1943274/2147483443/250-10-50-8", "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//1943274/2147483443/250-10-50-9", "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.20)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r210": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org//260/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-16", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-60B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-15", "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//1943274/2147483014/272-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r223": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org//280/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r227": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r236": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-26", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-32", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-34", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-40", "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//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-42", "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//1943274/2147481990/310-10-45-2", "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//1943274/2147481962/310-10-50-4", "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//1943274/2147481687/323-10-50-3", "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//1943274/2147479654/326-10-65-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.30)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479654/326-10-65-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479344/326-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r266": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org//330/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482598/350-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.31)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r278": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org//1943274/2147482017/420-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r287": { "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//1943274/2147479823/420-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "https://asc.fasb.org//1943274/2147482648/440-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-14A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "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.Q1)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "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.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r294": { "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//1943274/2147480102/450-20-S99-1", "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)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "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)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "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)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "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)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r299": { "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//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-5", "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)(i))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "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//1943274/2147480097/470-10-S99-1B", "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)(A))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "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//1943274/2147480097/470-10-S99-1B", "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)(B))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "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)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "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)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r307": { "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//1943274/2147480097/470-10-S99-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r316": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "1C", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1E", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1F", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1I", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1I", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147480008/505-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479837/606-10-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r351": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "715", "URI": "https://asc.fasb.org//715/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "3A", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480535/715-20-45-3A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(10)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(8)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(9)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(4)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(5)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(6)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(7)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(8)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iii)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482913/230-10-50-2", "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)(A)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "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)(B)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "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)(C)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-10", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(4)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(5)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(6)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(7)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(j)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(i-k)", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-10A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(4)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(l)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(o)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(p)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(q)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(r)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(r)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "68B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-68B", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480126/715-20-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "60", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480266/715-60-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "70", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480794/715-70-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480606/715-80-35-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-9", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r429": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org//718/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-22", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-1D", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r432": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480483/718-10-35-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-25", "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)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "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)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "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)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r455": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r467": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org//740/tableOfContent", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482525/740-10-45-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-14", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r474": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-21", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482615/740-10-65-8", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r477": { "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//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r478": { "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//1943274/2147479360/740-10-S99-1", "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.Fact.1)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "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.Fact.2)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482526/740-270-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r483": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org//1943274/2147482603/740-30-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479907/805-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-19", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-25", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-1B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481203/810-10-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(i)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iii)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(h)(1)(iv)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(i)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480528/815-20-65-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r5": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-10", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r507": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-17", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481694/830-30-45-20", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481674/830-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147483013/835-20-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482900/835-30-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147479041/842-20-45-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org//1943274/2147483550/848-10-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org//1943274/2147482546/910-10-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "912", "URI": "https://asc.fasb.org//1943274/2147482312/912-310-45-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org//1943274/2147479941/924-10-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r529": { "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//1943274/2147479853/942-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "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(24))", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r531": { "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//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r532": { "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//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r533": { "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//1943274/2147483589/942-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r534": { "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//1943274/2147479557/942-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r535": { "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//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(15)(b)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(22))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r539": { "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//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r540": { "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//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r541": { "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//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r542": { "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//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(11))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(16))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(17))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r546": { "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//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(20))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r548": { "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//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r549": { "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//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r550": { "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//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r551": { "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//1943274/2147483586/944-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column G))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column H))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column I))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column J))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-16(Column K))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column A))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column B))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column C))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column D))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column E))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.12-17(Column F))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480149/944-235-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-7A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480016/944-40-65-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480424/946-10-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481549/505-30-45-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.6-03(i)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479886/946-10-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r581": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-11", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480990/946-20-50-13", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480555/946-210-45-4", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(2)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481520/505-30-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(c)(2)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-12", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(2)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(4)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(e)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(f)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482790/220-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(16)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(17))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r605": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(19))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r606": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r607": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(2)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r608": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r609": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r610": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(3)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r611": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r612": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r613": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r614": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(6)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r615": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r616": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r617": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(c))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r618": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r619": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(9)(e))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-4", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r620": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r621": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-05(4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r622": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(b)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r623": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-7", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r624": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r625": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r626": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r627": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r628": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r629": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r630": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r631": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r632": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r633": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r634": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r635": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r636": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r637": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r638": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r639": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r640": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-07(9))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r641": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(1)(d))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r642": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r643": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(6))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r644": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r645": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r646": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r647": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r648": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r649": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r650": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r651": { "Name": "Accounting Standards Codification", "Paragraph": "5A", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13A(Column E))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5A", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r652": { "Name": "Accounting Standards Codification", "Paragraph": "5B", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r653": { "Name": "Accounting Standards Codification", "Paragraph": "5B", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13B(Column E))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5B", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r654": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13C(Column G))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r655": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r656": { "Name": "Accounting Standards Codification", "Paragraph": "5C", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-13C(Column H))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-5C", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r657": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r658": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r659": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Subparagraph": "(c)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-2", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147481089/718-20-55-13", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r660": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "505", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147481004/946-505-50-3", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r661": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "https://asc.fasb.org//1943274/2147480327/954-440-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r662": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org//1943274/2147482856/976-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r663": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org//1943274/2147482707/978-310-50-1", "role": "http://www.xbrl.org/2003/role/disclosureRef" }, "r664": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r665": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r666": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483467/210-10-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r667": { "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//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r668": { "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//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r669": { "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//1943274/2147480566/210-10-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r670": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org//1943274/2147483444/210-20-55-22", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r671": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482635/260-10-55-52", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r672": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-31", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r673": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-9", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r674": { "Name": "Accounting Standards Codification", "Paragraph": "12A", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481933/310-10-55-12A", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r675": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482548/350-20-55-24", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r676": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481899/410-30-55-16", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r677": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r678": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69B", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r679": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69C", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479328/805-10-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r680": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69E", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r681": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481568/470-20-55-69F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r682": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org//1943274/2147481112/505-10-50-13", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r683": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r684": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r685": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r686": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r687": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r688": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r689": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r690": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479777/606-10-55-91", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r691": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r692": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r693": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-17", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r694": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480482/715-20-55-18", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r695": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r696": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r697": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r698": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r699": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r700": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r701": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480547/715-80-55-8", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r702": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r703": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r704": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r705": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481372/852-10-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r706": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479401/944-30-55-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r707": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-29F", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r708": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(b)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r709": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(1)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r710": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "55", "SubTopic": "210", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480493/946-210-55-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r711": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "310", "Subparagraph": "(d)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480833/946-310-45-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r712": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r713": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r714": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r715": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "320", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r716": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-10", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r717": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-11", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r718": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "830", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480167/946-830-55-12", "role": "http://www.xbrl.org/2003/role/exampleRef" }, "r719": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-15", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r720": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r721": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r722": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r723": { "Name": "Form 20-F", "Paragraph": "a", "Publisher": "SEC", "Section": "16", "Subsection": "J", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r724": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r725": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r726": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Sentence": "A", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r727": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Sentence": "B", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r728": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Sentence": "C", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r729": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Sentence": "D", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-16", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r730": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Sentence": "E", "Subparagraph": "i", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r731": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Subparagraph": "ii", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r732": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Subparagraph": "iii", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r733": { "Name": "Form 20-F", "Paragraph": "2", "Publisher": "SEC", "Section": "6", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r734": { "Name": "Form 20-F", "Paragraph": "1", "Publisher": "SEC", "Section": "6", "Subparagraph": "ii", "Subsection": "F", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r735": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r736": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r737": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Sentence": "i", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r738": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Sentence": "ii", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r739": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Sentence": "iii", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r74": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481231/810-10-45-21", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r740": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Sentence": "iv", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r741": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Sentence": "v", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r742": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Subparagraph": "2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r743": { "Name": "Form 40-F", "Paragraph": "a", "Publisher": "SEC", "Section": "19", "Subparagraph": "3", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r744": { "Name": "Form 40-F", "Paragraph": "b", "Publisher": "SEC", "Section": "19", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r745": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r746": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r747": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Sentence": "i", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r748": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Sentence": "ii", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r749": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Sentence": "iii", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "4I", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4I", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r750": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Sentence": "iv", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r751": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Sentence": "v", "Subparagraph": "1", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r752": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Subparagraph": "2", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r753": { "Name": "Form N-CSR", "Paragraph": "a", "Publisher": "SEC", "Section": "18", "Subparagraph": "3", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r754": { "Name": "Form N-CSR", "Paragraph": "b", "Publisher": "SEC", "Section": "18", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r755": { "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" }, "r756": { "Name": "Regulation S-K", "Number": "229", "Publisher": "SEC", "Section": "402", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r757": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r758": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subparagraph": "ii", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r759": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subparagraph": "iii", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "4J", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4J", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r760": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subparagraph": "iv", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r761": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subparagraph": "vi", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r762": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "3", "Publisher": "SEC", "Section": "402", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r763": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "4", "Publisher": "SEC", "Section": "402", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r764": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "5", "Publisher": "SEC", "Section": "402", "Subparagraph": "i", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r765": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "5", "Publisher": "SEC", "Section": "402", "Subparagraph": "ii", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r766": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "5", "Publisher": "SEC", "Section": "402", "Subparagraph": "iii", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r767": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "5", "Publisher": "SEC", "Section": "402", "Subparagraph": "iv", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r768": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "6", "Publisher": "SEC", "Section": "402", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r769": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "6", "Publisher": "SEC", "Section": "402", "Subparagraph": "i", "Subsection": "v", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "4K", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org//1943274/2147481175/810-10-55-4K", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r770": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r771": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r772": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Sentence": "A", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r773": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Sentence": "B", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r774": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Sentence": "C", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r775": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Sentence": "D", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r776": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Sentence": "E", "Subparagraph": "i", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r777": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subparagraph": "ii", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r778": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subparagraph": "iii", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r779": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subsection": "w", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r780": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "402", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r781": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r782": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Sentence": "A", "Subparagraph": "ii", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r783": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Sentence": "C", "Subparagraph": "ii", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r784": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Sentence": "D", "Subparagraph": "ii", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r785": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Sentence": "E", "Subparagraph": "ii", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r786": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "402", "Sentence": "F", "Subparagraph": "ii", "Subsection": "x", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r787": { "Name": "Regulation S-K", "Number": "229", "Publisher": "SEC", "Section": "408", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r788": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "408", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r789": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "408", "Subparagraph": "A", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r790": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "408", "Subparagraph": "B", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r791": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "408", "Subparagraph": "C", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r792": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "2", "Publisher": "SEC", "Section": "408", "Subparagraph": "D", "Subsection": "a", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r793": { "Name": "Regulation S-K", "Number": "229", "Paragraph": "1", "Publisher": "SEC", "Section": "408", "Subsection": "b", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r794": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405", "role": "http://www.xbrl.org/2003/role/presentationRef" }, "r795": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(1)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r796": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(3)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef" }, "r797": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r798": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org//1943274/2147478964/842-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r799": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4C", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r800": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r801": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r802": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org//1943274/2147482765/220-10-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r803": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r804": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r805": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r806": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r807": { "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//1943274/2147480678/235-10-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r808": { "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//1943274/2147480678/235-10-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r809": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4D", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r810": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-24", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r811": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org//1943274/2147483421/250-10-45-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r812": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-22", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r813": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-23", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r814": { "Name": "Accounting Standards Codification", "Paragraph": "28A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482689/260-10-45-28A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r815": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org//1943274/2147482662/260-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r816": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-30", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r817": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//310-10/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r818": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org//1943274/2147481990/310-10-45-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r819": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org//1943274/2147481687/323-10-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r820": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r821": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r822": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r823": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r824": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r825": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r826": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r827": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r828": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r829": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-11", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r830": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r831": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r832": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r833": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org//1943274/2147482099/360-10-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r834": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r835": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org//1943274/2147481931/410-30-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r836": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org//450/tableOfContent", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r837": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r838": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r839": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147483076/450-20-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-12", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r840": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org//1943274/2147480102/450-20-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r841": { "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//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r842": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147480097/470-10-S99-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r843": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org//1943274/2147481139/470-20-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r844": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-10", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r845": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org//1943274/2147479806/606-10-50-5", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r846": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480506/715-20-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r847": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480606/715-80-35-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r848": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-11", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r849": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org//1943274/2147480576/715-80-50-9", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-1A", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r850": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r851": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r852": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r853": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r854": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r855": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r856": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r857": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r858": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r859": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r860": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r861": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r862": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r863": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r864": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r865": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r866": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r867": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r868": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r869": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r870": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r871": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r872": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r873": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r874": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r875": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org//1943274/2147480429/718-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r876": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1A", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r877": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-1B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r878": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org//1943274/2147480175/815-40-65-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r879": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org//1943274/2147482907/825-10-50-28", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r880": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org//1943274/2147481877/830-230-45-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r881": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org//1943274/2147483326/850-10-50-2", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r882": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r883": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org//1943274/2147481404/852-10-50-7", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r884": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r885": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r886": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r887": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r888": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r889": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org//1943274/2147481326/860-20-50-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "470", "Topic": "942", "URI": "https://asc.fasb.org//1943274/2147480848/942-470-50-3", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r890": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r891": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(5))", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479440/944-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r892": { "Name": "Accounting Standards Codification", "Paragraph": "2B", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147479432/944-30-50-2B", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r893": { "Name": "Accounting Standards Codification", "Paragraph": "13H", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Subparagraph": "(c)", "Topic": "944", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r894": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "205", "Subparagraph": "(a)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480767/946-205-45-4", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r895": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "210", "Subparagraph": "(a)(3)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-6", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r896": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r897": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-04(18))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147479617/946-210-S99-1", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r898": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "220", "Subparagraph": "(i)", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r899": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(4)(b))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-28", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r90": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org//205/tableOfContent", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r900": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.6-09(7))", "Topic": "946", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-3", "role": "http://www.xbrl.org/2009/role/commonPracticeRef" }, "r91": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r92": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r93": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r94": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r95": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r96": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r97": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r98": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" }, "r99": { "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//1943274/2147480566/210-10-S99-1", "role": "http://fasb.org/us-gaap/role/ref/legacyRef" } }, "version": "2.2" } ZIP 84 0000352825-23-000095-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000352825-23-000095-xbrl.zip M4$L#!!0 ( ,1N"%<4'T-=KP< ((E 0 97@M,S$Q<3(R,#(S+FAT M;>U:;6_;1A+^WE^QM='4!B19U(MC2XJ!-$F!W!W::QJ@'P]+[E!<>,EE=TG) MNE]_,[/4FR75,BZM':,!8IO>:969*3K,K-S20#J6Z^F7S;;HOW-JES M*"J1.) 5*%%[74S%;PK\K6BW&ZEWMEPX/OV^N(WZV[U3(;Q2E<&;I;K M3"["]>2"-YG$5BUN)DK/A%9O3G1\!6DTO%:1E-'@=>\JOAS&\CJ!RZM^(H>7 MO?]$)S@5Q<,<7RT,O#G)=='.@/8?]2_+:CS7JLI&4;?[W9CG4E^E$GFER0_-*F7]UN[Z#J&V&Y+O]\& WVZOVQ)?YA MLT+\V!'_E!Y,2R0I"8#R0QBI7 UJ A8YK'L9-BAROG)9&I)*8P0F; M(W=7-LCM"!20@/?2+4@DE[= '+A>T^,]A$.H\ MTTDF?$T_UO/GX*!9A S(M3=82:DHSW65H8&^1"*FW6G=$E6S"LV]Z/78-X!JF@(B M")MBRP;NS)]SX#X*Z8 A@B'7L0$*I0#$96RTSV@&B>7(C\21=*VT3XSU-Q_6*$'E_>CN:?@@5)^N M03R3Y^(]>&RPT3=<1AX.7XLJ7")K?_P4*C4Q8!":G4+QLK7#!9 29MHST: 4 M%+P.M:=KBMJD.0=&HB[=&*SZ3^CKV6FGI-!F@0XUE MXBUHI=I3W>-L\%PDF9:L!U0(3Z,\J<3^32>UD<2F:!8KL:Z?."-4X\TF O^* M@021\' ^J*,)[EFC)KZ/FJ.3<0<\QZ?QT1A"W,VT(FA(;PM)K"4]PHH:)\*+ M=&H9.T23EK$VNEI0!=NW+2&9P\P1#"#<$MUHO)@<[QJ#RMJ5B"#/%3=)K%.L M +=@4RBPD!H$$HY 20@E$6PO U@0R;I$9GH9<$G.Q8>9-#5G(OD2TI2>!,S0 M"WY/Z[ J3T0#^"!:@RV"2I'7EZ@X;WK)KC M81KOTZ,C7,LGN-#OX10NS@Y,21$RF)_WI!O%L=T%/O'18;"H5WJ=!ZTRZ5IY]]'#E]-'\Q,AM4R2UIH4 MB*,V@;KF!X+:(PKK3D.TTDYB4U19YU>UC&_@DGFNJPK@#Q@XME@M:5QIU(\7 M.4,X(^%Y(E3\3:W9,@?A]UJC^IQO=<'/>OWYBVF4W^*QF9H/?JJ-*M"9(M& M@6CJT*IAG8.\I<(2BC^7%FY;^-G0\@C]J/ VO64XC>WA$:EPHH<5C1R$0M/L MX!2,)_8DK5#=/)8V7^<8#70*&]/0]]Z'#2^G H_/,AFR76VC!Z'Z1"MC9\?D7 M=MWU49X+[W"6NE3<93<:Q @K<&U4Q,C2PVCYQQCIKS1R,=(%K\>3Q@U28EM5 M-F>PS(A&L?PV;WX8*6%X_=JNTPVO[BJ'_]5RYV:XPT,7E=H=&W3ZW>N#H]U. M='#LCU:-AIW>Z\$77W80=0:#_A=?MC_H#(_4]H+]ZY8"2P1P*:2)&%I?RN+- M2?]D*=.D^J@K(I9:[O&THHTA#\WIE7I[S(-J?AP!TE-SW/$S^'DM1N%"^XW=OJFFTE,@P?ZV,UOADKK^8W8 M*#R#GL'!KXB:9J:[GB)C;TU=[4XYJ,36S_ -U 5_>_4_4$L#!!0 ( ,1N M"%=\/"L@QP< /XF 0 97@M,S$R<3(R,#(S+FAT;>U:;6\;-Q+^?K^" M9^-2&Y!DK23'LNP82),4"'#77M.@^7B@EB,M8>YR2^Y*5G_]/4.N7FS)M8RF M<6(T0&SOQ.O+D[#(Y=BJ MQ=6ETC.AU:L#G0[/>Q,:J+/37C)XJ4CV5:+.A\-!3YUUA_W!_Y(#J$(\ZOAJ M8>C50:Z+=D:\_JC_LJPNYEI5V2CI=O]U<$NNHINJ+8V>%J-@+48G%KXUPZDU MUHT.N^'?!8^T)S+79C'Z[J/.R8L?:2X^V%P6W[6\+'S;D].3*.CU[X05L7BX MG$=KSC"/T04MK4MZ;-*[FTR/=27Z2:=W><+R2Y^V/9-N"N47 MZ<:R(-_^Z<;00KQ.*[:\U^WV[C5](RWGY5\/H\%.N]^WQ"=MC):Y^$]'?,RD MP90MD8;4+!!Z6;TX/!U>[.G%12F5PMYN&YHT^RAD2".Y135J,_Z>R-.DL_3A MRZ]^.RQ)MW/*87@O,CDCX6BF:0Y6K#+MQ<^U=("Q68@/5%H'&!7B!^MRD73; M/S.F_MWYOH,['D*@S+R4Q0(9.G\&&>I]=1GZ7GKD!1G(%^*ZL'-#:DJMF"@7 MTZ,L3"@L:AM6D+H0R >XK'(UP0-4NU#XD#H)QR99[K*H.#O@0;\^H\;PG3K(*;,Z@I,5YLAN&9(+#_[2"0 MQ$07R#'#99W3%N '<0R[C7%=3, @LQD.2; MT6Y8V=K FE\:LV7M,X';X*N#V\=;N7EQ..PE9Q>^ 533%#!!V GZ-G)'_C@D M[KV0C@)$D'(]-L2I% 1[%FYJ;PB(B ME5<1S%\; (Z 8HOV7FZR6BY>'0=O[\(:$ES>]^Z>3A^$ZM-UB4?R6+PECRX; ML0EEY.'TM;C"I;+V^ZMPJ1D3DM"L%(N7K1TF "7,M ]$ RDJPCSD!*VZ<&"_2J67N@"8MQ]KH M:L$5;->RC.20YI#!",);HAN-5R#'F\:ALG8E$.1#Q4U3ZU0P(+1@4RI02 V MA!$J&:$L@O8R@@5(UB68Z7G )3T6[V;2U&$G]H'5;E:0]F MB9>[NXF #BB"%7SL6<:VKNZW8!_NDRMIXH9L\G ++<;+5B\ GF(DPK,0))<7 M^.83K, ',7;;.>!C4U-PP\C.1#^"!;@RV#2M'4=Z@X9WS)KC,(W[_/P(<_D4 M$_T63^'BZ!Z5"2"#_7E'NC$<[2Z%$Q\?!HMZ9==QM"J3?E6S>&<'B)$*E!?B MT=#1 N>Z:S+-\>^.?.M/A^A1L/JZ^^C3Y]-'AR=":KE)6FM28([:!.J:'QAJ MCRBL6PW1RCJ)IJBRSJ]J6;B!*?-<5Q71'S#PV*):\KC2L"],<@0X@_ \$RI^ M^/KC9],HO\:QF9N/\&@;)O"9(M6$1#1U:-6PSDE> M#Z5"YWL:Q2HB<.6:"'(%#8RTA0>G#7Y;$5^U\7, MFADQR1=RVCS_<\W>I[PT=D$8G6I@)VMF'_FT)WO%;GX(F=I M2Q6Z[,:",6!%K@U#C"P]C99_7(#^2B,7(UV$^8+218.4L:TJFP>PS)A&47Z; MUS\!*7%X_>ZNTXWO[RJ'_VJY&W3ZW?-[1[N=Y-ZQ/YHU.>WT MS@:??=K!66?0'W[V:7O#SNG9?D$X"?%U2X$E D(I9$6DUI>R>'70/UC*-%M] MU!5)D%JN\;2BC2,/Z?3*&];:?)/*E'47DA&-7YZS N;?@I5NU]2'8_%U^;7U MIA5^1=,4UZ108D;A?,]2!U>OZVF-!FG8"A\0/,+M1Z#EVXY09.,7AP.4DO!S MQ\O?6W';,RVY5LK0$VW('V4>-^3?0?]R0?_('PK%J+^[H;3F9SGB M5YRYQ'\=>FT5OB;Z._9_2>SY>/ FTS01/ZSZTY_B@7<[YB>AS=MJ5Z\NQSQX MS_%A\WNMTOKP(G(4'_W/Z-XON)H>LKM6D6-O35UMJ]QKQ*V?\?NSD_#=V_\! M4$L#!!0 ( ,1N"%?4B!GY!&$ +1[ @ / 97@M,S%Q,C(P,C,N:'1M M[;U9<^-6MB[XWK\"[8I;5XQ ZH@:;_/N_K%.U_/[_^LO_ M_>)%]&.9M)NT:**D2E63+J.VSHJ;Z!_+M/X8O7@A5[TMM[LJNUDWT?G9^47T MC[+ZF-TJ_K[)FCS]7M_G+__!?__E/^@A?UF4R]WW?UEFMU&V_%_?9"^3Y>7E MY<55\N8JO5PFKQ?SY9NSU66Z>K4XNWQ]7I__IFDQ4O MUBD^_]O7YZ>OM\UW=]FR67\[/SO[']]X5S;II^:%RK.;XEL:+WR[*N'MY.ND MS,OJVS^=T?^^PV]>K-0FRW??_L\/V2:MHU_2N^BWC?QXNYJ?S,>=A?H7S\-N'=V]__BEZ M=\R(SR8PX%_*)DO2Z$7T#Y7=IE4-__JO-&W@,-?1?Z9%6JD\WQWS,O-S>-Y6 M+9?PTQ=YNFJ^O7BYO<=!NM>[7/:^R_LTP=T2S4_/YG_^T_SEV7?=_]>O\EBC MXN5=IHELY6_;8IE6>-4WW_^7*F""HW(5W62W*#X+6HS''N(WWY]&+XY:XOGI M:R-J,GB/8H1%/E&S1U]#;UN?GY]>O<*7EN,156V>GN()6L,'<(9D&:.LB"I< M]V6T*JM-E-7PYS_;K )MV931(L553PO\-XK +1P^V+NT/:)FG4;;JKS-:M@R M->X0_,03CS^@QDWK&F2HD9/1S^HN.OGSGUZ?GY]]]\/;G^E?\^]F45E%BQW= MX[J"L>4IW?-=X8YRW55;58+_E"O80S&3Z:5OA=MJH+(^C+:RSNL%- MF&Y5MJ3%2LJVRF %X*&WL+_C*%F#;("M9"Z2!8/30K>2;2OKI[;;5-$RP1_X M^:(L/YJ+W%U<5C$>'OPX4; _X)(E')ND*2O8)76[W>89'"+9T?HK_73W3JM2 MSE(+G_&=Y'#"%R?G,YH'E=093&T:-17,Z2:K\=#%4?H"IP(O+&GCI3D\IBJ+ M+(&9V&Q:^ <_1)YK[U.TFP7*]4"1QX/WFWVK[<:?2.)U4+ M(K@EVNIP.SV$SEK"V:O7<*KP]"W3=,-":JUN89U2.(N])[(@HWW)!PZ^NP,) M"+^&X63H$\@:_KV@O]XWX"C49@1W<)SIP'H#H3>2$[WCQZE&/Z]G7WSIXL4\ M9IR>T^C:;(Y5M&$C2":EWJ9)MI+5R!5-V"HB";@$B:6*9;2&%]&;6?\8/T?9 MSF/("M0#O'!&$RQV+/VUL->W .D=!P+;%Y>G1QMEXZKKQ534]?7R=UBB N8< MUK1*UV6.FE:6JM8*'+:D7CU8">?*&H^1TO=P#@SL&3PT19K 25>\:_&TT+K: M#<6"40_!/,/LF876YVP;T'96"1X<. "JZ/XVEFT%)Z3@;524;9&DY);#;[R- MV, ^SY*U.PJZ#MZI41]3. =MD=/3<>^5"HP6&->/6NKV26E7OW=_(6H>7]"] MQA@4J^P3[&D%TW:GK:0ER H M8(/=M+FJ7$$Q<&R*%/:7" C>/LZ-4M)QI%K BSA\,Z.?C2Y.%>Q:8__ (<]3 M!3;=^25IHSHZ";2E;' T*T A;M=ED1ZO*LF+N'Q]\-:A1@]L2[K-%:K-?3=Q MC5/^U2(%T9#2Y4VV27V1IB;+T^@GGF'G;(LZ1U/$N14(@$"K^XH< M5DV\CT.2.H8'A29G3)I ;QKX>N^2TY:!V[+)D;$9I0)A9E1 ^BE)MR#N:UZ\ MNPR>Z-H6#VE*G)Y/7*9=/ &9YEH4HTJR(#IAY-&0]1-(G\6.?$*Q,U@&L?G* M>ZU.$W )T!PR@D6US;JL8+1+QZ,A$>8:9/!<&9=U+\KHMFS2'J-&Y-T9B9/! M72Q3@%OS._)-<*6J-(G1;,$;?[&H4O7QA5HU:?6MRN_@G;\92GB\.K]_NF/P!083 M#X]\UK=59OU\=+P*A8ZJMAF-M!;W]Z@]N"Q3-O?(9B\<-:_W&7JJ)(-A]C'T MM,A9;\2N+USJR%0-VBS/\7?N7L6XUK*,ZA(&Y^L\U:<.W),7NZY\UQV]D2AD MH9JV.FSMFLEQ37FT>/E8*^\L^DHGP^1$D8*VN06-K!99GC4[_!*A[I1A@P-08>R&^P%YH,O0'0PS]]2L"?N<'Q;8PW'XX7 M9S-8+G>R98.X;P*J$$-:>EGT[PK_Q>[2!48N(@IE:-LB?#NX*=T+YO)(O7DV M>M#<49*7DU*2?^=#@+LDK5+P7JUE>D3D#2Y.U@4,_68WCBZ]!L/.V-^X*[<* M;:QLB_9E%@03!LQZC,JEBJ/\GSD/=AK8V'6"9K4S)+*0"^^H) I.?PIF*>EA M>LQI]#=^Z ;M;7V70R_GV0K3>Z5?[2_@YM[@P5"O6U4T+#; @YC2^7 /[N-O M<5$WL(0@.ANP?# F4M-:PA3JN+YGE1T='YF23+R:U)IS)M[ZP^.(-I/-=,*8 M0RG,?4G+CO<9^]$Z:YIATB,AZPJ^P-3B'4^$3N>M,G0&C!7A6'==B\;W;N*H M!ENWDU!Q;#;7U[ & F4':' 2?4"/!ZUO&SN@4()D0#(P5<(D"D[7KLOW13-*=H]7^[(QU'Q97&*3FBK-QJ!/[L+-FDG8G+=-&FQ5(6VIJVTP WE MIU<< :,.W5F'/.YPQMW[XN-J1ZYKKT 'GYP<8$DY80J@B/1:I"";"F==3(1% M5DW/GJ1H\!W,_"[21+5UZHWR3H+(L"RK%I/5Z!7 ]%'NK8!#",FV(07+RJW,.4-N#<-Y8<# M3\I3./ K4A/DPXA-E<";TU:KVP7.9),1 HT2=)6X%PU\(7L)9FJJO)GWTWP.(J1R<>.W2*SH94$8> 4P.SCX=^D M;E;42-SWP4)TYD! EF*1:I\(SG.&NYO$(&&2Q&"F-]33-O0C3&L:ARS3@+U] M,S=\)+]ZOJ8G#_)5C>K.=J61G#]$KFA^-N%DT7@&_Z4O-!\[,WRY5VC^G[:L MVDWL ;%(\I1ULRV+E NB'G>\QQPSR96MC M!1Z^L*QN5$&)2QW8"$(21E$(DD]%_Z1]AL8PAVV;T^C#VHGAAL-Q@V ))M9- MAAW3>;^7E>3[\.%H5M8,I&=$@D;JW MC-&+W2^ M )&\5H#MULD&U$ Z[;VZ7_?%J,U1R05:OHK*MC$^ M5)M AD#&^?8I.4T#_EDT,3_ #]F6:D[6!,*;_*\XW'_$/I4 M@-*B;&_6_CC@MG": MP3,5H"^"BO6XCT6 74T1 G:2C+TK+D[GKQV,.2Y2K9$9^4YGB@]# 'W<1U8D M>;ODBAD'\+BT;D.5B@ E[T*PS'@Q7YD@)CS0'CI8;>2HACMS!!W%F?@'%H*- M@H4#0S!7Y5*[*WZLJ!-+,/N^Z,%RL=CC5SE:)'5WW_R,ZKK'W7[+L;>?%DH. M2-FLW6U6-8Y'',1TPU!+YF9=^JH..D8#^='I)]BI->@8Q,H?C+G9;:FQA%]: MO"!C]JH'S3C "<1Q<1:J7<#[PE^"88+W7F6YATXZ#$AZTGC9DW0JN_6GG)-P MKD!KNCN.=2H&(@:-59(H=^M29)@32Q9+VN0"CG[R5F.?O*O3EP39_1L#+A(#AEH8A]"U8S_SS(4:XLCC5?JH,[ S0![< MW(#1I'RX]URJ1[0E(YK*OL/S 1WQ@"H^GNS+%SOMY]>8!HZM\C!OX00.CA0U%Z,GC$YNQI8U6LO_Z@0U<69[[-%W MJSW2PROINI^A25$60J0M^9@;U,"KL]?@-'H0-26[B%,:/)(5;$(L1T_@!I3G M1C%!J=G*3>[^WBYOW!PD5B:$D/1U8-1:&UC#@3QY)K>G* \\G"L&..+4$[6* M!T9.^2*9_Q AKQQ,%^6^D]8$?W7,KAU3OR6'XXYT+6M5D-*FQ= P4$KU&?'4& M1W1C+[UGS*7(<.J(2$> +9HRKI,T$9P_8GJX3,+<;! M%HS1X/3T<;@C]TR\HLKTH<1G3U+OCY>7O7B0O.S%$\C+2@SM]2/+Q# _Y.]N MS%Q1X7?\4$>K<[J[E:7FH??2+),!M$ZK@.%Z>4M8+VOB%R7L:F5!6PAB*6N5 MCZ-OCN6Z&WV%3]1L"*E\ .=T?#*_8R*]>FQ8ZLE\*K[*+\XVQ;I6*0XA]BX= M.134Y!"(B_&:M+F]I#P;'CH_;7%1?<"LC5JFFO7'6^:.P>9>N:OOJM[.+$$'T8T9>S7-4P 1I0 )S_,-*M54-,G/P[DL_]+ 'RXN3"E"NGND;&;>S(%27G)QWJN1HCU"-.JT/" M=%+/3$Q$PQ"4WE2#BM3-&W4X&X)]3,@,?^&Z5\6T]EF?NO9\:;Y.5$S:9951 MCOJ9X5\&0Y%@_GQI8TP&:8XU1ES5Y5SM) S\G&N0KH)WPP$EY099_&KKU]H= MJ?'3051LPCMS!'@5ZNHI3H>>#]!;(.M&J\I=I%+>)A$QB;40>M>3E;!;"4'O M&F&4T,="@!!E+(#B(U2/PSZG:PL,-GE18=2]D<+0W]H\C>:7ZL5KO&+3YC=, M&6^J1DV$YSIAN !K*.O\'Z679J<<273?/3-4;H&FP2(,_6%3.W-#5:&BP6.! M.&B%?I=);6=68UJBPA&>=,$X6*E>E9\RCAG"4[:8;<<)].Z&VMX2;()+G"5( ME D2>=$H4H&6"S-=SI"?LN?57.%(=QM^G:.FM4-W45,TLFYS^PK.,,SO6-SY M-1YA-?"$Y=L8FEZ$ZIE!.&$\;'SJG3I) LP%!>V<"XN[5Y MPWIQ0V..?BG.+A=C/?+=#$R+Y44Q;8@>M/6#=^+ M((=.P%*R XCS*M0-$Q4C,%>XZ,,33N:^_36:]M$=AN>I%CM-6JGRZ/SNA#11 M!0),=A;,V;)-M%1R4S8.=Z^V!>41,RL!^PB0/48HD_9KE$VZ:-Q:S0%@YTTP M"9(T%MSFCEUI01@8=Z&;_3G1HB$T[>,[WN=3<;PG7F5,!M]R=G(QAK77D1$K M3P0Z#!I!L*%CC0W:=G2F/0'LQ 6FN"!CF^!Q1V61N"7[RT+M7(>7+:?2!LW,T=;&_)4.SW^%9"=2#,XN-:'ZP M>[,M['=65ZS&40?V5H P:T>C?1N*).0""[%6"'_QY@S,+B(B1(6F8)<>];/Y MN?Z=I[^8]!;.)G7B<9AMMI@#(>=B!P\Q4^&?XC__Z>K-=R;<%4?K\@Y3H3&K M0;'XX1,*U^EPH6H&@B^H*S=L3\';7)QIR)6FP;'?O93OF!B'=JW["EQ=ZS / M!P>G<=;<[&^P?>VZDI?S)7.KQQ1&H.ZSTGR=3-6;HQXA$;1791>(=>(Q+7AO8*18F*4+$I96CX7%KF-]XHIA\:V\S: XZCB*!/F MR@*7G]/&_6GCRP=)&[^<<-JXTW3N<;/&_NDZ,:"][MD1=3L3<@ATPZC1 ,6: MI8;EA'C)&;I:[-RO;/#;)A/VZB(F2DFJ;('1X$5YF[*;1U+UMLP,"]:R;!=- MH-C\ D WFL.T%V NX^Y7N<3L-'HQL !-1C60,Z"^L\H$[TW 70-LGU0 >@1_ M!6/0;)7TFV[Q<$#,9^S5\PQ:^O5WQWF-8?KYU?BU(]=C.XQSD3NJ-N3AXMO? MKI+-");E-^[)E890NJ$%,JGNRC8G MNKR )7&9U618")<_1Q8HLK81[@RV\QD(V2%9I'PPQ?N*0@9*\3X)&3L):XDZ M[R]WP3$4]CN$E:9U0[G;K(]^D)HNT5131LWU#0V@]E)+ETZ$D7*+1/B,?W$) M) _8#5&2Q&:7X<2FIYT)-L=*GSY,I0NKXB(EJD+B N=CVHU@2W#5E"YB+81RX_!;GBYWF&D4$ M]J026F7"SN04T7[FKSQ8.F6;J/_4"N4)9;=IU>JZ3/A/ 7#P&AHN,MQ8L!ZL MT!S1$AL!5>NZ"!9&25HUSZMY8#59M*&\MNM*\\XK:X1=3#*];,$ES39FYD/U M7994]*Z#L<#\J8[,0]D$DCD$>D][3&55M >A[[U'L@ZBM MF'H0;K9Y:EJ!,57P/UM0BO#30L&EL9=_T=0B6CI[1+V3/0"/3Y) 1)DP42?9 M[T]>WMHY%X3E<:BQ,; MFS>0@5.<[T@ZP_.7E&4:;DTW%QT+JQUM3F4X4U>SXW(*(RF37 ^%"OFI0[( MD[I!8]J(YBF")ZDE'T&CP-G;2$FFF]BF&&IQTV)786_D*';Q!RA)9[%@$94! MWL*H*&FLW0'+A]ATYT7_\&[=DX_VK)Z.DEN '($7=1:Z41^=0ZJ,6N%_.9/G M%A49W2QSMP MP@UFX!_]=452)3IU;,^CSB$7_LS MV =2V->B-_#T?5'P,+Z^_76_6WVB9KV>]?[ %S^1X_&7SU$-/[\?,+1^+'9 MQ >C3R2YB.^ZH^4"D3FLYCB9"8?SB72Y?CM8J.-$*KN2&R.,Y!TI(1_6#>.U M[.H&3QR'$6M 308][K\1$W/M\$+D$R^'@9^+LOQ8Z[@7YT*Q^RHE2@T&OAXD M3N1,ID)?:8@.D;@512B!"II;9#.Q'"<'64N_(\]%X9B*U1J;1KQ&Q.5<94)O;DF>>]_ZIKAL;@5&$_&K:?ML^BE*XR/:2I& MRK^(=;!JL6F?=F[Q6W&Q035EMXPXK+D:?J=][1.ACHS0"<*(K1-]803H2_5B MCO0&_;C/F?9?-!%&;?&&"4V>;5FCI?T]G[T8?C;' Q"04 ]O%*)ZH(YJ8 XQ M%+I/=X?!@,,+NF\''X[%H)FPY7_?D<73Q,S>4#49.7RR4C$(G1(\.*2L1YH_ M-B=HC^!0X);( F@^,";?B6_(=?= EC)SJ)YU%UZ/$S^$]#5&1[TKX+\-YDNM MQ8:P):*D@)E!(M8J@XV1\!Q&.89Q]3:8\5G ,=0M]73L:9G@&/W4*I'#)K#( MZ:>T2K*:A16M':8A^,/4-,:I:L%UWF9Y>L,MES!]UN3&@-JJ'?USD^([9O5& M.D%4F&\C4T;0G0,[P-)+]/OW/+8(SD";\BKP#K^#?9?RBE'4-"(#62!&U&L! M?X';&B$XQ5+BX"TC+=Q/;TNTMW3_S,\9IVU-1;%[D8H9G.FJU?/$.RRKO88. M=B;[WDCD$L>0=K0K/F,"30YIZ(C+"3>"'W_350Y#ZL#+8;BOW[G0E%B0 4JK MZ-#LD^'"[%3IDK<:G/;L1C<'A[%AS"6)TM4*AFVULC[H_%)FRFWB1A) SCOW M''=Z,HXPE7A1[RM0H4J)3IS&^'$";Z<_UAL4-R-%CP@Z@,AN=HFS^B.%!L05 MY,OP]R!MT%].N)&3P=!KI-VW'NMK-WC_3J<[G1Y-U)8;NJPX[1C+B4*M1M:L!J[M M.KN%JV/_-;O77I4JJX$=V[-+M4 9>+&3/=^!QY]6\L8:#@+''SF)V$#A1*NQ M%GZT"NJ=W$,,A=E^,&(/X19'J<"H&+YWK*V0\-H]QI+ X;"81H)5/#G]!]AQ M[%&FV%2XQQKV&"9:4'6%8UZEW.'9&20CA(CJ1FO.V-.H'5O#T:O[9=D"MA5I M>%, 3+N^R E66V/O$39>!:%86:ZT-?H:NI>>TI>Y/8FRPA 42]N\3IDQA=R, MJ'$T#IT*QR0?&+\)S[@&&B>;M!%B,<1<<*]M&NMD#-P;BWPVX%5@,C7?[7M" M4.-,-_5>-?;4I=FC(LN.-I+$HJ9=2Z2&QG^.G4.X:I$&3Q_"L$ ?<0KU:J=# MQF$A&._;BR69]R?SH:WKU84&=:@TKZ4\"-=R^)Y'N?T7S$?^C$K=$P=[^2!Q ML*L)QL$>,[[C[7!ALUOHK&7?Z< @RLE/LYF/[G1-"ATGAD/2H^M,^[J^RC0E MVK_C_T:+L@"!BX2!5CO5:#TL4P%_9X;'H7-CL!0SVTX;S'*0416*-P0M[:W] M=7M4*>_1RU3E*'$H!2Q&ZZ==S%R&8-!XJ8/83QO$G,.W"*.>UGN]"84@*,.4 M$9W8@!7N/<[5B0S7&:=.=^P;QP0L>:W8##V1WC L^P%0I/ MTH 'SV45K/G82T#W=C<<-C.#8,GG!\_8KY#/37O/V%K+[VE/AFX"'C0)?(K)0Y*1_4I3>S/\ MU/L$#=CHJ=!:A[U KTWOAG\0"ZD.YCC!CSW!0AAX9D0:[AL$Z5,[3R>!.SSP MJD_J%O?V$E&XK0J<8MPWF#KEZFTZ9L:W[9P%+H,TM3-5WM>>90=A>J8A0('"E7RQ4S=_/7$/<+]EWJB1@ M@/0#89O>%],PQW3/JO8M"NDA?__6MC^D,C?R2K5T _DC#KM$[MPMP-2YF'09 M3@49[6M\D8@M'GH_;<;7F!""Q]8T?:B(/\U\Q,$V-:JK6<.$-41&#&X%?F=: MSQZUKT3&VEM;:"GA4Y6_>8+U]P-C6=CLUKP-WB4@2T4PP&V9&Y;(X*B);,K( MDR&((J)[O3'\7L.NLY>LAT8O'FO[LAM:=\(QGV8Q MAVO0H:XUON,.C+9:2]P@ (<* W>@' 92%9G)W1Z,Z."X>T5Y[8=:R,JEGD!+ M"\GPQL6EDGJBN[>G[PDZ#X<<)).Q?FHGVSD;SI!*=%1;;K2TQG R0^H@/#STLTV+SF/X9B6"7:48_CV CQ=Q?W? M/,,/8U%MWGB?HR+]).*6#Y4Y@YX!K7$X P'17MSYUY^M7F TO(_W0GNA.?W* M?D+E.+&_?35ANR"5X(7__*?+5]^5U1&E.[I@!\9C+OK*-3F\&H/+L7>RO0I# M%;U/P'=E9_E'G. ^>3XT6K&&\FB _NO/,2PB1[CLU M>S +,&?H11Y)$?/Z.9*U/Y+UZD$B6:\G&,GJK:_N+__LX1!Z5*!34 :A,W4A MN!3-(73@-!%-R+X7L"JQLTWQA@#SZC+=X(FZY9*\P4'T6 ,\$L[>48Z;LA(W M5=EN=4!#KL%\8&.8)WHT@R^G-UK&4[3 Z1Q@.A61D$\K/"P.[+DO,^IV<_4C M"*X 0T!)>N3HM.'/L1R=LD@&1IYT[RX5##($#0)T4,5IQ/ #>UL=:=\ M[^%W=R]3IK38FMN:2IA.NW'3-(N-(1JBU*?^-1Y8,,^XC'.1@E>T&G96-/R< MQV1#K T[U!P#B \YWRKY6)1W.28%:EN:AC7!$D21?8JC'G@23D_L;EB]%2BC M:V6;Q$[,=LS2\,.X^2 C?KT/Q+![!H!D<"I"ON3>1>N)B=M0. MQ1"!S+A-_62K<,/@K;88;),V+G(+RI'7G:AWL^:P8M$,;Z3^U3T0J_D*Z_P MZ_EE2UEVLP:- *./B*7IVS XB%?R?E/N'J@(<]HF"Z'IOSM.C-ED\V,V&>N% M\QF%QU#6$+ARI;*>L9XT:_^:28Q-.LN0I.ZI,HV_:-4?>L7C MO9!W;:YVV5&1=LTE.+MRR@V1LV_ M%./V5NN6TM>3@Z\^B2TNBC&T;LIRB9NX65L!BO'B3=HO;@X?8T_)]Q0HG)Q&#&5P97;\R,+?.?ST\NKH,+WG&$QTZ.; MO1@LDGE7&*(KS8'WH&"/I,>4/XN?8R"(],[Y=P_ZGZ_T MWOL.] 5Q!!P*R0W)MO/3^5&B[2$DS]E1H(#\:()41,0J*V41>E>P]W.G#X3GR-7($M MRRTOSK+-X5V[U.+/L6"SH*^'8\$3#^L^V!D]4NG:4(F@>AQ>6($$6C[81E.. M#,IE3K*81MO.#9:VQ<&[H/]2,:"P7;O8U!G,F$%3;-[^'WY-\F?78#X/IH$I MC@/=V7E?$A?'O_"DW]A3R$MM>81ARB H=Y^=-OC HW;:/I952B@O<@0I"F]0 M_]2J/A94!(7=5&J[]B/(M==2^T,J7RH_*K MJ;=H(S:!=8YMS];4.@-PDDJWVES1'(*%-Y1E. #26DB 3E!2;'8YH05I?Q4[.&B;=>FEV^FE/U!?UF7$)W:: MCM=W.3:UDVXR\O>>*'TGEL]RHZ>?@.AX\/26*1EK%%OH4V#FB(LU=2[XD0'%DWB$"G# ME>G02N%-ZLND8P$VZX,]6?4NN\4I, RO7/BD<#_MM,9T0VQ9C9O0*8#KHRO4 M:N+0/AS:L ['8B=$0LGO#=8Z5KH&6F%*0B6F3MV-;EC9WM/784]4Q/[N<'R$ M$?\/'B.1V9?S:(VJL"%N&';TM&/ Q2); "OM'))B:5=>%KW5/#K4B9BNK&CY M#3@+9SGE<" #_<^,1O%?J$NHPV%^[,T[0,3H,#"&](L/*AQ[(KZQ3^K8TTG0 MSCD,J9=+YZO$TG2PWQP"#J8Q6Z@F97,,-)0:KB//K8#*BBCJX.[B>[I4F MJ2.RC->N3[A8T**[IB+Y-(TVR+"X$_!T.6[N<6=5V_VNI:)8AV@&-Z73VM(- MG(9IUD.'[*#MLY?ILAL'?W4:DD4]OD5T]6P1/5M$?R"+R")KK-O]-*PA\3-# MF?D MLV,5+[2Y7KLR?9XS>[!T>UF0 EIA4!A&8:SMXS7F#X3]1@=LZE*4O)] M.ZH"9#8* 7U7R')CLF2.D@_+NYR2-"?Q6#L+%H;E[JW6G1O?5W_W';0IJ.H_ M2%;BS5/*2HQK KW\HYE PG45."CWZU7D^R:DT^/(M KMPB02RC"XW/%4,$NI MR'6VJ=.<]"(V]L!_JEN02UP*70HKU&V6WM7V]/?,@ :P'M; CVITW"=D.NY) M>#65D_!7L2F?ECT^@C%Q!,CR>IZL \:JR?5J2@9J_^3V80:E MM30\?0KI'@L=3$QR[)6[H]+TQ#1_&WJ[)9@ ;V_*0@1ZV>2M=C-"GT'PC#BA4%&]'EIND=%V+7$I[%+X'=R M>9[(/1/9%D2^RC!V*RR2JJSK%T9D+ TP(YQ2ZA9#/];R1VVWBASL=7G7.4+" MX_#N 6[7?9@J^H BG#%^$BY;^8E[/=?U!Z!YZ1J\(*^FRX M'7%$/JM7R>-[G*^?/DUMJL]#Z?0D]J#S;E>1I=295AH6>$ M>-C-MA$P$U.:.]MZZ>W6AQ[-)%-<^A:CW77->/HO/N'6 MUA;&]D%\>\^DV.WK-CRPKV9H4!]BH,=&V:]&-WK>3,7HN?[WP<*,H=916C2U M31GU5?J:,CL^I=*KJ^YW*BT,0ZO*B=7S>A2S4M AS =F[]CS'Q,]]S">01KD M2=%)'>OWQ]+I:*7R6MH@U3D\BJ!#UK7O335ZW#,:SJIY9'2QD%MPI%GV>I*) M5%B,-,.%)L7U< Z(K&8;[/@7-+!7*L[A=]7KM_]U";@1FED6Y_%\2H>M *Q/ M"KJ+/!2&3>RR>VP OX3MB /4V7I?A)EYWAGW#Y$PM\;T2IGF9R-;$?.7IY=$ M^?A+V>#^,IR!<-S0D37=.VILQ #2&D%08C;:DL8I[D?:D$Q(-$Z A2IX2^2, M1KQ/EV2.)(3I@[MT==9">*TL^J]'MU&ND GIEUH'5BDW;1)_ SXNRA:6BZ(& MA:)N5"C+C(4O'%EA[#-'7_.RLIPYX ME54U"EVA1*B,"X+M3IDM?IHFAKNW^D6GSQ+SVZ\GKK9 M<6>S&O0.!7V$+ <]6^K1AL+ACP['G)\]!&/PQ7S"C,'CTP&;VG5/.)F":]DJ M=9109PG;TDK+)08PFCWKM[/JUI93/SN7(< T_-"*SY%]?04#?2![8NI4F];R MYB]>P7R#=(=1YCEWAF*<.SE@#H%DGW:"*6(U,*!#C@T-O0YIKKMVWL5C[^J3 MQ=AFWNO3-Q0L>A_0*':8 :(7T=^*?!?09IOMA49@2X8)T>0&K(SAW2A)0#^U MSDW@CCD5I9U:V7Y:3LT/9C@[?C$>7^VRBWD1D&$S2GPQ[MAYU#LULI6MR8;1 M3]]L0Q[&!;4^DE/'%Q\H/K)QHL^:"M,GP]9JD$W(;-'(S.DUAAF:D;5/PDB7 MVGIR^*.8^KS-KY+U[>7IB\\003I]U>OY[)8;X .U6_(8X[7Z4 G M[A?K19E@J40.ER63IH*JP[931_I>"E4+G @\)7=-*R14[J!5,+%UI"556 M1KM@)K_1'%VL0V9Q1^>PM2,V*YXT5(ANC)ESL>J+&F+(^8C$GTNYDN#CLQ:%SP?Z!(PK_I#HJN+A0,,5.3LTF M<6R;! <@#(=DLDN1C+ 4,YLU& ML$9NH(!F5)9*"1%%\2EGQ>CW#HVB\Y6UN*T7LS>&31Y9G539 C1A^F MN@7&4^R6J)R.$Z@D N]C:RD)(_:R* ?G4S@>&0AF1)U)'Q\P3GOH&;):8Z," MCY?J$^3#IO88)&V1M69>Z@+K3XH@:LI MU1V.% ! 1WAK>] 8-8HA+,H#64"*CSZ0^'4XZ_?KN,4:G!&(EE4V1 029(8N M7:5+:@2>J[MC,_UG5_T!X$/)_\:TK&>]AIV.T M^(,85]E-AFO)MI8R_!">1TSLM4/,>#V$2<;Q)N"][DMS,D EXUE+.&C1ERLK MR79.O%#OT G+B#&\BP=R("QSD+>?>EMI+53R$=L?%>PO_K-5N6$+M"VV=*=/ M0?LY/Q+.1*\G(Q%-@W(2%P0=%^%*--Z#J*A:((#DA)RPM^*/V9@5]VS8QX?% M^7B/Q_LEC0$C2R(E;X_I!U'1%+W,V&TY2H1>/O<-/@ #F#\(#.!RPC K\/$ MQ=4C:\8%",:-[AY+B&P$ZA(5O6UL3QCL&]-@G22H,83OB 06MSXFL_ 8,',J MD?\2D9#^G:KKMB(]HHLV.@*$"=&PZMPY8A2/-2&%@YJ,3J!*&MUTC@ "B 6' MQU.\6DNGWWWW]P)\:T9+WT^_T[.NWXS,N M'40W84C)OQ]X COW MY'LEU&N=6PQHJB:,P$D?>OO:%H*UR/*,%X\](0,W7F7+%ORK"AF@J"Y& M&/VMN0C&8$S9S!X)%W7WSGWW3?\F&.X8V=]T@=Z=YU+^C=.4%K4I*<@VB[:J MS4#0#-T4EB67>P478@WP="%_%K,"J^-,J/T[A):!I192'O M9XF]0]$)ID^2!M%X2$T-2\0F/.T@9-PJ?4?#6FLA@O_D MHK8JH4-)(!^7_[AWU>ZA^V%/TBD(Z_+NN;'-;G0+; EE9W>PJ?>,;DJP2@M^ MC)Y =_[X4^R.B-.M7YP;>9=W!;SO.ML*Y237&VS)E9=ZLILV6Z;*(FZNMG$Y75('FKJ%9/[&OGUD*#H?5Z7 D.0%!33!FF:YP6+?I4$^Q/KHD M2F/:WL7A 3MXN().;AX6Z'G%S#E@@%>SMT TZV:?M(SK%&$WZB/:W(DI <>R M+TMYX+=II5"CKB_HX>.WGH+&D UL O0;>P8I]S&5V-@PLZ#FS:8:F5/..NL6 MK20V 8]AE@W)P017F'[7)G=*KV KNG7).TZM+8*.9:#<[I)=K@[!O=\JH7]F M[L23Y38*0[:I;>Z#T0GBK Z17@X0F@?,I^CX*N![.4_C>AN/7P"YAYY+()O3 MS\^.H44PS"G!OQ[0B83_1&L@J,'IU,&\O41GB95#5,$$8@?,()M&^"JO1/?Y M-FL4#/>(E_RQO(O^=UEPA_0Z>L\AK3$F>PJS<5W7)7AUN$:_TM(]_D0@Q0C( M.%61OF$= ^*^P-5Q HZTO0P!64!GU%/Q>Q^&(]=$T4=P?A%'\TM\\OSJ9#G3 MKHH+)N 6ZQC9EC,3*N6> X/MH$/=PKK )VWP8(;'&U\=SR;F?LR4L$P+ZL2+ M5B!&[K@#KO]9K6WSN!.Z#!"?["W!S3,.[&.X.\/\+.82"2ZVRJ05D*G31]3Z M#,?SXN0VHRE]AYT96Y[Q"WR9=Z#(HTO\ZGVR!G^*P!W7?;,?VVJC!(T"VB/F M;O7,B? ']E-G(G38UVMUAY5QEXJCQ4@M%D"Y9Y3IM!_\%GQK0KQI24O?0>,T>! M\]O,>Z!MB CW R^_.?Y^?*+HIF]G%GW1SXXKAZ[S.'WJ))?B9>4S/Y>/1#_P MXWSWAT\IGS](2OG5TT@ISQ_9 E:8E#K1(2MRP1M/Z8!B$"KP8S.%L_!\Q=P@ M_ Y\>$P1R8F^*57N%7*3W%&%NI%GV/P/<7V) .A)Y(D*K$L)=O@"GD+)0&(ZK:U'ZI ,-!PA6:#E8>>[8!Z]S'%,D.VM2L_[S;3T8%#[\E26GNP,2(3TEO4/$Q' MYTOM/MK1(R5W@*@21L< GDO&E*>W*P+99]N&:W=O2XYDB#*/F=2VNWD#IDCE MWY4B)LZ1C34>-7#_8VM 7H*QTV>XH.:]4]Q_6L#'-BK"]BS\W#5_8@%RR4B_ M6 M^D3XE$IMJ*?@&73.-R-VC;M"9^&,#&5?C!S(NIA+(",FR!+B7WI0B^YX* M"'T,O[NOI(KV[Q[ 1 ]G;!=73I'6-A>= ZO1YEJBHF)D4]NI5'2@ZS-+(OGV MYUZ,Z@:%?/6<7-J?J82#84GCGN>F%P=@A;Y:K3C,O(O(FJX[=6!,8,J]"VGC MUM8UEAK"@Y4U5KFY)J_9_*\'/-[3Z'V[^%U.P,&K8S0T'+Y &X)WH048'N!7 MWV(>N0EY0LB(1J1FAT"$SC;.4>Q2@&.O29A>D*/5Z>C:]'(JVO0?KBFNU6G0#TK+]"?2+V8TY2IMMRQ. MQ*4T"#&T @-PSQEF(,2SL+02?6)C_@9CB?/9L45?&*;%DF@49@4VRC ]JP\U M(@D>>M:VN MM/1M_;6^7(MW&E$/X:!WL)<>[5FYAUZU>*@)L"[#ZDO;%J7+%1=VYO4X/YW- M:&+E2+P'+CM^IE,-F&M.\<4*:9_B,%/UI!U06!<4O<<\MIMWOT7?T_I&-V6Y MQ#W8K 5.GS%.>I,VQ^S"H_;;9W'1\K6,;O9R40/U;=:.*[%_T^1@&[8OH MND%& =B%@\!+@JBM559ME,_NICE[*DSBX+Y$^\90 1.JC0R^6Y6H(J%F&8S, M(QL#9&5A$U$##Y#-S@ZH)I,0>%_M5IR33JWH%*/%L_SSGZY>?^? BD:B7_> M,I.0?%;;$!__&F,ZJOC(,/2T@ .=-3O.!9F,!Z:MJ W+1OU.WTO)RS#QG7B! M"8$<#^$403Z&6JXK%/@IGL1Q641J:]N&6G$0*HD2=P@02XA_"X^TL^VRI7 ] MDJ KI;5Y0\N.=@PW3J7?0"&/+K^+E]C0KG>Q'D]:_H" MH(L=;PN,G&4;R:5B&4*5)5*,R3O)L& Y93$^8+FG,D(BQ2WW\BPQJKL4*]S@ MBMD+SRI=!$KM5STA+N(:@[D<=W7?4%+""R3:PM"7]&8P:-70W7"?SE58_4_5 M+)'$*4$<@QC$=#?5@BBQJ3R3ZG\\)CW9DXEC>Y^B*J3JK&JWC; SDE CRG<)VRF-\TAF MYE09GK&L BL1P[ )PP0X >0DP_'<,CF3"WW$LL^/IN2R#@@?Y7G+&8I:IA3D MJC>1M^ EV)]:8521(FHK2>[TU.]UGY'Z[^3*J2]%GM#:GI.)!AP2' Y2*!/&=NG5LN+0W(,S5O#0RA$#XXKC%$ B.WLMVQC +3 MQUP34Z5,76>XXHW[^1$_YAQ.Y\>4DC*FB]5+1XMLSW0Q3SLV#'0^8FG=F[EO M^;]Z5,L?GK[/\/^5G>C31Q[2-]\?64=X.799Y"7&\-2ALDBR%N]1&]E1#>>O MZDD*5?Y$GJ ;$^DC*QZNFR-%P8;_O](P+2QY?TT-YSYEP5&EH\7*1-L= M30:)_D%$NVB*V-(R5)J>2AB+G!+S,'6Y=Z6I#H?=BTY2AU4&Y4.8(++9,QP9 MR&+7*8HX6L>,GVN83.;^'Q2-:>Y*PQ%MHK7A*JE*+XI$1CIQWYYPN\#(\IW7 MQ$T,VT]HP22ZEI."+;U[;D7F)HW%B6'J8A6Q3.BG">&I@M]C*5+!&] $8-AJ MV=CRO_ K,P\)EAPTC(,S!JG9>?YX3&X/![.D;4L>L*#<"C:7Q#!T[H$2CE%0 M-M7#@X_UN\F9\G]$DHS".6C2>R_ME-+QM*?HRV.H85/2E%61[F!"7E"1&!'WV3;'N-@5O*]?[>48_EVP([I/U),5J:-I1.!( M(]W<=3BFHP:$6E=>-GQ7H><2GTV/4R".25.519: C*]K&(!Y!@<1AW3W.MM8 M?0TC;N!.-Y7:Q/2O3W%$L4;^!#PKQ?]*-RH#@?(.PQ]%2FPQF[;09##FB#.5 MJ>:[Y^')J+F6@EO&=TH6@RG1 =MUV914&I E,>(DZPRV*4T2_4M5=-S+96LE MDYDOLWTZ):<]#R1&,@FB-=*Y2=76-1W>BZN^HC'*)":>Z_G,[NVZ-(^1 M!DEI4PMP!Z54D^6P5QBI:_E5Z#XPZ^#>1_R9H>/172/,0JCJ(W;3+K)Z;4], MXE+OE)U#%/0M$*7#I1LMSK;3R(56E87;L?)J*+(S.L_ED+SZC="A](J8:=$Z M4K1J4K9;(T5483F%@OH6@_A\=?7&*17ZX>W/L]CN"(M$Q?A%AMH[I,^UL [+ MRR=H#P-$\-1YM\TC]LOC]*%^,P]GZO&'KW1U> L;+==YVX:9I6WXAIG+NF*S M&^T%]&&L;_M9L[2BN M4Z-]9 %5E(/N1?,!F3FQLTO7.FJX_O94K[[_;#TL.5Y+.-%K#JX9(B@=CP&+ MH)('QVZ$B^PDPL"WA0B8(/U"(Z^2C"@G_/*OO@?"]5]Y2>Z3-@Z*I)%7.NV=Q?GEZ^&[3.>]MY2ZD\9TP-]PF^IA>-Z6L):*+? MPS 94U/)I5OY=JT6*3IZ.:-E8ILG!1E!]9BZP^#:;=PGXU^G.9F&5.WH(2KW M%2RE AXG MFA.C-.4N\3CXX)(__8@!1,RGFMZB"F4#&=GX_397UH+U0$_&.[;H)[PF*P@& MJYV54,9Q2ALOO%LC(L7MX:AOW_%LM1LC_29,O]'N9C.FO@"5J2D*O2[]@"9B M;Z@=GRV)_^CW=GE#\0OZAXV44$RL2MT$;]L084&J],2(-V^?*M.SYYY?\^R_ M&CC[CR]O_*B;DGY&+'*<6 \7(_)>JOF8T31BV*>/@TD"Q2QX^)IWY,4VW>V_I!79ZB*)LV.#EI1,SN%=697)-11RY]F92"O,M>V2=PPL+ MDV=I&]E.ER/!?'%'\]P925164J?4&+P-YU;VBB/FA0;MF:NZZX#J&"C=1V,P MG9OA.3 YE+901;;!NGW=\B&QTVAR1 :#"L>/*:PM*VM'0;-5?X// MRS2VG6L@[Y6#?BPOM"LL$1]Q_=N'=V]__BEZ]^[=X*#''6'7-O^<#/\XI-Q: MUER.A5I61%A7X8JTU<"E/H2RV-Z')NZ(')#1LFEXH7KJ": M7T6_JM.WI^^I^CA9GX)U]@,UTO29QA#+VS88M0%/[]CLV)AK=S$&_.EBW]KQ M&-\NN]23=3:8R585@[A%G XP6+_]Y#2=I'W9N78\B5RWU[4XB ,JVE M*U]E.QU8?!:O7914&<+FO_MUS8U]KDI?[&0L]^5\4J&2 M_^/WO^1*V]P&:)^ Q](/3IB$SS(1(>LO,F$TT1S;U\O-A.\5TC13'9IN>+:* MP";+,21+4: B)5;8=)4:WK+_?@] MMH<*1_K.+ZWZOMX^(9<2+)BW@%2O[C 3[=DSNMU4%]I;4\<1+6#8QU[:TGS! M8KM;"NZQ@-MB'P8&>KDD,VZIOP^]\3!9.FG4*]C@6MA;-6?"$D3G88JK9F+) M6YV-6L.D(QS0Y@69;H52[>3<2 BVBK!1\!:OH$]2AV;;#9#26)Q1U"E2;B+) M9P2_ED2$?9J]T._HI;&@0P_O+ HLP.I@YM1;Y@W/)-)!%/I)J@I:B\7>)+CC M[>P*8G?7KVO6Y(L\N2GI]XM)Z?=?> =16CL%9[M<21!DNOJ\MQ9B"@)^,OJ< M%U4C,[IA?:?H*W/;HG:E"6%0(Y*K=,+G\'?EG/CY%45))9'D,)\P*!>3\RBJ M\+^+G5-3]&50H(FN_V04_ ?O)'?M.>FM!]+<1CP1]> 0D@L6U[#F MDHPU-T RG2.I6 %OHIS0J,&-NY=97A,B,L??."'85(%D(L2R0@;E2H#+ALUY M4]YB@]5K9/FNJ+.,@.#[=*$-CAFJ&T:ZLTK#AC2&6$"+/^J$721XM\(JX,_' M%$YA9R9C[\R+T_EK?.G?['+J1+?9E2A$>+FU_4%R@Q+0NM<()L01.1%Q'+_# M^L96FKMIK'EA2QR8T8YYP34VJ)^_3;._6[9 @38Y=@NQ]=%^UCO1P/:=@3QQ MV;8<>P=IV?;?Q$^6,6+?_*&GOH_/RV**;\WES!E/=C_5J&$IS4%QXA3PK+*< MN=F1R<0K;G5=C@H+Z0JFW3?F.3(W&G(UA $B#XJC8A4(R+)J-[$49BBF7NK> M*_;P;(/O)B)30+\L[NFV@\Z1:'-YQQXG36/]:K5QP%"-V_) /[5,DA:]NFMB MIM23H-4!QF>1D\4.OJN:=)07O#SE<*FT!6FJ5.S6 _JG?G %] ]<1V*\$WO( MOIT(,5.7U&. 66%$V)=5VV#22["3ZW3/?K&[F+T-%I;-&>=YI^U)D=G.FDW#B"]NAXS10EGN.Q M74[*8_M5(VHU.^PX'D'M*LV. E+!LHS04R"UM[["CHT4L@<9-AQE:6.D) MAN:V /*\*)MP-0SYCE!TRI"B0^$#= M]M<]&=0^#3ZW\+3GLM2!U/O+!TF]OWDJJ?>^(H4WCQJ)Q[+4(=9%IV=ER+LX M<$Z'Z!8_4XM.,G+D:-%I<;'_1@S3U;,1/$4CN H69X\A;"(JGBD>NPZ]LL#6#.,>^HJ:\,U.1;&[/)>.>FN$SRV MO)A63KI;AC/L+CF]1_:@B(H4H[QH<$EMH!"8Z@"ZB1P[[&51V *#'*-$=[L[ MZ,'1;RRYN.I&O\W3,_LC,V3W:5^FGCH=4/_ Z>YK(RF"RM0OKJ7U]\"!=%4G*^+_#3+D> M$XY?X'Q^$ -'0IM87QI'08-RRD(H)_7$_:NQAR)WA_;2LII?03]8\^[W9SUP MF&Y>0_$+.V 24X.\!M^,,_:D)#!TA:O\+@PTZ0?K*=[9=Z5*&9MTEI%J&@F9 MB=@;?A;D:RAZ0H&E<)$RH:_5+=!+/8+@=MT!!#=",;/,ED($@KQS_BW\"?).4<0CTEMS<]I ], M$+&O\B^\!6<,@9DOOL1M*M\W?1;\HB_@3%9]WU26[\2/;MT]-NG"?NM.^(!O M4TO61<2R*(7329MV\_%U[7!Y\T]P@A=Y5J\WVCRAA&^]!_T'AR1V7&6U++>& M.O<(HRR.4OU,3T#8Q31D#0PN[,^2]^#[25F;V\1&HGUJJ&-P0&)^R-/WLN!$ MU<+4R\2NZ2I3GC!V.@P3Y[#GZ*(NE!UN"#:CB"+EWH5&F.^K:OU:)H=QGTKP M5UTW8]0Z\)=CU&N^W-=*H6X7FG\:6ZD&C>"<@GV"G"&)2.R2V]&&,W4 E06R M>$ @-B7)6MGBON0+O(?9-ISW(/+IB)K'+[Y][-+/P>);JK= WFQ9"02JB.EW M>QCW]=G]3A]_QA^[(<7>&2=M0#05"C3*4O-.5^DV55IBFB*@([?U,:&1/W#/ M<9KV_LEVQ96KD$CY@,)&7E5TDVHRFO$>A.TR]^"_!*5H?GYPV227>G'!<-2I M<5=<386[XMHTYF%-4AMS0(>0O7HY3-(?,%J8.R"PCKW+#U:M_]OGS5\]1-[\ MZNJIY,U?=DO63P=JVO[@$<'YZ],W?"YS[%R"Y8/V#&U2!'0?\(ML>G' :P'S M79F;RRVUH+;/PB@&AR(D@8EB?*$#@\NLMA!DOD=/Q27'(XP$&&C88?5#$-0P M34#D#B9*9F! [D#<]A!Z1.@.!:]*$^*\M.>LK?NNTN45)G[NOR<^!#TF;THH MK\M!]DX@TL3Y.5*HH?)$ZZD)"FU/9R-*331)>N,$C4%U'PV7K';O>GU6-O OE0NL8_KA=WFJ:K;:L^O'G8%IR!]QR[1 M,=+WK5DSTQ7>B%TJUL" [/G9=]U%H2_FW^&A=4=]#64B3NM<()/!.F M[*4RB5+PH"[LMG*&1B$J32JJ^\1)2SB;A-X?8UIP[+BI6LXH:89NE&]5BH3G MP@F5FBBHH>B^KYFWA]OD7A+F_%%;0OAHLOG9I !3L&.QHXOZVC3:^RGT>T3; M6O#^-GY(%3N?M&XWH_;K7L54R"J2BADV)*?FYD[\Z@:>E0NIO9L."ZJH\)I?6!X/038Q- ]I2WA[M7X\?>$A)?%M&,H0;LQZ>J5RJK> M\E>'W532U2JJ58XH5UU1UTNMTX>,JM)LLVBKVO;T@(>ZO8_0YRUX$?OMUYY= M(O295NB)A?CY^*G]ZGA\ON?_CM#C^YO4*7P^I?*;H1<=);]X.1FBY?UI1SWO MT0T#D/+=E%.-YT_&VAP;6&:L328[B:-_=IGJEC[;P =3WM78NJU%'YZ76@*4135$!PD&_&,,F,@>7)K)M/-:O MI:M/PAQ?1[>1)ZF5WU',=:?[8D1,S<7$ =+0V8L%6>P&;L()+F3VE61_7"HF[[)2J M*%IJ$K(G)H@[A/L MAW#H\NZ]CB$-4>F_$$GO@Y3_L?*CVD%&2^G1K7YOEV MC9!QRB)LF[P$9V(U6S[C%YNZ66; 3W^C[X&I)_H^_M*X),VFSSZ M+2KYE36SB:G.Z7'0V!:C(@ZW8,#-U Z6=R\'+C/.7"T4M?#NET.?2?=C127 M:^SC\+XOH9 IR]GK(FL30Z>]G.[ 7N17$-*&[[KND9%L<"&[6:.8&4E+ET%A M$GL/LB@$N1-&=Y(JTP5Y%IN-,2/3%TJ[6'N%]AZ)]K09'QTU.BW^L]\L(-M7 M.2-JSFM_BTLWVGX%1HD5> 5;9=YSAB@^Z'" ):JM4QU&X/:YBN& M;'<>_@6]&^:7:$-.YC1,BTW,,*".M/%=3B\KZ+& #G7=;5X6-3&J++?H532I&VIWF( -/QU*P39AWE9_=X@.ZPMI6W+-P\ ME(!,*/JJ1>IPB'M&B-7&BN(JW077R$?+^0H2-:0HOU>)S935[;2(EJZU=322 M@*%(Z)X@%YW5YBYE0MH-J*#;U%([>); :5NH^[& MSEY0%-?K!R@-;4KA%MQ'30/7="G[2)^67 'E) V]6LBC;C_0L*$[Y/L7^O1V MVAH[+7#FGZ['IDTZVWNZ/O30R]&2/?8@\;0]Y#//CWHF5>;/OWOT):%@G&9N MTYL#/+&7>TA.17P(,H"2@0'7KT^17BSW'''"#?#]7+$C8'7CO/>[X.1!_+-- MZV:?,73TD9VX.GQLCJK]ZO##VB&,'2],:X;@U\,G898 MWB@57K"/17D'9N%-:JAM"[7IXXH"_R)-EZ#Q-F NWF#3]IARJ!3!8??4B=HP MG,'/9M0I@ M4%: =8671J76EIOGBPHT)F=O!.+KL4E8#HNO@/1Z/"$6#,3&I_R]2"!T$Y5M M/"'13VU]Q,8OZ&:#R>EELZL8H-W#\&ESG>%G99 MV@,B%Q3DVCQKJ5& MGHNR_$B*"_ZKFY-^1*W)01TPHZ6>E?62KN5+^3N&K7$6ZR9#5C*NJ,+WK^7? M& O"*!(:)J!)Z>;XS2IS@H6!P^XVB04]ZCY;FU)MW93+S#H!M>6_Z!I2>KP9 MT[N!BOS$(F19)F)2B V#>6AX!CQJU714E4&9C*>JS! ZJLI^XSB$7"*+X4P3?F>1:*C1 M5O".COO$ M@RIW5<#MUT-J=,O\CQ-!MX%E^F!:S&19?8;KI(=S6BWFS84I)/ M4KZ[;$EZ$?B-'M"G!=PQ+5.2*B1)^:W@A@["3K\X9CO,7,$E)$47JOCH3@-R M"'"+:WW7>R,LA(+"&6)L&9FVTYUIE<9G4"QL1-.J:Z>4)--D!R30OR_)X+1T=T$:5T MU1B6)A44]+??1_#/MEAOLXB]:60/O-O;/.V8=A/!:SA%_UYQM$UZ6Y211199 MQE0!2Q[[P6IH%40UYKO:ZLQ%!R M,R(-]])N8"U-\^/K!I>H@JLM M;.1B#_@N> M+E)"B 0I?DEQWKF$Z#7Y;"T!7LN\#ZM1F4G MY4T!;\_T1N"8-)J"5/13KC(LBHW949,SFU&J4!]:]P6$BDU5C6\7W:<(NA=' M.JVS,:W:I)_+NL%L:=U48-*Q5 1'+2<1Z$QCCI!J[^Y!1W$FD2B_]JB,7Y+A4F4T@7'&?D7?21Y8XG^ MEY/A3=JO$<*%XH,%IP;Y:T;1 I]/5C&A=BT]^W\9Y%/Y"!S[PKV8VU=6.(U& MKS\?;EF#SII,!,:C3I";,%TQ##G-R[N9-8*.[IDHIQ3G5$;QD+4'IE@:&[_BKR[*=7M]YQ[564UE?2W MW#FJ8AY?MH#MS4U'-Z$W]:B9"';R%L&K\+.W:JL2/,3=AU'P-0ODL5\ ,5%. M4K0A1J D-4)YH["#I"!\J7M5='(]TUE8\ATL%!8#T,A>K[*<&(^8@/V&(]H5 MMN+2"&$*%*PH2N O2E8'E2I(/-]6M$B4K+;=7Y?4;!*D?[0!GPO<@S:1EBK) M1U09"&/FI"5\>/+#K'>;>IL4D],8C)!0"/X"I*O)_Q2>)G,0P?MNBNF6 MX4 M=RX7R#)I=& ;5)%:WJ*]I4N/#/FJ;BXUL0UZ#2YADJ>.0_)XVW,6N\TF]Z[@ MG3H.X?U9)85DS%Y3/].1[S!,AC6!.0.8)Z685,=#P'*1K&AA MKNN2H]["0L2QZIT6T)P8/VY=CIE<3VMX^I>[>E'<#>D#8:YV/J@4.W@8GY#>"WRB+21B/EB'K*=>1O/1_X'&6$+!N:&0Z]^C:G)0[L3 M45-*P4U[!&Z?H^M<@? 91(@A1O'QI?1CM_H;[#GW5R[V-8V$)B?[QS0E8C)G MI0.)+[.P"PGO\DV*#<@QE&%;56O>OSUU=S:&,!#XH>91;-6"SX5Y=I205G(S MI9H(Q1E=C?9,R:@.DO8[DVY#8XCX6 ISM$AX=*]3>*:9>,U &;7B*#A?Y^N- M>!_89"TI/>9^J-CBML&T>_$\(* 4 M*9BJQ=2<'J%YNVVN"KM4)#YWK,[0JY&] M:U>K9^^2NC6[ T:1%DRGQYBB/"7<1Z++.C,8!;EH6#S9HMS7?U48&Y,_5+7( M&L/-8-J'H5K#K#+H"HQ($0@B3=:@7^L-)IQN80VS&_E95J!RQ4J%)>B-K*;[ MW2(OMJID@';^88 M0DZ=?>Z]P-;9L+J76 +.9XX#AR4I\,?!@VB-S9!N/;)! MLC6VU)^3TX!5J;-,QZU MWMVLB55VVY0;&%6ZL=&DM(1K$)RHV0CZ]9OO[X63\^-_YZ^?^^#Z?7#]?@C/ M5DF?/RIAM$#7H< @_!#%E0B#$\:GC-.%G7QJ75;/G#!6 FJ#!*&[Z$1Y"=>C M:UQ?T<[NHN_';CEPC\1<'_Z:44CU *U[[$/"$?HQ4#8IZZ?34TX4AJF)$JT* M>52[?8,1_D^G@F8H;(AD 7A[^:'#;X1@KSJEJLQF/74I_]@MZH7K;%&B*4! MN;*](?C\+KK#.+<]8K5#NWXXF$#D#4XPP=L4W &LL*;?/F9)2QS.7.(8 1?D MSP9>V.&Y0'<9%W@)6KU@E$\0$&*C(/A>[#O"(S%H%AM>LPV$SL$ #,OL7V?? MF7RKV9>.4]2;0YV)F2=QG[YDU,)_A!^!IU%BS.*T4[UL4;ID0V?$%HL>#'I@ M,'4W="K%3Z(/:9HQXU#FV5(U$@T)OL\S6%/^EG_=/S^"IG3V#V<+0.1NA9[( M+@R>U]LROS5FJ EY!?7\KB!>C^O*VS6W&AA?M8C$7^ MJR\+YUB$0Z:;:R)VB!HGO'M'\Y-$M>H5,88,F\YZ+=:2=Q*S >6*+G]'FX%D M-^A4,M D$T%!6'"'6@0^APVH(_$0:]+X#D^7NJE26M68^%HZ3"MEY3>UNW>/ MIYY^+!,@SAZ]*[F)+KS3X-6AEEQPI)(U8E?P-&[ 0J6J5X-Y17@?>70&(=@3 M<':VDA?UHXXBYE;4T-<@$@5T)4\_@%"D%N(=A"+J2RICT#%(^ #W?VATWI4M MP2=O@^8+_68Z;W=O+";@#(,Z[9U%JBL],)7\2$3@TX1V<"^+7&+!M7DAG5;& M0\GC^IPS\OIJ]/.03N4\_!4+N%:$C=F%VF;HB BWOR*6#+W?J8MF&DM-.4=! M_':=LCR0BI,;F';QG%.G/YY/['%@L\3#N\49 <=HOK8T'MTNP@AHM)#<_*%R-%)U""+\2B,H&7#2/_S_ 16"!8!3W Z4(R/D8!T M TJ&1WW#1EJ:D>-S,I^ADM(^#17^>WR^'$)8MCDY4018<]S0FQ![VC5>& MHCCTB\A1.SG')CV-5\_';L-!W02.-!9@'T3+N!$'JX/]&EAEU*PQ"B^:T=ZGY- MK&9"N-X4B,D@EU.GJCKB0I38V!-O?_:=3":-82Y[!XG@>''[ZD$XH M0XROY%2TAW%'=!A="'^B:EUO5?!N=KK5TFGC_/NJ+73GJD$F$-SZ$LR_11;% M)>-=E,-H>-2/TQJ9B;)ZK86+B!TME&36O&,G%65,]$I7&Z"%_AEI\4:S?]VJ M?2U.GG83S!$2D0/VYB]E8R. BYVW9MJS8^IXCC,.J#/>YU@PRK")@NARC1L2 M]$#3E#0-4P!I9BXNHN 09F%;4$AM16SH=F0(6:T#*IGFYW7]'N^!PBY4I2X? M E6C+0F07R+P.\G+VF!0&OOB>#ZV!LB+Q'1TG?.T"H]QN]DPM)VCLR 5;@SY M4+I:,W=TUW=:]%M_+:MV@T@?CDA.*=T_%)?K 9_\ M 0%$Y_X,?": Z.6$ 43/$0[2.'^WI>5N?!#E.%$>(S,C6#=2W$]V1&IZ:5,- MIBZ&06MLA>>=I37L[U3:A&F@ GU+J;F3;,;^&KS)+?_4@OYL94NTJ!"0VNRM M-(GA;G([N0=8;LCAAA:=D"_ KW#+404;9OE,Y=.RQ2SSG>8\V/77EYAJ)(-8 M[494^VI4J_ C6QWLV9_P H?>0"?*!\IL/GO8.J/H]70M=EW\A_AR0R^DX2%R MC=7UR$\B3GS@VG>88F?LAF>W(\W%#=8B.?S\5 2,Q;,KB+H631!O40R:D MFT6E$CI_E&5NBV;'?*F:Z;Q*;^"&5$5E^^*$[P;F65X2,_"QQL[EU1612$\. M:3 9:_VKR4Z]C\Q&D0TEZ_KW@@HNWS=*6EU=(Q0^469;&L3]/K8P.)U'2.K] M!U&$AT5!O$=X Z/-KWF#S]]<7/SAFR:=7PS;4_^Q*)<[^,^ZV>3?__]02P,$ M% @ Q&X(5SYI$T[.! C1P ! !E>"TS,C!Q,C(P,C,N:'1M[5EM M4]M&$/[>7[$UTX3,(%GR"V#98<8Q9DJ:X@0[3?NI<]:=T$U..O7N!+B_OGLG M"^(X;J 3 ITQPWB0=V]?GGW1@S1(32:.!BDC].B'P8^>!\-Y2:R2+A>(7J8%6T&K#!ZD^\DM2R0TW@AW5=@;-ZGK0=$X& M36B;T&2?)(1VYDFO%_3B;GC83<*P&Q\P^F?8P*.H7IW1 M9B'8RT;&F9$76!R1A91#VU_DD",8#+U M2!F,QN>STY/3T7 VAK?OSZ?OAV/YJ>#:>>I/?WXS_@.%H9B6M(&BM(K41 MHP='I/-%1$YSB&6>L]APF<,5-RF8E,&[DB@LDUC .2ND,B 3>.._\N%$:OP> M!RPU0KZR^_<5=A_ 6CO1*H,PL![!XE4SG"!84H*+*#?AO!MB.X!T1#P@4*;V*9LKA4W'!,FN04QM=Q2O(+9F/(N-8V;ORU MFA0G'5*F&$;[:615#G5@>TZWQ B4QHY$5S%3AB<+*$JE2X)%,-)ZM9!4X=E" MHTT7#5%SDC/M3:X%6\ P=MC80J.8H)/N87]CR0M"*:XA3[ $1SZH)X-C++F) MO/#PT?H@].N@O[_W_@HL8>!W+0PS!'O9?$DIL!-C["]AN^"F,Q3[J^2*V?VL M;166-NX.5Z_5MA_T/J]=ZDM7C.4Y] M1EQ)<,D8PNVP<3NK7-_4EG"[9@K%M"WCGI43(0#/831$8)%U@775U=@F/"=Y M;+]'BY0[VW8KH%8IJBZ0N&.<4UU7?KF9_+7*5GCAW5P=W5-FR%RP&NBY5+A, M/,1;D$*SJ/ZC3[DN!%E$/'>HN4/]Y=Z?2V-D%B%:_4N[?V(BEK=(UU65^)82 M^$%%"PR&8VCM>2GVG:AIZ+JLX[>#WD9IX(<;9?]F->SZK8/.-S?;"?UN;[/X MOYIM=_Q.Z^!.9IL.7U4KU'WN>MH>Q-)J[*67C7;CL[40!1 ZK=K'XZHN$_G: MF59Q;4]]RM#L''_>DE4W?O_MYGK^&%?!ZGWUZU@\K;S6V"CF585&62RK;14Y M1F*U&D?#\J+4!@XK4G2/M._1+7=$".GIDX.G(F7/=CH'?>T^X;5,D6WZ\ O1 M3*S@=</3AO6,Y,DZI8(\TB&X3,M12E63^R M,8B5S^IU8-.]AOP'4$L#!!0 ( ,1N"%>DC.M4,T0! -J$%0 1 9G-T M PUL_M\F95(B=&TD&A)N.S^]2N6&?%$9$1D9,27 M__,RLX5G[/F6Z_Q98K:IZ M'"*:UUH3RZB.&IHRUC3%:(SUL5YOC$U)THVQT62?G09D?F2.CG]M MO015'QL_5Z9!,+^^NOKQXT>-_%Y[V'$SG?!5XR/'IE%! :'*E2+)> ME9I55:Y$[WD9>[9I+5]#?ZVYWA.Y4ZI?A1>7MY*W_K[QP1\JNU=NM5I7[&I\ MJ^6[FB(W-FY>?[5Z%=T1/X -6;7]Y[J:RN37PY9M_:-6(R M!/GJ?[[=#8TIGJ&JY?@!<@PZ^_O1Q0V*T!NLCRC]9G);7-R\G5X>(Q^O"![L MOOLCE"E255*JLA*_9.%7GQ":+U\T0?Z8O22ZL#$AWPNV;R1_7-UT;2/GZ><* M=JK?AQ4B%AB9[2\S'""!/E;%?RRLYY\K7=<)B+A71Z]S,ALC_.WG2H!?@BO& MGZOV?_W7?WT)K,#&;N^9K^XMI/0M^\&KCGRNFY<]M M]'KMN XF [!>KNF-V M_M$P3.^Q'Z!S/,L+OOP2/>/)SQ:@2^7/0C+X) M6]<=HI5,JIEN;?14$2PB"I.J4J^T)\CV\9>KC1&^L\&XMWT#V;QAYM^0O M_O(+C4J;SCBK#SR0VUUS\Q/-2OL?RO$?Z#F$$:]=\@D/V7W'Q"]_QZ_+E[F]S+%!UJ>1-2.W#"9#\E=_@@QZ+:0Q M&7XH;3]7HG7@VEQXKV3H\9CK*H%/LN%J;P=[0VYZ)M]^QG<6&ELVX<0P('2A M'!],;BV'#-LB;'=]*QPVD2_?&MNXY] /L+G$XVFJ:J7]D?#_I6,8W@*;\:'A"2;W&=C?H>"H3K[VV5I%YBFPI?8Z(&KMYXIO MS>8V5=;L;U./DF%#E]5>?).\XFKS'>'W5Q^-QN"["X_]QA:5ZXBV;/94:.*_ M8R:6\6^627^?6-@3V/OQ3J.DV__[IKB^?;@=_VGS[7.&^/@WLI1Y 15.IKFJ MDDS^+WYN=6TY3'/MUGJ5*O;-*_'O\4>N-N:]FPP*!V0(U_0@FEESC0CQE<-F MMG"L<%K^%!'N+V+@=$99=C%\17XM_I^_832F5.TJM8^!(2BV8.&V2 M(C)FK[\/;Y)32>.+2DJ\TJ6E$EFJAA0XR^D1^XD,:_W6^U##NMZ1!-UZGO[Q M!CLN63AWO?90.&^\XFIS]'OYJ9^:G]$L\!-=PL)?3?*QE[EM&5;P#<_&Y!.F M-:/K&/6#B>E\_>"YYL((!MX0>\^6@3LO%I'V>(V,KH:/?KG:^<;ES)S0\F.'0U@!T_&3!/8\:YT',J.#*6C53QV1'\LY=HA2\ / MGA8/^>0N:%'YD<_J(9_<%RXJ/_)9/F0>/&X>]#8//C4/^O+DOFA!Y.+D3F"R M&(N<)L;R9FHG=ZB2AH]2!-G>3(T[YV2YAL0;"+T_%G1_RIW-78?\ZF\N->3O M,]<9!J[Q>_;+S69@4\T*3MQY( EIWC%-MH^#[ =DF7VGB^96@.RBT%_ASN-( M2/]''"#+P68/>72#TR\,X;ES+1(2?N2Q0/8K4S>AYBD,[;ES(Y(J'<-8S!8V M32H;!%/LT?L\/*5O>\9]QW!G)_ W3L2+D[L0)^;%O>O0&7FN;1/]TR=S\[!_ M@FCABNL<+=?QJG\\\ K[C;3BK!N\L"XHGNV9S$V M>6 4N,/%899:=-_YC/&BK&)T:M'=YISB19G1O^BN\[GC19D1ONA^<@[QHLQH M?W(GN8QV[XEX472O/I]X46;D+[J[?BZ;1\DND*46WNW.P>;)DOY%]Y[/:O-D M2?BB>\/GMGDRI+U6=.G-P>;)DOR63UJE M5G3_,Y<]LIQX573_-/\]LIP85W3/-I^MEYR85727^/P;FCDQJNB^\QGC15G% MZ+2BN\TYQ8NRHK]>=-?YW/&BS A?=#\YAWA19K0O^L8P!_&BS'A1=*\^GWA1 M9N0ONKM^/ILGLV.)>N'=[EQLGNSH7W3O^]^Y'+;*@U%% M]]-S.VR5![.*[N"?*ZB28:VG>M&=^CR"*EG2O^B^_5F#*ED2ONB._;F#*EG2 MONB.?-Y!E0QYT2BZ5Y]#4"5+\A?=73]_=FX.Q3X;17?4\\K.S8-71??-\P^J MY,0X\-4+Q*RB^^JY9.?FP2C^'?RO"Y]8$+X_#%\1,8IV'+Q^1)8]PL;4<6WW MR<)^QS&C8OOQW7N8MG M3>XB3MS#8QA@;,>@("O;M[#!Z &K6C$U2).[J!A A##!D_: M:&)QG+V<- A$%(L#D7RT2.LBHHK%%-_6183S"BHWW,71P,O;@933E/IO<1>H M ^9_S/P,SW.WN(L$UXW0B.8> 6U&XGJ6L M%S*.UG6]N4OXCN]=YS"KC1\Q*V14ZMP$SQ#ALL1=D&=U#(X0E2JO[XX5O/%1 M8K42JQ]ZR^GC/.LH/U.<1Y:X"_3LXT_794O.V8/HZN'<43/C#K>A'OZD)Q?^ M-H>M)1/^!%\56WF$/$:!;SS+HHO,-.>CI$#G*U()+'0W* #4YY-K)$I=A M'$ -UUF LL1E* A0P_4^GBQQ&4X"U'"]PRA+W(6C^-MEVH/A]0&4^NR@+'$7 MQ0*P\&O%! [!P:[S(W 8/ 2SE0 F.1DC"G!)AP:)LHA8Y'7I9]4.@@Y&6MT=Q%'OEG55[K M)', )/RMS]Q%Y D MW%D&*G?Q. )=S:)6K1HW%&'@#E!9D%-$K5HH;A+QDA.%HG*71P.,,*=0<)= M ! PPIT]4NC(X^69!H6./E[>*GVA$@,NYGFK6 PC+]QP&SXM'&XN+MM3O^BX:5&95KJ@Y47& M,')"3[UT8N.$V?%HXW%S<$VO)P81EZ0@: I&!?) M8=.XU&AI4?E5[% E$[*80WUGOB O#*:N>?J 4QX'?QK%#A#FQ*QS93@M'"OD ME+.@ U^R:A;J_';T#O)C_(+X2OP[?<-[K.R(1:C#^G?9+2_RM$? H\%D.@1BY=UOZXRM'X:G) M;>2&U\C^&B.4JJQ453D;1G ;DN$J2'XJZG,;8^$NWGPJ#G ;ZN KK2H>1,?X M8V'Y%EUXUL;Q3^3\ZKH^[KH]0EUO[ED^]N^"DIJN36X#+J?3F0"48X#";:SG MM.H=P'(,6+B--0&7UKC$;9"I (Y+IAXDM_$C7AV73*G/;<(.SXY+EAQH<1M! MN;4<*\!WUC,V^PZ9X),UMG'']W'@?WW]AO[C>ET;^?YF#LP#X9J3W@JE_=L> MR2>C>![]]5_8>IH&V.P\8P\]G2"SYE0,YC8R8@;6OLYC8.=#9V<\0,;@,L1S%CY"$3SY#W.[4UV"_W:(9!^M88 MSFV@Y(P,YX@=W(8BCF-'[/&^?D7^]H,@ARO&-VAND9Y&V\5&N$$DY(LZ9,KA<89=S1)PS)7^Y M@B!EC#AGRNYR!5G.'W'.E!DE"WR4,N*<*<%"/19&Y#:,4B'?Y5&=1 M9&YC, 7B73Y',Q29VX!*@7B73WT)1>8V_G)G.7@PZ7K8M(@Q85@V&=SZ08[[ M[E?D_'[?Z5J!]2=Y./SM7X29_BWRGESV.V,W8:KONX;%?J%_'DPZ,T(D ]UW M"+N_?AO\BCS/\M]Y(JM-Q%U362M&X=K/!(6;-V7UZ1L\#OK$+/(6E EK5+QU M%UXP)=1P3&(Z.^8C]JFPF.$PEGME)\8^ 7ZS*JN'8/_-K>FPSVTH"K!?9NRO MN2YOX)S.=>$VE%.XQ&;>#:G\WQ@N-D4LX_O'3@<9X4M:ZX:[C-V MR'-;55<9\>.K\5L.+[RJ*-Q&0T%V+EYVLEPD%&[CRR4'>AJ C7ZX!9$^CH#. M;5R]Y$ O,Z9.OCF0=..#SDW)9F['=(J%BYRTJ,I=M&E'YN WR[%FBUE6_#X2<1G&>"X:<=R%?2C$1E9@ M$Q^V[YC6LV4NB%>Y1-^-Y6$C<+V2LH/;=,J\A.1$>:LJM^&;-X1F,9L;''9= M933^[E@%2M!7(H#,Y)') MIA?4KSVOS.01&]:Y=8.YX4Q.>5,ZMX[Q(PZLL#'C@XVQ7-2YC03PP9:X!>]&_P MQ'*P^14[Y(<3U,[@P0^LE\$]/VW4))>%O0SN^0G9DM?"7@;W_+1LR65AY\X] M9Z==6>.&J&>8OY;:^?WA\?&TJXGTC:5 M3=7@S@4WL75]AY^0W6/C62?LW#O!,=M3$98[)SH_PM(B;JVLO( &7T7KG5"7-G&UD&V__MO#/EVZ:?^??\^) MSG[G,Q\^DI.?43 _82R7JZ]M4:? O(,S[4W"4#O MK[G>TY5"YGX5W7$U0490G;ANX! V582)Y\X>\<3_N3*A'3P$^J_&_M79OVI% ML"WG]\>/7\[>3.^K"($;O]H@",)>]'!\W7!MU[O^B\3^]WE"X%"=H)EEOU[_KQ'1 MJKYPCW\(C^X,.?]+](EC7_4)@";AC;[U)[Z6FV3L[-G*S0 M&7V_[X]Z-\)PU!GUAIMCYG"TPU[W^V-_U.\-A<[]C=#[G^ZOG?M?>D)W\.U; M?SCL#^YSG()RT!3^A0B,G:? =43AIBLHDJZUWAWT#'E/!(Z!.[^F4.2%#;># MQV\"U2:.Z]PO6!%,(=)81(RI^B5"[""J6NFZ?^,:+#F+AJ8J3#0GY(:V+%7_ MP<1W]9;V(910-RFQ*7S9D4(ZB!2?:,,Z8>#@GU(-/:#-[N('QDS_5B6+!QL(>^AS]/JQ&Q!GX%HG7WC&7F 9R(Z^PCX87EXILYH4 M*K2 J,W C+\<7:ZQ2U>!N7U-JVFZ_NY5J2:_>^VCM[;4FJH=]MHK-N)PU(0P ME.8_5\AZ$STP1Z9)Q.M:F;\(\B:U;3S9HDU(EI-C1WN+G9#XB27H'PNRR&// M?GW$<]<+R$),SPP'9*U[":XGU@LVJX&W6 H9\0+^^R^MAE;__*Z<1>1.3TD" M[_.+("/CDBA"2!7A8>'Y"V)<$:M"&&*#F@[__1>Y+GV656):"++^R?Q)<"=" M,,7T^L*S HL,I_=B3&EQ+Z%C!/2RW%*U#3HQZ%TQJ/&%0VJ.Q#C!Z/?,ZB.NA]G3U!MK]4VEJDM+52 M*^T564!KKVOM8$672&U37UN(9W3^H840,K'A>LP)OUZ09<2C=U&<4OZ<_]_\ MJ%%I4W@"-W9QHRA+>->=S2R?AJ6%6XLLX42]CK%WG< R"F/8].'PV5AUZRQD M6)4E3:V_I[P+8S;(S5I+>O_RL78#O#;9:R/C*;XA0K*FS&D?NW4C0-8K;V!% M!8\8 8+OVI8IQ((5FP@2-1#>#6DN)=2:/0F^9Q!X^X%7I2:\5%>E?S_)M2=K M4A&032P9>SRQW2\1-K*^T$]^1*K'+JE?9=[6M-N'5],D&A&V_6?& Y9D[& MH1_[2+&F]@ MV]H2+_6M=$5HWB]@'YCK\*I=K]JPV NS7FIZK=%L9+Y4U,E;UM=-_?<9_J>57BL M46D_8,?Q7^UGY%CHX^C8 7[_ 2)YJ0P;H9=^M'L?IA!NVN[-2EO1J[*J: UU M3Y0RI5B<;1%]NYGWSAK*P$N7SPU(_Y0@VI0]ZI9!OG,"[T!Z]6O"8TT8UH3> M;&Z[K\3JVL25<._6?GH/,8<$HHJX+:C76B=8INJUIES/?O%3B??U_J.P^.W5 MI1W3]+#O1_^A/3;E6(^V*FU-UH5?J9F'7H4;SWK&;]6IF#C6LOU!99E)(%7: MPX5%5!B92V9?ZI(?!][(_;%Q#3/L.O =B&EB.<;CE M("M8:9(OJ!N-'(_K_6/+3B(E*KE;:L*\H6NO:[U7S1[L %+J(%-0GF M'@&E-4>V@%^PL:#%ELB?R4J'_?,9"+S1A\!#H/C8$4C@?I_IT^&"055@Q\-H M0Q0TJMZ5MX+P4P+M1T_PV ]3UWD3/)?U2KNE-*NJMJW&\\OJVPN)D*JKX-Q_ M_Z6IR(W/OA!@&\_I- 6'S5,4B"C9"PIR 1&R$AJ9'V2-[9I98'=7\3,GM,D\ARM2.J^R M,F:RMC15ZF$6 2$HZXTD"G/D"<^T=+?P5[)HRBDRMP[?5+D@1D2R'8KVD@N- M2OMV.'H$8I\&]7%F7;C=_#8L0;7*FXA$DRB>SO"F\P_A%]L=$Y]Q2$Q@(Q#H M$0D<['>>$SM/NTY:'7)"Z]RTIZU[#1ID'[\*QA0;OPLS>FKDQQ03&R7,^UO; MNOXD_Q0F5DV1+TPLF]@YR+;)'31-DIH_?RPL:OP0FV>,HQO(BU/F3 HFN4J6 M3WKKW,,&9HNIK @LO=L7/I'WT21%?T$6$'_JTIWT.$4QF*+@[2Q^H,VATG&& M#T<3^4D4D&,*GY2UV8X)G,A-X_]0V)"'V/WD23J4Z&4TI]87XG3).?(#H24) M)GKU:SM2TQ)&@;H+SR/O#S-2J<()4+#PEP!O5=J_8?\MD(7HC,7ZAX5[-_XU M2N7=GR.G?'2NJ9Q0ISPG[)Y904!0PK2%YSI49=JO B;J\U7H4WE'!HL\W: MA3E[;X1@]8YUC^!Q0>[4))U"G#CHB_ 4J3"LCH1/?N0M**I2BVX)IA;+$9G3 M')%3BT,XXB7 L?]3!O!=HQ4E583FY6D@Z0#X"NO?/P+$K8] ?$8P*LG!2+B/ M!)M,!0O(, @8/4011;GC45VU\Z\"H61UYP5_1E!,ON+%RD2(3M*+5#63UQ%5 M1LGV)#QY[H]@&E^N$4V-V=A,6JR+Y8*S6"R-+"EDFN^,D%V6/\>W[;WA_?'% M-U+U'-W\SECC.RTG%#9B*%>5>,%97V5JJ;!3F+B7HM>:FG:"4)+6.NZM'X:2 M9*+Y3I#;JA,'Z+AY?DA:I5;7\]BT74]%R&=-O:,2'VKB-:D._\!$6]BIH+.- M>YSFUA3I()N6$_=>U>K,@-*7&EWWFKUK=5\ MZW_1\BYDFL/$IZ#<[UJ+8Q* >)R?(1/LG5\7/OF8 M[^\] 7_ $?C$\I [+$Z+H'R@THLLS! QTR-Y>Z(\^6SW2W@QS#0C9U=6AF-;V9ULPRD6?Z DV(LLSW MM@#53^BGG6[(IH]]EM#,H:\I@'/L3[%MQS@1/A'NFV$]Z?T.X*[P1OCO;]C? MP97W[HY#$BP2)ETS*MX,5H';@DEG.*"8C<(<%7#J+)S** M** >EB\1*; ]+/R@_T1LN&4A-Z)V:)$]Q@1_BCQ,;)--QB@5(BZ&1\5@$3"51W3?)M^)2VYJ%?: MLBQ*+?+_J\3%>*AM(1QB+*G>=OJ2$>YO^COW-ZDJ#U\A"NYJC.]'>8Y%Q'HA MOKD;KB-1/06/?M1?!^X\DV6)Z6]+OL&*#M/QY^,S46UEI M3[@Z]C#ZO8HFY*/7R/Z!7GUZ[K6$%0D/D[WP..M@..H]TKI^#YW[WUBQO^'W MK\/^3;_SV/^@4&'N)0=VS>FCH@W]^YO>_^2H$(]9\@H3CFVJ-:F>_?D16:LU MU,/BL=E[E#L<.H]RBJ?THP>BUC+*NOOP&,V[DYM,3N:I?B3,7Q W8Q&F'K4Z M_G) $5R),*SS.!+Z1.TNG:Z^$YH;Y*U?KM NUS?L9?U#P[9IXV*G/C@ M5O1\E=X<5DV-_\*$\;I*__:^\ $^$^!3):MD@&>"O(Y/=FR*Y8)< SYW!H W M(!H:T!L0U35 :$8(9>F@Y$&'!JZZM$\-/?Q(HV)?D4T BP7B@>/ /PJIV9R8 M9CP'=F?%;O4=5A9>DWR\TNU0(]66!'HD(V"UWM4CJ^6.AFP&?Z&\H] MCRWY745L8&7A8"S)H*3#RK)<6>H?YD(!LA(@2S]T94'^5+BUW1]@K):&\?7+ M52D HDQ U#Q0>[!DB*EKDT_X46Z"T/MC8=%6AZ!-R@&$QN5JDRT#I07[1ADA M2Y7I@8" C"EPA7=TS:[])- K9>%^ZS+URJ[M:$4&TR4C9#7JT7ZT4A.^(0<] M,;6QS)N\L7QC$7:7H>=G.PZR7WV+V3(K;4/549@33^]YQ/["ALA^6<%"TV]! M#T5Z2(6L@ZR@U8KTD%H3_D%/P%@!RXIF*H7\P8Y_IQK)=FD[>%] 8W<1%^01 M'BW_=U S9<&" N;.2LWH$.?-"%I-)5(S6HV:+8%'V,E4S(/G&MBD6@5T2%D8 M?8$Z!#1&YD#2XX3R?DT8L,.D:;/)05EPR.,+5!;O&QP-R(+,"EK-5;[_'7Y" M=FAIL )\8&J4AL4J1$56VJ,)NSX90:LEQ]JC4V,!#N$6&8'K@>8H#7M!M%B(C!?1,:FNJ!-1&61A^R6ICRSQ18+LWLS(=TFHC MYAMYEM@E$TS,D;7M75 BI>'T)6L1@%$V,(H+I^BP#5-F'E^RJM@R.#38QLT, M6W&B:[TF]%ZFUMB"Y/@2L5950&TLU48=MF\SPU:KTAX2-J" N"2@+TK#4_7# MFE?[>B!$%5_E!AGS6I%>]OL:TXI5''H'*T]:&EG)H@XUK?>95R'JTV%_JQ#M MGKK+IY3#A&-)D.9=:8]8[656L(< W@\5MGU!_<;RN? Z5,K;RO#*GF4S]2?.=FC$#M_*C1 ;?L MV7E6]TCNU/=PI[[)G>(6Q.=E$MW!_4WO?MB[(5.X'P[N^C>=$?GE:^>.R%Q/ M&/[:ZXWXG\6GOB,$4W=!WF'ZHH!?#$Q[PM-&&(*) K2LF%68$OD-O:8TFP7I M6"I+1[<6S6FP:DY= M(U% AE+)^. KM+T?UMX6!!E43F$-!&/!OM!2Z+%C?8 MP+,Q]@157M)#V:!'+GB*M!SSZJA2I$4VA)@8A2+PI^\.6IA6@,V?LH79021* M$A@;(^/W)\\E5E(UHHUA8$SV]QBM.\/A^L+_ >WV3?40^A?R'8DQ M,&'_XQ$#N^6MN_ \H@0$Y/N8]7,X @QOYGP4$XKPCHP4@L#^V^(:%;1N)$VP M->@/^(^%]8SL#:1_O3_I,V/3RL]Z(:]UZD MM:=4L=G<;KNXV4?M&,[$LIN 0R G("?[Y43+04YHQ0$B)PI'RB0A;4BG3B8>AB9(LRU+H> M/5.^KK+K8(/GJK)COKP>(5$-8F:WB"&46D6#F#QX[IR,Y544R$KH!"++7*-):W-Z4"D,ZH$CDJ?>CSGT0/G3<S!SR MD\DPWXNMB2VMR9)$"+,^\(O '2[J#KXNJIG$$R\O9"HHZ0#I/@DW9+C#B M5-U)=4%^6=_5S]O%*+G8[@MKQ6S:)9Q))4ZOM&5BUS52)PS#5A''B-H7X

LJA)J6UB6*$Y!L^>%?I8\+!N5V)#S2IFS-%B7 -'*[*EA,@ MY\D:VV\R[(Y4R!#^R$@AWUKD67QG/6.SOV11&"5/GC*ET3;8LJCH=8Y"%P"I M,ZOI3"&E2P12JMA4(6V@<&D#?*]+-WB"/=I?+$ O<6 O7)-:X"3DNB;%G.D[ MACO#(_3RCO*86"_8K/Z)/7>'WI K1$$T%5GYS)'5!U Z\UKT$92V($/W]WER M,"_-1X!TX?QU[UJ>Y[WK&$3?LK=?FF9),OCYX\*!TZ MJ6*D]0=T6=3KJ7/7$K$E9[\'! L$*V&J=U+!HG48ZKJHREGE IU6L$J4T[%[ MR;[K=[[V[_JC?F\8-ET8#;I__W5P=]-['++X3N.ST/O']_[HM[P3/M88K1)N MFNZ"5G3;X'3>N2!)AU@B@_#CRL>VA<:6S1K!0_GCC]YQ.2&I97G&.7IEM1FA M[#&4<\V\N.1#"*[C#J3IC4I;4\56^L06_@)M(!EEE8P#"V.FDXPFD8RFV."J M9L4%;JU[^!D["PS;Z7FN-;O*%-Y%!N_KD?+58B=F6G6H85QF8!U1_S(EL.JT M2@RMVI?5$7N.@BP%4-QD\?461&\3G\=S;3L\1#^;V^XKQL(8.WABP09]OMJ\ M%['C$;-SQW>KR,61$B=7VL12DE)K.4C*^Z#@9ARK9KX@7<=V1)W^ G9 MPR5KCM0G*EVDR+PYL@H!36=:I+)'D\8?FB['QX@U..'7PF,V!E7BMNL\50/L MS0@$QK$";\#AP%Q]C3O"E!'AR0UA"6L^-[<"9+/Z&(,QF2DK;[0R$;?DC-95 MD7@*P0*"SNQ8I$40K:.B\)1'?CF6=G0F(S*NUS(DP*;.>>>8&4*I7?0&$2U- M;"E999""3#);!(U=W3+D,9&G:7 M7&5[G]^06IVT*NV6+-:UK*H^<%/F'0!X%KT2+7#(P^%! M])+GX=R[SI&>L5YIUSE+G@! Y9^*'*/ID*JJ6:"I*3$T-5+G5D*^SAGS M=?A=?X:!:_P^=6T3>WYH1/?&3KQ'08,TWJ.7QP]7Z4W7\M--J!< M3H.XLYE+OTK@(PISY G/R%Y@X:\?*,. GG;])_W@ZI6'J%%IJ4;EC]7[>R/5SC]2I=*6:M)V.LO6'T0!+8*IZQ$N MFL*[D_/I&/P4\V*3\#O+3R6=C_H!Y7#;&7G1)9I<4,2F[$E.DSP:6 ME!IZ8E8EQM%Q Z/'2V119LV?MZ,A6W]8\L==!'Y ^$"C9?PQ:; :75*"--BY M_:9<%UL[#FZQ69V:DRE&WV2C;S3J8G/'H2%1(&^?8_++,[9?EU8)613!F\FK M,M62]VQIV^&FT$)3Z7,PP>7E&"1[JTSM TE+X@TDY]X_RI77#\@RJY8C&&%> M'FP6Y7H\D$R>O@/9E"U])TJ63!@=:A&W1I/$E@Q;1&7&TK[#@=E@B3B>FBRJ MZ7.X86/H"#P\X@"1/YH"1IY#A@[;0;GJYY@=O8@;'<-8S!:LZMH-GEB&E320 MWZ*YM8HFZAHY^RG!MWH&=*.*03'/2MAQB4ZMO 6*9Z!M MZ?)<@$8&3NQDF7A;V^F=N2#MT@I,W=6^UH1;XDD1;4]9BYS(Q]J9TY;W'D>* M1L?\B6N&%OQZ%F*/<2JQ',KT&(,BRJUME9]QX9^B6O<7"[X]9G\&X*-M,]2& M*#>RJI3 6??IPKH$-,^>W$2;(M&<+XO PL-^D+<7<+&BN&<=^&8YKD<$L!_Q M:9>LJ96VFE[))V)$@T$I\A"6G^D$@6>-%P'M&#QR-Q?KE:0F-,;TT!/0T]>TAB*TI81M8G_@ M++"MASZ$WCJY#\&9&\'QVC,8=>Z$NW[G:_^N/^KWAD+G_D88C@;=O_\ZN+OI M/0[CM:CWC^_]T6^G<"L.M#-"SERKA)6FNR"X#&V-%.8@=_G*?SW2!$M'FO*H MO3VK]=KI](YC9A 4:1!'39=%O9Y5@EL6_,S9E0-I!FD^BQ&3N30WB337=5&5 M,W:0_)@93[&.AZSHF=GQLTI\8%5EZQ*WE(,>P MR.WLA#HM!.C7-I/9U@@2#4.MDW'.79\=+KCV:,]IZQE__F&9P31&\-I3$6>E MU2-H3$:P"-Y_A!=2JV_R^M;^I:.E,F%I32RC.FIHREC3%*,QUL=ZO3$V)4DW MQD83_5MN5>*'IMXJ(?4)5\<>1K]7T81,\!K9/]"K7[G:1""!WSK1#Z#7?Q9^ M8$U>WR?89'(:2YD0+!01HCQQ2Z@V\/G?O?0L_E^]=A_Z;?>22N MS+O"SLLDNH/[F][]L'=#IG _'-SU;SJC'O6^R'^^]>Y'0V%P*PP>>H^=49_< MP/U\/GUWT,*TB/;]B?^Q]AVR?K@+\@[3%P7\8F"RTLZQ%V9-"V010EFKRD==4O7G4DQ\-5I9J4D.%P19H ML%KK1(-M'/3:/=&X!)6P]M[:VKIUA\<9*K#S^%?-PP[AD/4?"]_(?5-?Z!&S MP/PR]J[:]/B'H$KB =&[LE)F:+T<2)GAHD.BQ(=,^-(( MIV0AH"6E#8 J$U!%VNUMW(-1A N%EX1/\+UCOP<%;0MS&[IEB>/15]7ZV&9^PL\*WGSFA0D+[Q7U8P[2Y\,CWL+;-$.KZ/ MR?^9QQPGH@?75$64ZZD+?/-W%!D$IZR"4\]=<&162[ NZDT-! <$IRB"T\A? M<&3B!ZF2V)!2-R@!P0'!.9?@-/,7'(4&$&11XDIP2I23N\>_(\\_6P:TR3JQ MH+7R%S1:*5$7F^E=(JCHP3'0B 6?.](TU@NQI?)4DQR0ECG2Y/R1IE?:JB(V M9=!II4::DC_2ZK20IZA*J>,B_%4IXM=*#4\M.S@0?&JOPB'E'&5P;V7OT\L@ M;<^D-45)S2HX"4>22P;2O67"3P]2VH5+E45=SBJ> 2 M&4CSQVB+&#-U5=05 MJ.T &-V)T?SW\!4IW%%1I:RZ,$$EA_3MBOU@F11$"6A"V#C/5!K*C\$D$L;$ M D9K?=*=%ZY:G "&SIQ5D@Y#2J7=TD450KVEAM">_(IT$*+[4HV6**?WZ@%# M'&-H3ZI!.@S1':>Z+LJ-K"J:0G@V@3D8YQ <;Q%>=O>=#!,)THD1J_DH-F2> M>I4"A,Z=(I .0[0 HR(V6ZDM0L 0SQC:$\5,AZ%&I:TTQ:;&4TH@8.C:8NGM:ST <)PP]Z([<*C-^TS=*LN.HR_9],^G8310W:R+C::J7>1 MDK*J0%[]1<-OSW9\*OBI]*B:U!25])N8 +]RPN^4Z*/GO:2&V&IDM7D"Z"L9 M^DZY=Z?25FDM2=0SV[OC;W.\:-'07SS7]X6YYTZLXSJC0>[*68Q>QJ<'QJ;$ M8J>R\P:*#GE3@+UC+-XTV--H/I2H9!;0 .R5#'NG@YY>:>NZJ&L /8#>,;9N M&NS5::-2L:&E;I@!6:!9U0[ 81M@Y)@",F>68_F!QYI8"/AE3MMD0-"78_LW M8M\OV,$>LCN.V=G@82]D86(YI7MVFJ@K&;>IRG^- %B>Q30^$2SI<:R6J+:R M2BX$6)8,EKF@LE5I:[K8TK-*FP94E@R5>PSJT\!2DVAW.K&>ON4S!)4S DUG M1GLE_\EZ<,76==[!Y;++WA[[>9TE@TG?"9#S9(UM3,\Z!GYBF:.GL$2U :EN MI<;4'N,W8TS1W4%1D[,Z. N8XA)39X642MS[#*-P "DN(;7'[,P84W1'2VSJ M/"U]I0_>#N:8^@C.4YI,A7-X>:67M3UFYI)1?<=P9_C.]9,+F%YIUT55.WF. M4.E"#*4'WQY[- OPT8J)HM;,N-$]@*_XX#L]]AI4\373IVD!]LJ&O3T6[D[P M;>.+[2JESH8Y"[I*W(6O*'>6/DK=IRU)L1_$$6JA2HOV0IPZ5P)^H-TK8" Q =+ CL 6B+9SH=-.PC.WB "6'6NPI-8U.S]*)K7I6ARH 0UQB M:(_E?8"F42KMALZ3I@';.O<[@06YWUG^/9-@BKVE;_/)8J&!GU(X.1E&73O.NYF .>#U40EJTGZ%(G=6"Y*'+" Z/F4Z3Y'8M1H M!#72=MKN3P 87@&3RM$Y4MLD=(!TZ@#I&D_%:P%;V2NC?7L/V8**%N(4E?JV MOY2+K@([/?<[+V ;@LJ+,,9$4K 0FNE"@%Z@4@[[4?X)E/U";]JN>R5 M90E!,2[1R*6JG+XIUKS7AUO4#[ E==T8&]WJ*/>\3!JIWD3I7@_FOIXGJ)C R MN8_.[]G<)W@]OOIJ@W;)%G4U=2Y>D3:%0+Y O@Y//D@G7ZQO@B078T\+Y OD MZ]S)$>G$2P\[:6NG/[ )H>!RW DLR/U. M8$'N=Y8^^>LK\BU#P,ASR'!]88X],L_9C*Q%_A1Y)SF7FV"7427KA^DN:%2N M]'9-PMD7U[!YP-Z08NOC^)?RUK[I11B-'V?(7=HYTLK.:53:4DT]09NAC_B1 M9" M+:%,:5-".RE9B"S"_2Y+205Y MS2BT]X&XJMD$]T!<05Q!7+,*&WX@KUHV@4,>Y!4"*KG?R5APQ4Z3D?^:UG/[ M"_DG?F*-G?]9^($U>8U$KOUE[%VUEV#[X#D#TUI,Z1X[HX K5,!'4RP@PPA/ MT]%Z4HX;D+<3N13(8&AQJ28'@3H1@BGTL=%W'I(6 3?H32S)%-)!S M:SG(,2QR^S @?YB1>?FU=RD0#4.MDW'.7=^BDGWM81L%UC/^_,,R@VFLA-:> MBJ176CV"QF0$1(.\^P@OI-8V2;'^+QTM57J6UL0RJJ.&IHPU33$:8WVLUQMC M4Y)T8VPTT;\5I1(_-/7B& ULG^@5[]RM4&'F>54UXE^ M +TV)6$'P2:33 C6V$&P4,&2A<0-BVQ<$XV./7H7&0[B9BS"U*/+WE_VLZY! MI(T=925R1(N(4/'X#X:CW*'0'WQXZ][\)G?L;8?C]Z[!_ MT^\\]GM#[M5==W!_T[L?]F[(%.Z'@[O^36=$?AF.R'^^]>Y'0V%PRV;WV/N5 MW-?_9T_HWY/?>\*GN\%P^!/W$_STW4$+TR+JN !C[3MD07$7Y!VFOQQN>-Q[ MJ>Z9549&9*.YCZ_C'S['"[SEL/>RAS[/D/=$E%RT1NCS[O4P\S2.O:2WMJ"<_&JQ,IBD?.R 8;*D& M>]AK]W@L>VN/);BUM77KCH!!J*K.XQTW#W*.1V3IQ\(WC"!<*+PF?X'O'?J_$P=_29ZF=MK]6$C*5=!NM)+MAQ6P* MULRX*5B!MK9!M'B:6_GZE34S[E<&H@6BE7>U,$XD*^-6:B!9(%FY%PH[6Y>W M9J9=WJ"7VP$X&033\&C3W,-3[/C6,XYK7'^B/=Y^$@4'A_DUZ.7ZI)W<#GA' M9G$]&&0Y!YE1S"=!YVC%4?^$G.XXY6G&SLV3F/0X&DQ%Z26R5 MMJA5JN@EM$I+CL73M%;D Y4MVHE1K#?3] <%0/*L'(N@&ULRK<.O2R4,,Y<< MBJ?IJ,@)*I5*6Q/U.B>Z\:QN\%HZ$*6 M(Q"P&Q)Z9WVEG4R9JZH^^[*'C8GV.#'J.R7]\<+CE%C.& )L,%7/@XU"@= M>K;K'3 TR%+62KW5N'M%*4HKZ[*C[#Q:_R.4-2MM6=ONH@XH*Q'*<@=9J])N M9%73&C#&)<;.8S>]#S)%DBKM>HLGE)TUD99#[Z_[QM4C5FS,3>(0!NZR3"2? M/N!!-KLBR3QZ?P>.7?N0H=>(0M84Y&5SQ!G+S/V3KT '(.].F#O(K#'(?0: M +V+@-[9C*^/',=FI&73[#^%<.H[)WO/@^H&' \MCY?6^8@=/K.#!)@1\!Z^M2GL[(^V, M'N?)9RA+E;:\RR;;"H1"1DCL*W $*>O-PS@7!W)@R L$0@Y!Z#>J7=!$58:@SR8;5]!,(Z M<8I;'(&P]%6)1FZ [(].E.9]).W@HFYE%-@]YO,.68V%ZPSE$Q2Y00:3JBJ,MZ^O,;@&'^,9RAW9XW<%OT4&:KF7%G M(T OQ^@]S4&ZG(&LL-/%2A:GBT^.X=)7F;G#OO_&)0A]@=@S0&L(H+M@S@8& M6+,G"H+<"]# .PKTCLLI!D,K 5-Y.E2.\G;!2[](;KG9[RR2A'&KB-AQ5=,4 M128K'2<'Q0%+^;F\F6")[G1OV_Z I9)@Z9Q04BMM??M )D"I)% ZU _,!$MT M.YL3M921LU8 J_*4)09AC_74&4_'%RM*5<174?1*6^%IQQ4@R5^EP=S 6:^T MZ]LY*8W^0+G4XFCHS M,OJ@,)';_>T%"R3)IXGI?K#Q>:Q4MBKM;8LZNWW,HL98+AB,&>1!'0E&52)@ M/&5>$Z"Q<&C,#XSR3GL%P'C!8,P@0>E8--+=L^U35YRAL?391MWWSQYLF=EW MM:\UX=;U"4\%^AQR7D\1S][W7,3QD%&T"[M@N@LZ1,;U%,)13QH'FT,1U \<-<*BZ'&KVQ']Z=.GPID$P MO[ZZ^O'C1^UE[-DUUWNZ4B1)O?+(Y:OXWNW*F+[@+EBQ2UHL5Y$^=PQC,5O8 M*,"FX.[H4$]C>>Q6^3/5MLNJFNZ8T"UZ(_*P8$R)N(4]&J(W#W&XGTX+%")S M9CF6'WB(5O"+BVPN7_S#"J:6(Y#/"UW7,>DUD_[$%"<;VC @_PDK=Y*Q#^;8 M"[]=8ZH\GFY[0XU_K"@2-R0@6P?N/\$)J_8U*6ON7CI;*KZ4UL8SJ MJ*$I8TU3C,98'^OUQMB4)-T8&TWT;YK)&STT]58J[ E7QQY&OU<1K45\C>P? MZ-6O7&TBD,!OG>@'T&OO^CZ99$*PQ@Z"A2)";#0WE.!K8EMAC]Y%AH.X&8LP M]:B=^I?]K&L0:6-&"I&C+C5QB7A\N4+M7;#@$+[AKLQ@..H]"MW!MX?._6]" MY_Y&&'[_.NS?]#N/_=[P$)LQUTET!_W[$_]C[=.%VUV0=YBKBF/GM=N) MMJM)H<9+:K@W])IRH(F=[)K6TC+W!V0R3?G8 >4R6#5+Y^6 L@5[;VT=XB&$ M G6>X$KS(,=G:+T(W\A=4U_HD47*9%;IWQ8.%E1)W+9ZST/+M4AB@KHM?!-: MD13UD+2$0R9\:813=@'QK6/ *,(%-I/PZ73?VR.O\1+IN,Q"_N"[Z>XL4?;_ MEJD?IBHMS3_A]G'P31@\]!X[H_[]+T*G.^K_LS\BANYQ18\.S24L^CM*G\U& M:_N$.6QY)*9=P"98@3:S,MR37M5DH.6V:8S =0YZE$:UMZFI6VVN*IS4>)#+9WCFMN=FOS,.&48=F8=6N+ M4LW)WPW:,GQ!=RTL1W!#OM-=)]HKR@HL[(-1=P:CCD%8;?",IQL\P9['+69.J-!'Z*47;A%'O4<2&SLM:NPTY RR;SFRC)T6-0;0'K\L%8+HT5ZQ*6?5%X.C@[P%T,*=&?63_SQ>"U^V#9.A%E[K MTN=ZZVQ)+%!JI:V(#8VGZ 6@Z=PJ.3LX:11.37V[, VWP;!S;:)RO#%;@*6G M]\?""EYI&"^*T+B3J#;;*AG9NEBYY%=V(F?NT:V7X%44R +F!"*[ Q,&SZ%N?0ZJ>M/TH[RC8C9PAH1[ M@\E#Q"S:T3OHQ4S:)6JT;'(]C9X&EX%KW.SQ&8X'#BUNO"." R'TDS)_&+C& M[]4QHKOA]/ ?=GP(I^<>R!E.D8>_4J9TUWB2V.UF6YK-]/T^P'3F&4I[-'(V M6-+I#J32?^8N8 MYQ-;Y[O!8'>*G"?\)D66+CQA+,>VT-BR(5T6TF57B0"&$;;+\;"!K6>:+P]V M"1=V2=\Q/$Q<@!L<_K?OQ+SJ."9K<_6X9%ER8T6MM.NBW@1CI6A0R]18.2W& M:&WDAJ@J:79Q($!X5+\&)Z"DCM9^B OFNB^S+60Q?_YE!=/NPB?3Q%Z'LBJQ MB.G,Y]S1\Q+VV+G%UDG./YP29'6:"2:G/Q8)8<0CT-)WGK$3N)X% 4/N]/@: M;Q(+%3VG3U1W/8,JU6!\\PFGQ,9W&CPU"9XDL9ZJD208VT=@8A"64V:-I<'B MYE13AVW!0QXQ(RBY@+&->45/$ZX'4YMK4"76U^E159>H Z>G.H9\/K.:OZV= M$VX"%=9C"!J0B_9H$YMZ)UZ3[)9MB!;*M(^1*NUGGQ*X#X' 4XGD'00F7 M("4LH@('_?AA]Y0C9LTLUJ)6VMF/E@53D M$L'FZ"WB)6X2KC=:I=T256U[5QBV$\Y8'L_#S]A90+(/9TIYUZ[=792V][I+ MFO1*N[XCPP+2>$H$HL0J>@^*$BKL>J6MBZJT'?GDUD$HEQ7M+8B^)D8TK5\< MGKB>S6WW%6-A'%8WA/V&G(MDO"^)O8A5CY@UW[Q;96 G%D-6V;W93!,( DN< M:Y0='PG*$&;T3+?8THJQ(U$BRSQ6]#X. AM#/8W<(O:L:LU.MY?R9[AD3V+) M:E')(O.'2'Y9 ?6.H7XJ1#4DKA!U.4;Y9L[/VK$Z,,1Y-<09RR*)VS"/MJ5* MKK1;&N3YE!9#*3=<=X$HH=X.MURU-+F_8&,?K;=MUWFJ!MB;I=;^VR9V/SZ^MVGC9D&,3\[2W8F-IS8>5=7:H3VUN6R+\X1-R+/_?_[,WS*3+_:'VZ 'O>!?! MF;P]AQ%>3GR3Z$8R=-,7)IX[$XCQS K"GZ@"_&6'KC)THF.NT2;9.RIY=QSS MHV+>C4:EK:M0=[C4 -J32982031U0(6\WCQ0T$5S*T"V@&G;6S,L,$S+#D/' M#JX\YC?BAEY9CZN1VS$(2SS\@;0E]$38:76-EVH0 *VSGU8_';::[,RZE&KW MBM,(*=\Z?M,J'T>%I:,.31;E0.[QT0)*W8D,\)M5I?]5$?#D(:6F7&DWQ(:T MO1T!=GF)<)7 +L\*6"P'0=YA(8"Y?HYD7[+Z1CI;%!P'@M(7;_GWGO@MI"Y"V MD(W>?<3SR-2F[K2)QY"0D.\&UXHA@PG+P;YSG:<1]F8WA#>)5ZD&\:5U*,%< M9CCM\:2SQ5.36#U-46I!J8-<-[*.UM.7':(ZT;Y5W_<7R#%P%@+6H@=I1%7E MJ7(4@"O/S:L,T=62:&A=;#52]Z4Z7_R3/Y\S,^^4OP'#U"[*^1O1LYX+[Y5\ MUS5^#_=1(2N&!R\PWO^Z=3UBP"\\8XI\L@)TW=G,=8:46[O4.ZW"T4C3.A9< M/:XQ<^"F:3+0*)6VMJ-0*8_^'']KQ=DCU0585<+=%8I$&E*D377(([00*]W: MM0B@/7(9O%=>O-=OEN-Z5O ZG"(/3UW;Q-ZN$@\MM=)658TCQP%0DZ=;NALV MZ_[HQ'K!9O5/[+F[X*15"'2:BJQ\Y@A2%YB+L\J_6<_*F5@.<@S(Q>'']DN7 M\7 ;\_/XC(<6*R2BUZ&0R$6@,\MUXX2@I.5#FJ+6*$RN&+@X14C&V2T3OL."A OAS^SP<'@@P3'#'^BIX6<"62?_7J+[,V#*JIP^UDTA M3P>37L311\+0@4/5%?W_WHJ!C\1K]2PCP"9+/G?,S3^LW=EW#'M!27K#CADB M^Q?"D#EY@OQ.QV8Y"VQ&M9-<9Z>S11M7-+9S"X^SC ]C?8'(+_K&'7^K*CBI_#)C&I^TA,8&:]?EQWIR;C@F<@I5B?7X:,C%V-0JOEO4 M?6_-$% @C/&3Y3@TDDA+X3'6Y^T*%5",DTBQ=L*E)+$HRE04FSNJN\*^47D0 M)]=Y@ARMTB&)*E>]#4KO4GRX!F#R]W3:?X\1=W14=[]D[B)SKH+YU\Q"VIN3 M+X\Z4GG21C1M@BR J3.N$S$S9Y\*Q!'$<TUL]X=@.2&/"9=X.NJN$J::[F)L8V[/NA\T MQ,LY[]"/DD^%.;)RL4,O8'DKZR*VKQE?B*P' JQ[G#QBJ8=ADA*V$@"1**U( M[,GZVI*);=C7*^UZ/76Y@3D(XKQ#[10@YYL2;-9F"6;TGMM?R#_Q$VMD,C"U"B/PMK^, MO:OVDH@2-R0@6P?N/\$+J^B8IUO^EHZ6JQ-*:6$9U MU-"4L:8I1F.LC_5Z8VQ*DFZ,C2;ZM]*LQ ]-O7@&<_2$JV,/H]^K:$(F>(WL M'^C5KUQMT&%F.=5UHA] K_\L_,":O+Y/L,DD$X)ME14E! OU%E'-;IBK>TT4 M)?;H760XB)NQ"%./+B1_V<\Z8L&-J.ZAA>[@VT/G_C>AO?#W@V9POUP<->_ MZ8S(+\,1^<^WWOUH* QNR6^#[M]_'=S=]!Z'[/AOX[/0^\?W_N@W[N?WZ;N# M%J9%M/%/_(_UQK5MY/DTHSN8N@OR+M-/-FRVEJ^6!F88&?2MARC5UZ8^5%UQHU M157?O2S5Y".OJ;I^U),?#I9,4SYV0#!8&"P,MFR#K1_TVCV^8X)]X_VWMK;N MW1&N"1>*\\0FF@>5RA\14@'XUU5:V0?E$/:J!@(@H^X@"1/YJ, MA#WDT>,E!QU0!!INU?X$,3Z2@!W#6,P6-@O/L\WZ@4RFL:)!$#)9!+N!BQ>3$0[JL\615Q"M?G'P@I>D]A$61U2R77_ MZBNR:3%U4?B&/&,JJ/(.VQ"RX"$+/OO-T.;'FZ'K=E+7NL\DI6:-UML;6C M-1=()DCF14BF(G$IF3)9,!59E.3M2E4@FB":A17-1"FVRJ$YMCD)J5)IZZ+< MV"Y(GUTU8I!.D$Y>I5/A6SK52EN11*6U7989Q!/$LXCBF4@Z]U0@.5FL1]:H M4ZF#V0J2=Z&2MZ?X74[+H4X\2K5!/,K4_9-X*#O"W_$3N+-,=YZIZDVN2BTJ MP4V/8'^R7=_?,HNS.,RY?,>EU=2/.HM!NP1@+;"V,*Q-9.CM;U4XL0*:?Y78 M6*NS/F<["@( YLJ'.5 GP%I@;=%8FRQ6OE6=_)U8^?J:L;TLT"HQV_U/.&M= M!, Z8U[1GBAO"A.$UCP1M=9VJU4>E=DEI VS!'_!V$CN#]UW47!P6+\#O1Q7 MG?;0!D7P#G@'O./T[[B$\.,#U6%D?;,M-+9L*W@5D$DKTM#"0GE'(@MH-J1R M-0IJ]P&;@$W )F 3L(EO-B4*E6RU:GDG5,+\H8VSSF$QSQL\H0?SOV*'_! \ MV&3N171S 6'F&+\2H$'GF;S>IWIG4D+[M=]W%:D[^N+\ F8!.P"=@$ M;"H/F](YDH=9B)%ET8T,BQ&U*\+/=1QSM+(R$IJ-R;9?%7H 7%24U-NO %&> M(;JG:?V9(;J-0J725DK8$! @>' &"=]:4F5:4B]A^SZNG>_OCH?),/[$)L&. M9SVSIB["$[(<@02V 1L C8!FX!-7+/I'#XXS5CN M$C/BEE@1OU(CXA=B6] _?L7$0L2/V+"1[UL30A-F2]*V:,2TW&4BTG(4.VK M ,KX1ADH@T*PZ1RN9H;*0.=-&4"9"[@SQSO/G2G NO[EDFR^\(PI\EEWSG=U MEC]%'O8_5EO]^]N=!7T>\3SZA'FS\&@M'S)0UQQ&KSPDKB6M]%2]TM9E4=F1 M54(/ ,W(H,.QTO<*0=Q&9;/3*,1+8?,/V 1L C8!FU*?7S^D<\@[2^ _D;W MNXSQ1J5=KV]OW22NS@J8 =$&-@&;BL:F1!IX7_#D* W7@@V);.JM[J"?=1!85NLF5Y?D^HM!:]*E7:KL=U"*''% M* 0R#FPZ=A-\$.^(6!83C:E\RTW5=WJ7(X_ MU;+J# :P ^T ; (V 9N 3<"F2V53EMY?'B:1QIM)! GI<&>.=P+\X$Y^X5>* MX@U?D4W33T3A;PL'"ZHD"HI$ZPP=$37;$WG>]US4$R:DQK5*5BS378QM'/:% MNI6VSY8S[,*;B:LZ[22#3(-,9R;1\'IE.5E)*K5?: MFB2VY-1EST#F0>9!YM_(O,*ES#?((J]HHJYM-]<$H0>A!Z%/E^>L;@5>/\IS M/K_X-\F2+S:U[;H@QW;6!;D'N0>YKZH:WW+?(LM^4]15$'P0?!#\#*U\/:=H MG295VFIF];U ID&F0:9CF>;1<==HEPQ-$?56Z@KP',@\VWR\8@2*#TB3?^(A MK[W+P)1>$6C:7\;>57OS7/6>Q]@GEJ0(YT3(8*.YCZ_C'S['^Z.6PY##'OH\ M0]Z3Y<3TT>=;4V+?"R]__F&9P91BK2:%>(MV5J,O1Y=K[-(;!D77&C5%5=^] M+-7D(Z^ING[4DQ\.EDQ3/G9 ,%@8+ RV;(.M'_3:/4DG>S,[D]S:VKIWA_$6 M+A3G,56:;RR5QDY+933U,!:^D?NFOM!S3&QN9*\H&\O\.>FY,LT/-0WX)G27 ME7-A)@4SZ0Y)"]H[\\LA'\T5KEHA_:*,8:!@(@H^X@#1!LV,A#WD.63D!W40 M AJNM&5<$!C$^#@"=@QC,5O8*"#K#*M*'PKT>FEZ@1:@![(F(NNFT\]H&GO^ M0,ED$NZ2E458#[JP\TJ-SZ':9 &8)#91*0H"+!.;OR'/F JJO,,VS.A4U;[G M+C-RFFSR)8J-[FGC>KK]#B63[.1$?,OY/"-('DC>FN3MZ2^6T[:$6FEKBBCK M677O!LD$R>1@UHDD\Y"BA^>73(TLF/6&2/X?1!-$LSRBF2PO+U'=X?,+J5YI MMT1%VJYLFK@P/4@G2"<'LTXDG=K665>^I+-.EM"6*,MIRHJ#>()X\C/K1-)Y MIE.KVW+7H$TXP*,$R;M4R>/R[*C6I(=(9+'>*H9'"066X,X<[[R$ DOW.! L MUKE>^&2[OK]E%F=QLF/YC@.J^J=8)_E;,E*U9>##[ '6 FLOC+6)#+T]9XT> M/'=B!33_*K&QUJJT%5&2L^J9!)CC&7.@3H"UP-JBL399K/S0"A/K:\;6LJ#3 M8^-:9D4@ %A< BM1J?@M7&5E@NCTR++8:F1<^V\J\P1-Z+/\K=L@/P8-- MQKWJEW:/@\%DA%YVYED\((_5,.UQ" M+.S6]SD?G<\3(;Q)S8)?CSK MF3#Y&0M/R'($ CD#^5-A8KL_A"DVG_!!I2@A0@:!3& 3L G8!&P"-G'-IG0> M^6&&)4U?[A(SXI98$;]2(^(78EO0/W[%Q#C$C]BPD>];$T(39D9. NP1JW*7 M=4@;*&NI#\ #RD 9 )M.>W+A#,J@R9LR@)H7<&>.=P+\X$Y^X9=YW@KK0)G' M,MGW_05M $'/;+V[9/I3Y&'_XU6S?W^[L[@4_0 V;Q8>+2E%QNB:0_8V,GYV MZ<##@-)JJ:3U".H[JQ'3 VDS,O!PO,NS:.&OP@\KF$ZQ;=+OT?-I:_$_1GX( MYL,>=;G8E&SO;ZLAQTM2I=ULP.9Q@0 $BQN L=L0$ MK+LF7X_XCX7E6P$>8N_9,G"H'A^QX3XY["U,4^Y2D&JEW5)TCK9= ':@'8!- MP"9@$[ )V%1$-F69>)*'2:3Q9A)!*@#*JSEO*8%,@TQG)--;/=YYZ)99KU?:FB(J$L@\R#S( M?,8RKV]UCN="YNGAP'I+E'?D2X+0@]"#T*=+O=&W.M)_E'IS?O%O5MI-46UE M4.$(Y![D'N1^*?<*WW)/SS8IHK[C)# (/@@^"/[15KZ:4[2N(1'G?4<%.##B M0:9!IM,E3QQRDNGL2WB#]BIMRJ*D9G46*D^A9[N/5XQ \3%I\D\\Y+5W&9C2 M*T)-^\O8NVIOGJX^X+$S@DVA8!M-L8 ,FJB/G%="*<%Q _)VY)$_.X)%1O;D M(5N8(R]L:3K%/A:ZKF-BAV;XDY\8M5% ?KFU'.08%KE]&) _L)2=6F(*'$FX M/8]%DU;KA"ISUV?I/]<>MEEQS,\_+#.8QN*W]E2$-VGU"!J3^2Z"]Q_AA;&- M-P?[U_Z=>O%@YN@)5\<>1K]7$2W, MWY_[9)+)W!L[YAZ*-]%.KL?2P*Z).L$>O8L,!W$S%F'J41W^%TMK8AG544-3 MQIJF&(VQ/M;KC;$I2;HQ-IKHWPTBIE3[4 'L4O5/Y.K+%6KOXC"'2+RK?:T) MMX/AJ/T/N]61W<'_3NQ_V;L@4[H># MN_Y-9T1^&8[(?[[U[D=#87!+?AMT__[KX.ZF]SADF:J-ST+O']_[H]^XG]^G M[PXB9@%1XS_Q/]8;8IX@SR?+$UF0W 5YE^DG&S9;S5=:GID/!GWKW,?7\0^? MXUPDRV ]]GB'OB2C$:&G0YUO6 _M>>'FE*FM2J"ZC+*;HR]'E&KOTQA:* MKC5JBJJ^>UFJR4=>4W7]J"<_'"R9IGSL@&"P,%@8;-D&6S_HM7L2//>>HDAR M:VOKWAV!DG"A.$]8H+G/C@S/55LOPC=RU]07>L2&-#?R1-4-?_JBJG:H7TB\[F 434? 1!XBV1&4D["'/ M(2,_J$D'T'!)PY&'D;_P7D&,CR1@QS 6LX7-HGJL\',HT.O5GP5:XQG(FHBL MF]%U1M,XQ Z43";A;L#"S*O=C2C>$JI-MM.1Q"8JUQ&B&VS@V1A[@BKG?HSH MHK?G%( U$I;DT554D$R03(O M5#+W%'O+23(ULF JJBC7,T[. ='D!:27*9K)DN"W$N>X2H)OT-[>HJ))F>7 M@W3R@E.0SOW2N558@B_IK%?:BDQ6T.T282">()Y%%,]$TGFF$A';@52"V MUT0P6T'R+D+RSA1D3;@:TKZM:D/46QD?\3KE>0XH9@AW%J2880&;@-SC0+!8 M>VCAD^WZ_I95?,S$T]103K%,\K=BI"J"S8?5 ZP%UEX8:Y/8>?4]!;D>/'=B M!30#*[&QUB+&FDC^DU%Q<\ N^BX."P[@=Z MN3Y%$C&\ ]X![SCC.RXA^OA =1A9WFP+C2W;"EX%M.PAEG<@LH!6 _3< S8! MFX!-P"9@$V]L2A0I.;3N-?.'-@X[]YDW=(,G]&3^5^R0'X('FXQ[U9ST'@># MR0B][$RT>$ >N667,ZQ4VLW4A]< =J =@$T9Q[LX4 XJ9\KA$H)AMZY'?G4$ M8^$1MABO0N"1M]FL>F=:/_)0Y_XC:=Q!TH)(XW%*$\DS)!38!FX!-P"9@ M4WG8E,Z//,Q"C"R+;F18C*A=$7ZNXYBCE961T&Q,N/NJ5=J*J#6R.D0#$.42 MHGMV[\\,T6T4ZI6VFE5E$( @CQ#D"X$)E20]WROJF=6NR<7W+N#&[7?'PV08 M?V*38,>SGEES%N$)68Y T&8@?RI,;/>',,7F$SZH^"0$Q"!N"6P"-@&;@$W M)J[9= X7G.8K=XD9<4NLB%^I$?$+L2WH'[]B8B'B1VS8R/>M":$)LR5I3S1B M6NXR$1N5=B/U>7< &>@"8%,NCF:&JJ#)F2J A=P9XYWGCM+@/7[RR7/?.$9 M4^2SOISO:BQ_BCSL?ZBT^O>W.ROY/.)Y] 7S9N'1(CYDG*XYC-YX2$Q+6FFI M5J6MRZ*B;2>4T*,_,S+F<*CTO4(0=U#9;#$*H5+8]P,V 9N 3<"FU ?7U0.* MV;VS!/X3V0N\PQ1O295VO;Y]LCAQ55; #(@VL G85#0V)=+ >R(G1RE@F2,% M?.XM\]PMDQ5@B%%X)-R6SJK0+1'_5-V!9KIM832O6:\E=I MVI0B;Z=-):XC!?@"-0!L.G9W_!#/.G/A9XGEDKZ]H@.T^(86: !@$[")#P\\ MG;FVK93U2EO.HJXGG!X_C/N,4=4Q#9>P@HK8\5GZ"!P7AXAC.=F4SCW=5'.K M0SW^R.T04M W(OL!66;?Z:*Y%2";19Z8@'77Y.L1_[&P?"O 0^P]6P8.]>,C M-MPGA[TE"E@FM&GKM%1M4\FJ42Z@$I0'L G8!&P"-@&;+I5-&6[175/)9)<9)Y,BRSRBB;J M6E9U"4#H0>A++?2)\G;4K0S+CQ)WSB_^,EGRQ::VG8MY;$-?D'N0>Y#[JIKH M?,7YY5XARWY3U%40?!!\$/P,K7P]GVB=)JF5MMK*ZDP%R#3(-,AT+--<.NX: M6<$U1=1;VV?HBR?S;//QBA$H/J!-_HF'O/8N U-Z1:!I?QE[5^W-<]U['F.? M6)(BG!,A@XWF/KZ.?_@<[X]:#D,.>^CS#'E/EA/31Y]O38E]+[S\^8=E!E.* MM9H4XBW:68V^'%VNL4MO&!1=:]0457WWLE23C[RFZOI13WXX6#)-^=@!P6!A ML##8L@VV?M!K]R2=[,W[3')K:^O>'<9;N%"HZ)S8W<%65CD3\G-5>&^:&& =]D[K)B,LR@8 ;=(4E!>V=^.>2CB<15*Z1? ME$X,%$Q$P4<<(-H7FI&PASR'C/R@SD5 PR4-1W$Q8A#CXPC8,8S%;&&C@*PS MK!Y^*-#K1?$%6OH>R)J(K)LN/Z-I[/<#)9-)N$M6%F$]Y,+.,C4^AVJ3A5^2 MV$2EJ"6P3&N^P0:>C;$GJ#(S#^535!/8]]QEADZ33;X\P=%Z;AL>>B;IR8GX MEO-Q1Y \D+PUR:MSN2]1K[0U550:J;)9"O%,(IV-G,ZB:[)$>U*F/J(&D@>2Q\^L$Y7WXC+8(\MT.53%NBP5 M0C2AQ!+.=EU!BZ1X'@D5TRPP+GVS7][?,XBS.=BS?<4!G@!3K)']+1JK6 M#GR8/@+8"VP MMFBL310,;VR5C'HG&/[QHJ!6VOKVFG!LG0< %I? 2A1,VI.S]S&<-%IH('6\ MYRR@NH3D7Y:F+Q@;*?JAYQWYXS%X![P#WG'Z=UQ"'/&!JC*R MCMD6&O\_]MZ]N6UD1Q_^*BS-[KXS5;2&]XLSI2K'2<[);B;)QIYS?OO7J2;9 MM'A"D1J2LN/Y]"_03>HN2Y0HD9*[:L:Q)5ZZT0 :0 ,/HC@JGB4R;6'2=DCQ M#,T#T1-6+)-8)K%,8IG$,G5MF6J%1';%TV5NT4+A\D?F#;VC(5;9OZ4)_%)\ MC6'P.W*IL.<\=T,2\Q1O@4SX@-8$7]'(^)O8%O@AV\I&(?T&_5CDN=1"#1A M9F18T RLRC76H:;T!I;;5!-DP65"&8AE.E)YP@F4@=HU9? :#FUOE_Q!*9NN M&#B012K1&ETQ1+Q'G&"(91++))9)+)-8IDXOTTE/;3<:B77,0ZTW<)L"T19\ M)M2!6*:V$GX;40=ZQ]2!@#D45[9XY:E/MEG?]S8TU<<\GV#C-017V*BU\B') M:/ZRXOKX^<-:0%=\ 0W>33(@RU<88QK-=E39JUH9ZW(LJQL&V6M('F +=>61G 8,#)$F.8O; MB5P!$2>_S&4ZS#]=5'.SPIO\/KT!4N 32?R51,''Y):,HX+$+/3$!.QV3KZ^ MT3\G41X5](YFCY%/N7[\1OWT(6%/8:JRME&+;3!EU>E25%UPI5 >8IG$,HEE M$LLDENDV&W)/=&;Z!ILFFL[OI"\(7@"\'?V\K?@@QXO&B="GC[\R E4UVO"C&O*(9 ]1PMZM M+PJ;3Y%\IV@0)2DA;P=)+!QXD4P<@>,A)+8Y*QVO1B M2',JW:9)0!/,^X??&!5) 7]\B!*2^!%ZN_]NLB!P'[S1-^!7IAP%87/FPD6AHT0S%Y#,"XBH#S2C"5Q78.TTPRO M@N&0SHQ%&F:H8G_:OG0V2!LJ!Y2C6]3.(!Z__4H&Z]BB@^S[J?^V+WWX?_T^Z^?Q.NOOC[=W'=Q]OOGU\?[=1V+LRB<]?[M_?2?=?8 :? MW[W_?/?^'?YV]^73QW_O_]\W_U)_?Q'0F"K M!A7\2_?'^@Y,!I+EL+7 9I).X%E!+DOTAT]Q1\;T30EV$[)F)CLJ2*.W>??)")[C+]MN*\A:V0-)HK^8)IIM MP+RUSU>PPV!]V9]?PNF./-N0WT6Y'Z?Y)*/W\(JW,=A],WO,YG9CE$QH<(-F M7!A2W_0UCP:!95B.YQFVZOJJ3VV#*)[O]R0*5MT8&2R;@&)>9P)4IETYN\%& M'EUM6=.A"L2=>8Q)QY._ R+AD):UXCUO&GMOIM4A?C6J.K^BFISJZ MX=F>8WD.#>%VE[KP '=JY>_(&F])'N5?PANPZ";X'K#>83K/_.>:!7>6!Q3H MQ/5"5_,#TS1(M9D'3KGB>ZSO M;NNU>M]6LJX:XI-*J=:221VDBC3,*5CM:\N9O-S=?V:_J MFU\82A6Z"UDTDL+IR**$>X2L"702\+?C$Z,D!P9BKEZ.0.,?X#))5:[^EUUV M@VY63+D/Z"![?:,/D[*9]-W5_^M+-VQ&,('X6<8'/H.CA[X+/!C]5J!E')<. MR\H@PC0MN)N386$ TLA[EG V;!:X!C$%Q3R;1C[S9R12\SY<\'68I2.I6M-USY8E\*]A'C"PY9D$4ZV].NB^])&O M4CJ.$IPC3!O8'WP"?*K,[@?G''QPYMG!J&?MN&$Q<0I1SG@!;DR04C'BP$\R M++Y'5L@F),Y_87.-8#+PYH3Z-,])]LP(1J201!DRW%0#S/%A.8V@+WT94S2? MX:%PY22&ES-H,QAY 48T94/+HQ_2",1GF$M 7WC5?)JKSOQ2I$TU )![>$' M$",?:;7@U>.+(2F %,\P$+ PQM1GE"_?B6N([\#QO(/'C3R:<8;35?XV7&M0 M;O\[ ><7K/UG8,)QBGYP,L>N.1@Q<8!O /^+"0S0Z=^3A,=DIOR^P"CK%G^) M,Q$\DX)<5-3#!W,+/,UA,-(M5Q2L#,I^DTLW">B;>,T(_V=EPO"PM?/52D9Z M8IRW#-,-*?86I$Q^2Y7P1.52(U2?3/+E3]))-OT()XUC*[^:FQ5^RUZ! MD=08E@[6%\8#KUI#!O:<"(BX0.9\X@'#1L E%.,0JWO0\B?2WD:G?6Y&IU;7 MZ+RC#\BGG!] 9EZT(]UELT)U/,76-,NBJF&X&G&)[E#'(+IIZ@HU@A6S8I+# MN/-<*E^;2R];D6LWW>TO71RD$E#%\DS=I;YK!*[GFH9IJ*H2*C9QG,#8/TQR M]!!>)0<@NT1ZB%/8BJ2"^L,$QO#P++$(&=MJQUGZB$H<525-@!DI*G09-XQ) M2/QB@NH=+@I@;^8Z*>=V]PK6HX(V#/P?RX! MD?74R"NN!AN-[YK,ZD@3 M]F&YBU7C^)G\PFD/(X9-G=MS0,FH +W&K8JG8>0/X6&/%)@9F8";?V M<]A/HASE[G?RG68R/E6:X OS"8QKWOX"_3V":]AA1,X7V ,*XGMA7R@W$X\9 M/4ATWH6&K7U),D[:GWUNV'*K"DP:,KOD4'#J&#*@AV!E/,HUBSLPOY3TA)>B;LY$AY8<6%!9&XR@W4F M5U\SI%<^29]F!6OL^9G;*.MIL-U)04K"Q/B[4$P;L5[J^Y2#W[SLU]6=9/=-$4N( M87:@C7B\Y1N7P \@DQ7)[M-Y>JSNE8:RO/=U=I-9U1*+FFK* 1E;1Q;KGLK8 M$\4C)33Y0;*?9J;_F-5BYY7W0(/K>NM8OJ8Z'6('?&@QDG%.KZM?WE35@E'" MIL9N>K-HGYGCE?,]]D+^]>RTI*_P$Y.RSK!\<_EUGWVU=%K)OS/5OF7;&[]6 M^NJ>WQFNL=>=+PU6A6FJ^PY(#/:B!KO;8[?4WF[%OZAQJ;MRZ9H4%G[*<9J$ M#6>G?(U[%N3XG05FZKZ);4>4NE^!.1^E5N^V^G5GMTM)M:\__OEG-JY M8 "F>^$C_QD5P]LR)#E-L+W)PMKQIO8$E6]K!A>9"W(2XG;NX;2DI.<7VAZ7?JFR[ M0AZ%/ IY//[V9_0&NNRZ!Y=HGDK<3@0(V9XO_#6C/LD+/'/E)^!?R]2-8P!" M3I]QF>V,:@G;%D3#4VQ^)@BC+CN6*=K0O6).:T*MLWZ&FGMP$$$P4I<9:0M@ MXRE4EMT;:+IL-8;(*CBMD\A!JZRV 3EHK?):91ML3:6M;G.7W-FO/9/RKJ T MGMJ1[&3E=THPT1N/H$1SOZ,J:6<+PN8IE+3+<;7,+O4U$9QV:DYKP*XT$7U= M-LRF#J<$(W62D5;@04^NLDP55)8EJTI3<6#!:>?(:;M9DZ;6&]B6UB%.N?@H MY7U:D%BTJ.G&$8D R%NK6U; ;D^_B^E@+AF.K.C&!:#A"0D7$GY6$MZ$PV/T M!JZLVY> 9BGD5\AOM^1W"RSU*79H$W9H795-M:DS5R'A0L*%A.\HX4WLT%9O M8,B6?@GR*YHMMW[E!2_!!4_M7*X42]#ZE6()6K]2+$'K5XHE:/W*EYN+U$*X M$HA* O='#%8@*IT_9-!=]$/@*>U-'(&F)/!M.D(]@:8DN*U];A-H2@)-292O MMW7X8[1_O&OW!JIIR4"4-V[ "O@LD^!/G+& MG-9$/( !<1J'VY6"D;K,2.T#<5HVJ"Q+5IV#[4K!:9VV*P\"XJS)4XC2*>O. M(6:G %42H$H=DC51T'W83N>VCV9J(9JII!-;M 82+-L" M54E74NX%I F6?^=2/DR?$HEXZ2.5I8@Y^3 , M$L>I3PJ*],W&*=Q JQN3!XG^&-,DIWE_KK"^^DS*:,QN+-*Y>X>4!'].2%;0 M3 HG"7,9C%#.]G<0SF&V61-\%7R5*:S9Z5ANP=WB0'NN4Y\ZERZ2DJAE$R M_W8@T/1%^/%L.M-'%<]CBD1^C (^Y;G;^](]_%'2I1H\^G#T1TEE']P3 N^< M/=A/\Z*D"\XXIV."GP-U@"7( [R#K>'\(/N+W(ALM])4_J M%C#M.,TC'- U8Y#HDDWB)_*<]WY=F-(H2J[FZ;?#U+?JG#!L9.[VFKES MYSN@?LJURS4X^S3#JV XI#-CD889!DM^B@R'JL0BMJ%YAJ'YMF=ZIF5[@:*8 MON<[Y%]V;W#/\/% 76! %&7MMU_)8-T*+\D:QJF MH:I*J-C$<0)C&MPI=Z"E:(ZZ&J"%"_PHCM@[OH13WPX/?@@;Z/@OEP(9)R"=V?JXXJ43>@T.?GC #-47L$ MUY>+HVCJSCD!Z!T#[<_2]?,9[%E15N H=AP0ZQZV/[H9+%" *.Y %X&?>!"A M=P3K%&!V:PBG-2&@%TH;P52-,-7%%_'-0E:EOX!>P*I'(> 0!?K,I72KM)OJ M5BG GH2XG;NXZ<<7-[.AUG-"W(2XG;FXG:)LP&JJ;$#(FY"WW$^0 VPWE M LLPX88Y"-&%6A>3),-KO \3 9'KGD?L5QVU!R7RT/%[GW?(T^TZ*VX+&Z M>],VN@'W)%BJ>99:<4YJL]0JU[B(+"=XYE)Y9M7"/K(:L-2% ML-2*$7FX&G+4WL V.Z*&1$)VZU=>_CE3,:29]'-IDO^"N=4@(P>8Y@(-JWG3 MG"W2YS1)%]WB4I.M4V,:J#%U]2"E%>0KP3DG/QVHS2\Z\(LBP/?.C6F.8X)O M8Y^:AKB!AKAI= 2'3S#6R8.YS;*3B>$ES5JUT=M35L)0;_U*L02M7WGQ!QA_ M).L*3J$66\$,;:X&L=F['8\;5JKAY?"\:Z#,;:E'-T;,9R M,.W/- \)#@G&ZC1C;?#'CLU8+O?S.W+@=O&1>^Y%2QZ%9:)5W+X@/_:T-9O) MXEL/D:B\A)+XNM+\FB!0MW55DU4EL_2_"O W2B9 AR]3=*"WC/WY=??(_.]_ M%!D!4D8)R9X_%G24?TX3AK*3QC$+/O'#X+KJ#;9KV#<55 ^80/\<5X\ M>+3![@8LV J"V%G!$DV!UU"E[0CN=*FT>$=].O)H)NGJE!ZO#+/I&XEB6;JG M_C"!-SY$%+'+DT"ZH]ECY+<:EW_MAO+KLH.W1-6YL53;F<7$2]N63?5L2NJ% MC D9.Y:,;8E/[REC"!)C:[)Z/B@Q%Y_U^36C/LD+1-?W,UI0Z6N6!A-_3^C% MUYW'4DO"C*-(F T2IABRXS;5?UUD0762>\RC< ]BFRB.;+I.A[CGXAVKNX+2 M>*IWF4_U.R7Y)*,8^!)ERL>5).LHDL3P7F3C<#4L:@.[S#SV$9C'5)3>P#3 M$VTJ&4L8PGN7/_$3"F$+'U>,G*.(D0HZ6)$MZV#$;6$*=YEYW*,PC\:81W$. MC@8*2WCW=;_'CG BO[^[05"1D3.O>HX1)#45'32/JR$0#&L+"3+R\($D1@7_XC"W$V26S1NR+26R8EE; _SES(\LSE8Q$<9:2 M0"JBN9;G_!'82?U98LW/ARF\X2I]2BA_:Q1$)'N6I=O_=R]AUF;IE ;2S]A0 M5U/>W$R"QS[C_J2 3(T,LR\35+@2D# MEI'X+GJ$&4?%)*-?PK?EW&K7UYJ*B64F^II-#^] M+-FE+V%N)O+/C!_YTS#QDC\-WX9)/[/0]/12I)ST%!7#NR@VJLCC[C7>W M[Y(F^9UDL"B-J!+4![=#.BJH+[T''GYXGM'RTZ?;V4I4JJ"\N-(&^PC]EOSR M8PB]W1N8:RM(VA+Z73%+&Q-Z!]6>8JV&&9H4^G[)%DSH*[9Z4>YO4T; E=.H MS2K@Y5.L#0H )^WS2@66ZLY%&VD3&0Y5B45L0_,,0_-MS_1,R_8"13%]SW?( MOPREMT8?+&9R6R"ZY2=H%[G,G3BN=K#7:H?/*9@!>E^J6P?P2),)K>HYD#7^ M"12_!5Z'Q4L#?2DP4W!R&B:ONXH/@E\P]6IZ[O$,#W;#6Q']RQO MN4Z@?.6J?3>_;$NK5BW8MC>L,3%/<^RCOMA1JGT.UPWS,'.!HN* M>1O3RI<&"E[.E#)WT8\=Z=)*(=5%-7_?I;!JIPF_-L)IS5:D711M!%,UPE07 M?^:^&.%#O^!O<>J16/H /A?S[GXG"7DX6BZJ*#\2Y4>K<;@M1^M; B,?$S^> M(&'P\ Z/8N[)C[J1.57M#1Q5=K6&(?$NY91=".2K$L@MI^2G$$CL^J7(1F-I MT4(@A4!V:>+U!')+!=@I!%+O#53=EMTUS;"%1 J)?&T2N:62[!02:8!$:GB> MW#!:JRBPWS^GO4J*FKM%*R&6"..K!P>(!.LUF564[H"LX))=V72+9"=)V!236''>8WWL1%,>C%,VOZ9LZ:"26U:,E!%<*G@TK5< MVOY!K(9]?PQ3-I6ST:4GBC*WRD8K2*YO)U&,HV\]PORZ!;;]@UH-#VI=6=>: M C/JS*XBF+0A)FW_[%+#LTM3=@['!A=,>J%,VOY!GF8R6#A-,*E@T@U,VOX9 MH&;U!IHIVXV= 7;//-^OR*(3YOG'),S@WVSB(WK&8>T6!%+S[G+9_H&IA@>F MAFP>?HHE0,&[S&I:^P>FFM,;V++36!A1<%HW.:W]PS_-!6/#EEU#=#JX;%9K M_PA/5S"[678ZM7\V%%G>-0ND$R9LYWJ%O6J/4VO_W%+'5@NZ[*R!L>NHQRF8 M],1,VOZQI:ZQ)$)+Q.X$DVY@TO:/ZG2]-S =635UP:2"2=L/+[OE4K@LF/3&3MG^"I]OL9%VW#S9\!)->)I/J[9_]Z0[+43+/ATE?0W;V MIH8:;8?.+UX@VS\BU5T\C+=V?^!DJ M.TQQW8.;U I6ZS2KM7]N9VBL,,0ZO)-J@ZQV8O"/5AGFYBP#6BR>?AQ9:W5O(1HR.6S9_L'E88![&G)ZO$+U05[GAU[MG\P9YB]@>'* MNG5P9$"PY\6Q9_M'!"P)<$ MO/U#!%/!LV1%UI6F,F3:E' 6AOBU(/ Z^#>('@?5I#Y/@&"1/_@-/JRF,/?L M?P-)H_"YY)G!;U[VZV ZX[(:]I+"(QI-*(_#O-HN)92D.I@+]OTQ&, MY/F_?G(TU7Z32QGG(2G*I1#X2!I71XG 3DD>TBRC 3M6S*L&61E-8(G@TR*5 M_)+5E# H.?O1)NP1$MW(0?/@TC?\B^ MJAXOI5Y!HB1G\I&E<369-G^(@F"]<740$,-R8H M%SB-A7=-QB"6^3 :XPDJ/AJ_+1\O#4DN>10>-T^%^=O[TL=$BJ-1A+4^/LFQ M(0-_79#"RY*TF%*6D76._OC=E$P!:(8BBA>'AF^'*VCTB"^>3:@D?T!S8#I6 M930>/N=T1@H M^$C?/$5!,:RT_-Q=I:939K<0+\<&>\]^O"G$91!<,AG1F+-,S05O@I,ARJ$HO8AN89AN;;GNF9ENT%BF+ZGN^0 M?]FP'^#&A[H3K07@J_RW7\E@W0HO*0=F#$1ZZ.DJ\1T/W'G#LP,O#$*BNJ86 MV+JN6BJW7N >&MR@?:$K@:VY@4H-Q3)",_#T4#$\Q50MQ[&)I4UMH7+O7?5N M%JV==U%.'AXR^L#&]"4LK1\VJ7NX[RVHNN\SPV5E/([J:+YE4,L,=2/4 D<+ MW= WJ0MCTCQB]R0*YL\863";T/V9\J@2^;DZ7I"\9[8#P*8)5E&U(4ZW%OC[ M(4V#?''K?H+] _X+TSA.G_!?OKF-82QX[3BC.:J;X+J>ZF0&U4S=,0L."!*3 M<4ZOJU_>!%$^CLGS=92P:;&;WHQ(]@"*H=21YGBUM1*^D']=J@S7[9N.CEJC M/% J7UPJE#Y3*$O6*/_.,/J:9F_\6NFK>WYGN/L]]:7!JFK?L3=_+0;[B@9K M[O38+8>L6\_\:UR*X'9+UZX)2'#;Y33NM[/;&2ULEU3Z':X;YM)[V$4#Z;\G M"97 PY4T1=,7G-D3TG,NW+2K ]QM0C?1EVXK)5X/.0]"=Q-T;#!=6A!S,>&E MCL:\""B7K_/AJF,DV.^=J77IAP2UYW]!)P%Z^P +)GCLMBF[VM'K"4Y]H"<$ M4@AD[>R:]L$D3+WAG@5"((5 =FGB]02R_708$TN:%-DXG]Z;0B"%0!Y-(-O' MW# 175%59,<^FRWR-53*?('![.\^"X2(W46P_2H/T^(($6Y3H-D=RO04K#;' M:NV7&YAVPZV4!:MUD]4ZD!;K@*4OJX8E..VB.:U]F S3[0UT6U:MIHHD.X2P MU&DCM8ER;N$V"[>Y=C/<]N-8EM(;N*ILJ0=O;R*.)03RW 6R SW\K,9Z^ F! M% )Y[@+9 6Q%K%XX#;:B$$@AD)T7R/;E46\,2^C$!SU+M86JR<2MI8SSI6KL M^:F*=Y[HG:**X] J#DU4<8@JCBZ24U1QB"J.SA%35'&(*@[A*)WH/+%]7'/+ MZ TL4W;L@Q';1.1"".39"V3[2.Z6B7WA3%ODC MY%/+8?IFC9;$B#O?PA!LA MD$(@SUT@S?;+'"V[-W!-V5#/YJQ-U'"('-3F)+ #^6 .J^%P16+]A;-:^Q5[ MELM8K;F>,(+5NLEJ[><,V$IO8,JJ(0K3+IO3VB],LS%]$UN=-M4E0]1PG%L- MQ_IV!SA[X58W1J +TEIJ^Z:8K?4&CBK;;L.1Z096^CPB94+FA8VXA:AMZ)V.>%S N9?PV->6VSL<:\G9'Y M-;W]CM4J3/2[$5U9Q&!%OYON)_??13]$MQM1)W5FY!1U4J).JG/$%'52HDY* M9)V>Z,R^?807&W&+-5>V35&8(2122&0'XM1V;Z#9LFN(RD4AD$(@VR\EMAV> MUJ:?36&&$$@AD$<3R/9+B6U,GG=UV='/9HL4I5(BU;LY$6R_>MA16#*%)JH* M+IO5K/;K8AVL*E!D[?!P')E MRSVX8Z.HE3K36BGA-[\FO[D#Z.&.@47GE@Q4.1>_64BDD,BCU2&U?_KJF+V! MZ$FX6$'UJFTH%HBM,;&):L'AY-$1(N)%Q(^#+ 4OL" M[F*#.D76E88+T5J1\#4]:\I)?9X P2+_>#UL3LQK&@M.#*ETFX[@S<__]9.C MJ?:;7!K3C'% XE,I]6"0!-0AHRSA.9>>@*>D"'[Q M2\;*)9)1Z8$F-"-Q_"SE\(P\C&@@I=6A75\JF?.E!T?PH()=GDL9]=.'!"87 M2),%)((YY\+7DDQR_'(#0%3&R,T8S*4AA*PY(3$(#\Y/C?Q M)UD&%Q>I1&$!@-_9'QBJ@=O^3?VBO#+-7GQ/^=28 %N6=Q#X#XF(J=;D@>*[ MEU\Q=[D,\CNF"3(N?^+3,/*'TU<5LP62/!I'0+(%5)5;P?B9KC,/ /OU0#?6G=VF?EDLS1>KI@V]8ISM.7%RN=%)R*Q3 -9"D? M@TX)41*!05#)Y3"G.(+74?AVCL8^""R)DBES =%].B[8;#'WOKSK&5[ZYR3B M2?@YG]\D9_2?KB!?S>E 2AJGL^%.*1#A:'":(#-!.1JV.C!%^&X$:R>1,;)8 M%B&Y'V (G.T24N!32WH_I=GW:GW@$3C>A?4@>9[Z$>.-*3W[]17'.H4#>@M7 M.THF3(*9PHXI&J 6.%KJA;U+74TS-(^"/=5)1?7N),9\(D[HP MC>/T"?_E? ]4C]( I".C.98]!-==;BH&FW]?X09 [:YB9E]1]VT9]=)WNKE; MWZ=9CGH_A)UCH2"5;0=54>H.9TZ72IFO"W88 M/XO[3 OI#L_B)$:E5>)):PDG"GGW7X:5WG:B+G('DFE-".XE$D;PTH&\]!H2 M+Z;IP5/O'?U.46LKZA9.D_.U 9,HS(OL&GD3A\;,D)L1T*RH&7>U% 4A,F5; M.YN:!"%M0MJ.)FT;<+(;DS85=U%9<5X;VMY.:;R-2-X9<2#PBT>S+2K_!1XL MO=(IGUUI,T9#8'^E?PZEGVTLR7\>PWX3/%Z#Q[4&>%Q'TZ5_#DC"[?/XJZKD M7#PC%'6=1S::-L !-68T&6 TJ;)Q.+*(*&_J-!]M*!=HC(],K+^7%56T<+L8 M/MID7N@-F!>L=*3?I4(WP2Q'81:C 6:Q$?VJ?S!HMZB*W*,J=XC]GHLV3XC%MY@$#?@/*G8+MWLGZ1:[]A\VG[P5@A)]X2D :=1Q=-@ M^_ (@Q"2'?S=JL "Z$Q?WGS$E?M>N:;L\5AECJ*J1M1^B,&*JIKN9TTO-WD3 M-34[U]2L],<[AY*:-<94MQ?BT$J(^0F_-L*)VAI16R-J:T1M3<<(*[+]=THX MV@![U%2X7L5N ZKLZ@U'>#H?C1?2)J1M5=HVX(0V)FTZ2)LK&VK#APZ=ES91 M=U CU\ML(&QOL%RO6$W8%XXK+9&%&)= M/+,X#3 +=I97^PFCR+JH$&[>'#K6%-0T^[?Q$5G>V';H6,=$]&&CBB MTW00$J?O""$1E347<>6&AF+SC7G6?=) ]4W)%[H%C#-.\P@??)W1&-[P2&?E M,2CG5HJ+,;B$>2,6DV'S+2GKFZ7F?]0C"_)%Y6LS_'&:SI-X'>N5EE'R_ M(B$,]IK$3^0Y[_VZ,*=1E%S-$W"'N6]MD!2&C4S>7C-YKI1 ^:898Z!KUJL+ MKX+AD,Z,11IFN%7\%!D.58E%;$/S#$/S;<_T3,OV D4Q?<]WR+_LWN">%8JE MH82="[&EUV^_DL&Z%5[;YTI7 EMS Y4:BF6$9N#IH6)XBJE:CF,32]M_&8_* MP]BTK(A&V#$-9K[4C@UG)TM>%,-]#[G,FHGY)!^B+HJIS]OT932?Q*S%';N2 M!G@WC1Z1FG!/U?].HC]\FK,V9-4#I9\CU@\2;H'OL2>>QU_Q<]5I3HHC A?"Z&D.]ZUYQSL:4M:-KYQO^1+65C!*RAYX MP$0)-F&#W]@NS5JFO24Q:P-W-Z04>[XUUCAMUO!QU1%8;+&YKJ\FMM,L;I+@ M4SGS9\;+]_"4MW'J?Y]9.T9/HF $C7&$V81VF"EY) K:_INSVVE<*LLRK[F.I%)NOYJZL MJ30O82K_'6PQZ!)*NBI+.U97G2XY_17%GE]/Z^L-B$U;M^7/M'Z(V>P-=%VV M#L>?K;58)SOC/L.L1JPWQN%RF[=(EPT.D=[8VAGM9H.X6J_:\F?U!H9LNR*1 MY,2))!G<'&(W]S!+1TLB)GFE!0#"1WP?C^[R.5=3:CM:?X82^',#(KAU__M& M_1@6, HC&MRGWZ8+5ELH;11*W5UMB/1+W>U0;'K[V-P5HH:T:]%^W?UNVWTO M'JZ\4FN\2=)T6UG5T54;T)*/8JLC*'!Q4\S+A<11A%A%!'&CD<8IP=^MP9-LY>MVV<+9VY)1OBV?O M?]%@*0H2;]#-(MK8A5C'5!++=?PV7<:ZHJDK&.A0C$,"'2+P6(LY/B9^1DE. MJR26]3DF,OX=3W!6RYDR**TB -FI(X"I0%:+^P&TZ2W)ARP$.2YJGPKH*GCZ MLJDU5?.$4/.YBDE&Q.[:R M.VZ71+:2-[.%K"V!V*M>=O75;'VQ,Y[)$< Q2T*%NRR. XY MC;F=9U=C2I MKEKL1Z@B.OT1P*\+^9KG,""2YZD?L:LQCWPY0:@O?9T]EF2T?!M<[1%,,Y^,@:&) ME(^!R\+(1P^:Y\5AU ?^2+)A-@(-R M\+F-2)2@Q;0T+FF)%^>QAPPAD+$.NFRL>D(J,)@$6%OC^!,;TC(]!*PYD#RA: MIN-/!\Q/0V JXQ08.'F0D0I/-([Q7UP>^@.H5_"BC&)(BOE7C4E1T QI#[1: M?A*\*N;4C="IPPR3 &C!?IO>F'K 8X^\D #S3F#6SY1DG!CYPMOY"J,2F:[O M=+;3YRP,'^:?X1-Q=/Q!&/^9H#F+XRH3F?K-U!MT41!OI@8&UYF5E2'/'\M) M0P*,/@8>^\%X)'Z6_J/!36$:NBEEY2O-V$8 O_% QJQM:V].1B]@>8JLF); M*]L#3CF=/CF76.42"/;3O*0GP9STCF=#FK]3EIZ&D3]$D8.YI7!#6>&"K(QB MZ'^/TX>^=+- N]H83>[:@MM:Y)LU<]F-D'.UNKK)X'17<53^LU0_:]BGFKKT M1!:T.9#AWQ3)R_0$2BL!X?>C<74!3)MBQ1%]!NE;?;"Q)(KK*RI99=C6VC/# MZJV1S,6S7ZP)+#_!C=]E5O-QY71=K5UO\#DMJ&3TI7I%2W]+TP!U[$T2?(3% M3QXBL"]X)<.[*/=A3P%%MUJOI-N]J58.;I!3:&A2A=J4^$9H*('NZI8:&$37 M]-"@JF,NUS=5+V9BQ",)LP%,:RF6#)SEXJS5:K_MPU@&#&"QIS>"8- M?2-1+$OWU!\F\,*'B)9%XG?@X$3^3N?4ETJ:K^ BDKS \G%PG,%F O<_F/@[ M50I=*DWN"DKC*2$8I_Q."9I^N V_8L(P!-4V$N[ E^C$P4*WL^U>UPG"ZT*+ M=)278T*5*U,[[(-8U*[L&@U#BW4>!5)(F9"R52G;DE&WKY09X"^KBFP[HG&B MD#(A9=H^4A9&/VAP]1?-TG4"IO8&K!A*>R,D3$C8*Y>P+14:>^]BV/X7=C'] MZ'@OC6:)"*#7UH%>CY_ZVUZ$X!\D^7N:YO06\3[^G$0<'E8D]Q[9AMB2(S$] MR<4ER6CP;I+QH_XH#>K8%7IC=H5H[=5I?MIQSUS/3ZM\@]DTAB9XYJ)Y9D,+ MEZ9UD"ETT.O@)ZM9'61U30==_&G1AS2#/Y,R3=9_E@J$BHO+O)K1&%9 E%\> M5XC4'0W#B2(*#9ARD[;BM[\)! MNV_R3M,!3,%=G>0NW6Z#NUS!7:^"NXZX]V'.;[?V/A'=;?U*L02M7WGQ ?9S M@O=57BI\OO03U^8)=$$[L[.CW5?W4-94>P--D76[J2X Y]/G60BR$.06!-DY MDB C:I J*YH09"'(0I!/(,ANXVF(9N/I D*(A1 +(=X7*67OO=CH#715-A3C M8L1X$3!K!0;DQ O-8!LX*5=_=A\%:!Z.JX2ZR6B3QA#43)W,H4RAP>'^,@*7L M1H970;+L&;\F(VQJUI?^%^84(9#4(S[,+]*,XTDA8%>>9A#R>3K)GALF<]Z6_IT_T$5>: Y!5%/-A#AZ% MB8T1M\SGH!J,&8!"^<1#^!_6R)'!A?2ES^E6QBA!A'B2"(;-2-G]O,(?HDA; MGI0 G_RY;ATWP%S-3:-$_9I[-PPQ0T03/YW$0?5*X-'RRA++B"%((0PN7 O3 M#LECFL&DGTL8^6IMYE'*RF;G6,:_4,7/Z+2Q@GV);991R=9#(6W3-/OBE(G[ M3GI?J:UUQ*,:ISPE^YKA:@'CS1!ET-J8NZO^[G,*M&,R8/],K+*/E^14(8[#6)G\ASWOMU$=(K2J[F";C#W+=NQV%X M-+ O;@@%B%/)!/F:P=/A53 %A#/4<)6E0W8>!L M%F0N&%LC>-3MQ?HG^P.\UAL8%!BKS,J_&:$;]QQ"H5=%Z;]E:9XS:MZ6T1/VQS\PZB((N@=!;WQ_,IHPY.95KA4$K4_0S[18 MY<\;%N%K6XUW+PM07'F47,ES*T#[2LIHP1&+S'9XQKY*J+.'D1L"'ZZR'/K8 M'/#X(Z?A)/X4A8L=!6!@_G4PR;!'QRP(8B%>V$98[P97M;&5O+13]U<,'Z2Z M6^I(7HCJ,;-RW8FZW1OH:SKB=10X2$B7D*ZC]:4\0+SFG(QY_V*=P#D([+J: M2[I["THA:T+6.BAKIQ(U<#_7B17B)1OJ>>]CHN#L10ZK&FWR1ER8@3*,QOOY M5+NBWQQ&OLX*Z2:W23N.VV0AS++5B-LD8(MVU[%;DG"W>POUDG,MK'BS97"2 M.P1M)/CJ"';R_HRUT4ZNR6I8DV7*CM:15NZ"R[JDO9B%6).A=%;DMXZANJ:[ M1*3]Y5Y(&0DH9H+S+.0"_V2LTWKP_9(,1>-(AJ+1F*$HP(EV5[5;@-4:-Q3- MWL"67:&1FB/#AB37K%F"LQJU"%W2K M)NN*"!^>&U_5- OW9ZR&S$);Z0TT2W9M$3X\(RX[%9/M81?::F]@RKJ('C83 M/6R5S3Z4P =4BBG)=ZJY$%'#W>Q#YSCVH:WU!B)H>&H%NP6E;8]<5%M'"_!@ MF$41L.FV^;<_X^R>96D;L"&OME@24;_.,M&I>&A]^J!M8NY*4UW@+\9\.T*< MJZO/V';?BTB!FQ-&+SJ#N4G27(YV.G':G6V!]>O(UJPN[9B8F#LNYSF#V@IA MOG!AKF6OMI[K:&-O0UO6S=5#Q]K!2B':0K0O6K1/(]G[1(@=<#!466LL.;Y[ MHMR ;S+%P3XZ3ND)&9/A$KZ;(4SGT0]I!#<,DQIH580#1LU%6J\>&V:_/I?MP MMX"5%."'8K#MPTH*",BMUEJ%QRM54+P+1I" ;!20C6=!:0'9*" ;NTW072$; M7T-^S^>U9G[;:3ZO!)E/4U::$C23 ^2HO8$J@/D$G%$;D40P71N/JS@:9B2< M-YZ1$"XA7(>?P!TB734BAOI\Z;F Y1.B=AFB=BI)6Y]7YR"@P]F@\EU\V>LA M,.2BYG6M/U-#1FKY,V9C2..B:FQW_6AQ)Q+IQO:IJH^S-. M#1/5!IW@' (=+;CH0K7/!NN+ 2<<#+/4(-=7MNW@B9Z20 MNPAZK=H.3"5G0PQ5:#MB*4UEDF.A4/K4UGLQ4#5(]R M2;&R)H)'77W&CM4< JCO2*2Y'$UR<%)^38?.9("ZBK**'W]0W5*'H/J$, MA M;LNV/$*E1$WYQJ:PAJS:J\'F?:M]A6@+T;Y,T3Z-9.\3=K71>90=O>'JXE9$ M>0WX[4JD#/Y&0!""2IVM;WI&,* MMR/8[PRE]Q\D^7N:YO0VE;YFU"?PI$^?;J^<-NQ$GQ]EYA@^,+QE/ M,G](AN.%0E%K$- MS3,,S;<]TS,MVPL4Q?0]WR'_,A#T=X6;%N%C+5CX\A.4&I=M.L?E+7LM;WU. M"RJ9?>GEYG3+VNI3"J_$6W.6 7R3!%^ N-DWZM/H$04U?Q?E?ISFDXS>PW/> MQL!>,^WD<.4(I 9C!96:HG@.46B@!2HU0E4C#M$\G5BAZX>.HWD]B8*.&Z-0 M9A/*,/!P87-I]L:-T7.V$&LE:.M;NZD.;H>P/5 $6)8R8.CL$7Y']IXD,(*8 M F-25:@$%5B3>.8B25B- @SG<%_,/!H>'I7[B\PP4RQXJ>'P*0 MKGQV?;!N=0M _=,R'-'L'6U413N**:]9MF.S@>Q7AAM&CYLBV[/0U M1Z8JO8%JKI;(5QH-_L\H?0$SG4V!JV5@ES'RQR.-GV6^U(RS!%M*3^J.#-'&UHVL6H*70>LW+,")$,_;T%#W<]L_S=%RBW+8>QFM2!RG M3R3Q*:.>#X9!5$BP4Z"AX1%4)["Z0] ^:886H53I-/AT3 HP2A)>:Y+BAB/E M$^_?G*#( _ HMJN#;DE@8\ASD@&?1XD?3] *E?Q)EH%F8O MOUHU(G #6#0*.BL*88H38QTN>/L!-'R!^XOAO*&,VZMJO\E?DI#K"^UVX)A] M0[//".9>=;H&<[]ZZ5F +]\L,#N7>ND38_97![[\EL2,$H3M'B_C_[<-=/B* M(I@B1EGMV'/[\[+9/-O%UQG01F_@J =7(-9:EHYGA[;*$[>E'3SF_2W&E3LD M,@Z/*EYJLUZIN=Y?/M^$GW,0G7]F44&OTC $]P\]MF)FKHNZJ^.>C6\1G]UV M)[9^7\)PK419O8'J=J3T98LP'=9/Q)AW% HD7)QSH>;O. = JKP.+0CW06 M)/S/Q5!MN?#*[!;BP3)/BLVWK$2T6@KNJOIB/';^Y^[Y J8VS1<89K,@W@.] M\C)*OE^1$&9X3>(G\ISW?EU,*HB2JWFJ[T"PK>'P,#Q:N@&7S@"/@!GW7(,V MH!E>!<,AG1F+-,Q0O_ZT?>E %;+C";0;;E$UL_X!9+".+3;F@NB=R@6QZN:" M?$P>8=II]OQ2RH>ZDO)!=$,Q[#"TS!#^]2TW(*:BN9JG!::F^]KRZ<[T-7LD M>FQ]5S?/CJ93QC2E1VR8&4@$'$[>LA3H"=YGFDD)Q6-"&/!?C!79A>7!)(5+ M\6:P _#(L=["WL']P20&;VDZD#)PM.E(SEU>9(,XH6=9BAZ8($"AZ?I4M71= M)<0@GH75M(N+?+_F. S;$<(F52:41%.:D TY8.R$M J>EU^5$71VC)M/1B!M M9=-X=@"W=#YW_3*';>.4M1RXE1!G=%AGFWW-V>W\J]YWAFLT?UBG'*F/^M$& MJXN3Q49.%BL_GN4I[.C+7RHMYL\2*WK4ZB=^_L!FF&"?PX8F/:1I<)2> WN? M6UUZ\.85-XW;$J&9&E85=_X-F?,S+;Z$W\K4WKKA&4WI#0Q'UG31'E6(WVL7 MORT)#<<0/Y;%+!M-5UZ)OH[[']FFV?&[BRY78).?_BW;1OY$F"-8*;8:%%1DTG5#6L MR>_5DAPF40:#EW75@SN^"HS9#O/5KJJZ.;XR@:\,V5R3NR5@9H_&$M4Z1O#( M*SR%$LE2W7#X1;+4(;O='G KFM4;V*YLF$UE8Y\#4:]X M*1%*6TF$Y4CT-%Q,(KK4&GV1]B/2?LX@U46D_8BTG_EX,GU,XT<&_L.Q)4+B1W%4 M'*6]H4A!$"D(-<,.G^#A7T*.>U+7;]&5WL!Q9<4%ZJXG*K!J=]>[C>'\A^XC!LSYDE*.KBC2F-K?M M<#CSI?%KT0F6"=HB.JVIEVAZ*1[&>RS+?!S*/L@W-4:L*M6V.?B+?+9*?L8 M>QCN"4E[S*9^+Z;OO*[X0WOU>8#0;'7$Z*@P96W)"'P?<*^^P.[QP;2_\"ZP!,6;I9^ M]LL66KSM&[ZR;/KW-LTR1(:K6OO](DLLAXE!HQ4IN_1#BGVCI)L1[VS&TTWS M@N6;ENU:;JI#*>GGN8-<^D"RA[3ZG$D0B:6;/$_]B/TEL^^0+#>,=4AU.X[U[>]?I+^3+(OR M%Y[0EQCPW-* 9=:CD,];ED9I$(51V<1LG$4IMMC:D%NT>">H%+1H]S)ZPWA0C9'/R --@_F^V6\3W-Y0V/UOVOG M_$?_K@_:+XY)EG,. )$ECR2*%X3E!:7G3;FAQ'6RZY%$,2OWXLA_PQN9V-LO;RZ;V!N8%ERT:,2TIM2F+6&7%<< 1//I1@@6!, MR=$?4EG2"1U4[XESOQA5;X+P,A;P&/'XQAV4&1G7EV0;]A2>%-->,=&]O731YH0C*DM\["[0>\R)E[< M;&"[\&CV)>2'Z!&);\NGYJM;$##P= LJ>5>9\:[1&Q1/Z9H>KM63I6K ^;7T M,_E%*B5'^EN6YKGTB9:HN]_08I!A G C;V.\CM_]^9;('Q,L&:%!@N<+/\,= MU%7T8>4K2[:9?YM;([ WT_IIL&=0J:E]1N/T"_%Y0KB=X M ZN\; 8+NT8B@2'"^UA+-]AXGD/*2U]YIZM=B,_MQI^C?0BGMD0X"PFWKDGT M5L+Y>-Z%G[Q$MY(D'@A%E#"A6&CY_2'Z@<[ $!0&\NK^@L)9>1OWS[]N-WE: M$ Z/Z7Q-**_)H.A6ND+[BH]=:(E59/+ MAMKSEMF"ZPK6,T6S@&^4;,M"RPW]YA6GM718[_@--]4-4X<5;DP]9FC ]@BN M%.P55>=O,B!#X#PG)6X!OV\F1*6Q:E;,F:95/(^&-2 MN(HP!4%RUJ5X<4XXUM(/YH]Y:8^<#AA?4EO.])8TJ;-1DPZS=/(P7&KMOF4I MSMP:O=D L;\H=T^$>5R(TQ]'+'69^:]XR8QG-ZCFQ4@)\M>0!%(Z*?("_D!& MC"FK:6;F/K\9?F-R" L,- >1J>=":4>L%#!<[(VDVJNG,4NL(/KH+/31,1KI MH^-,T06.U4<'_8PK(!JNZC5O)/'\IHZXMMY<9V$&],L#/'K'G;4+ MUV7@":9MNDO S-4[T"W -7_"'0M>]D>B!-;W]W-+?%G-E_8LE@7/;ZMI1-X8I#_ MTHSIO2?.QO+ZOR5YY-\DP;L(MX!@0\L>I?K_:I4=B]BELSU-38S2> M%*2RQ#V8K#'&NQNCSTA2(I[GL @]V!O@?<.UPUSZ3TZ7VPCFF*G- "9J&T$4S5"%-=?*4!<[!( :8_ MFO\UW(7KHQ8,[_",QKA7#/(R!]E0H29+[-7M3@LQ99DHZ8BV@3U_R44 ZZ9X M.6G\ZE8P>.2I3VF>?\C2T2T/7@(=OO#ST33)/[+\)_CH*Z]3NRF*+/(F+)IS MGWY.$WQAEL8PSHUKFT) MT1*B=3:B=1:29:!DZ5J7@*R$9 G)>EFRS'9$:U5Z, 7:/1C/]W20$]T#"+V\ M*\42M'[EQ8=#W]$D'44)!D2[%.!<;GW6P:"<&.+)AOAZ IO_9']@V4R94L^. M'O+YS&@!2]><2T1X]8,.N7'4WV.^'9U2T6S[BL9S3IU';[U.6N2/WOK)*<)CDO)1_'\+RV MO==7L'UM3\BN(%HY[@3?N%:R;!YI#IL<__*?43'\D&8AC=CW[QBJ7!+DZS8P MHS>PU88VKS,UH%X!DVU/33XJDV''MZ:ZO0DFZRJ3M=HY]#GJNL9E7S9S[Y3@UQIS\D-Y!L'W!G((YF\AO M:HPW#$F_NE]O4&'.:9?I=4Q'OXS*G0 MH_4JQ!*U?>?$)?F^/ M4'"S)=14(TZQJ9S_@J&1=IW]F6[-DSRH6LN\['5KVSH3E2G&*[WW;*LW4/IZ M4\!A.ZY'QS'%A$R]4IDRFI$I&V5*/3@>)61*R%2GIKV73#4C4@X3*;%-"9$2 M(K48FME?IER4*>7@R/1I9$JX]ZU?*9:@]2LO'Q)S6V+ ,4[Z=XP=SWH6+VBW M5[H--TJ;"]RDZ\5G2KY?LTT[2C,1FB;7J^4S/"&O0EY;COV\(*]J,]$?(:]" M7H6\-A17>D%_C5/_^TQJ#:X0@(8TN,$L0$9@2J133J*(%J$MO6#"\$@:<@^V-X49%-8+GX:R1X#]9;+R]1*?3+A)X3 M1ZPEB<+GTZM,K5*9\SS$V6(2%+FAZ'CB]U/GM+PS2CT[G1_/V/(B.PUE%"LN>/!1WEGQOI M+.C8O8$A*^9JCOBQEJH;TW9Z TVVW57TY&5NP&HVD"[*H/\0(V).SF#4C#DV M$BEA6=,OL\<*F=Y7KYK2X1N\9QVY=IOUE3:;-N*[Z_W5G.O_9*M==QY&6_-P M075J;G_52/S/Q>7K2Y6"S:,?[:O7IC29"U;'FEZ@>TCL3BT:=QH2MM565Q7^ M$93KV2@9E_5#UHU5-CW62AUIVJLS0V@_9?MJ'T-YMJ9SL&*EO[I/[JN+&N7GBJE+7 M%9]YX%_"VSE W6\T!M(&MVE>Y%5*& V^DF=$TLA7O7777O;67:+:"@E"F^JF MH86^$[JA:02A:?D6T%A=]M89J.\5>XTT/Y*7/?>U3O+V5R\.U:3@@JO@5AL& M7.99KD84ZAE!H)E&J!M@AW0R0G"_SJ[,&1D]1L8%A.1]34Q-VV(GS-AC?MG6 M;?'@(;G&ZC91WW31-*NI,2$HEK9F3&'],,JBH;+'I.S])E7+A'04;/,C.]JJ MQ[;/D)V3#%E]^01A=5CN28:%,"*RZJP:K9O9:6>G<9&9,JZ.RZV\ #U85+(N MD2>2!3F[%6PX-@6T%9! Y7=]Z29'N<=W\3./ZH4R7(:J VR"OS8I#&9Q\W<4 M0U(LN+-XC5\P^P5!2B4RANW_!] +AU>+E;;$M]Z/QG'Z3.D=S1XCGZY?P"E4 MZ@T;[GW*@56GW^-N!OOD_U%X:37GVHL.'I@M*]JJU;YHVSU%8,--20M$ WML M.ZW31\KY9#+V$?WHH>9V?C0R?86WI\&'-"L_PNO4!=K!+N9?!Y,,[<,9M<"$ MTOKV\A[.C$ADIRR=/ REWTD&%ASPH]6O'Y'N7^SIS_43Z^A+MB\CHD8#-[E";HX/A_ M3B+T%\!!F9=C5!Y#&K-Q%7 9&(3/I7I!Z9\4PS1C7,NTS.QU(-'\A56^+=[2 M_"(NVMSZ,8UL]L3K"$0B\GV!: MWJU8TI=1$H'?5UXSSXX/&;BGL$/"C",\/J>E6LO7['Y+VQZ'@L.=)N<*.9R! M96_<.]G[X,.9?!5 M2NVI8&+"?<^<]5,7M;'FJ[L9FK<9!GZS^A,O7U>\:\8 M-[ ?_X 1P"[ M>]Z??L$=G].DYG*-7L#9K1>H9)=T;QC]BC<]V-8$?"E@\AG MNW4*"Y ]1; )E;IA@FL=/^,FM)YN$GF U^" ^R4#HRI;O1;6(Y]X&!3 Y2<2 M[&O1:#+:1LJ5S>WTI+1Z@S390,A'_KPI0:/$CR>8WP'$2X&*%4_!E.&VJXJ% MI0#TKU^D&;#GU_5\RRB6E@$MDH!K&S-5BZ*7TS%A08^7B8>N1-O$LU_DPSA- M'JX*FHV0<*7F -L1J#;:0IDY7BIE&^-(J >J3=%' R=#XD<)7#6_-U5QKDK3 M\+UV,DZ3^8__ZR='4^TW^8)F838XBXRE"Y^/V'9)N07.7YVCZAO!WAZ-8XQH MP:X:T) %PLIHVIQPE;->-!^')&+[Z219D"5_ L3CQ%YK)O,(883M$PA:S1GZ#NQW3D7^JBD_ MS%G=2\%,_L*I=U:98=QZ8BS%WE0^+YPP5ELQUC.*P5NHMSF[$Z@QBHJ2%UC(&I>$1F-F^W(-M^K,4FYOT!K/HPHJ^)2&0:"D4OCY-K>2D5 M#GSS% 7%L$KNG+NK--&5V2W$RU/,S-QXRQQ/HWZB64LLC6V%%Z@S]W.85:,9 MDP=ZY8&N^7[%2'I-XB?RG/=^7718P%N9)^ .<]\JSV%XM.,#GH0:8 R9,<(U MWYXBEO1(.C,6"?MA_=@.UQSRQ^4 ]XQHF'%K_]2@;K5GCM$<*9'@F4 MYB%.HSH)C=!H9-$@J31RWJ9HO -EWLU,T:D^=U"?OZC2IPH9'I6.2]NA4LSK M56NZWJA8T*]S"KUZX1I]?KD[ZL=$^D"]#/:RYS(T6Y%L:OY@DRC<1RF/LSZ6 MBX!77\$/4_H$]I]TCT;US!U'[[HZ$F8N"LTK__H%ZXW;AHN>7-VSQ3M_2(-) M3+^$GQ=Z6-U@6!NV=B:A*T>)CN(NG\_I"B46):87JJ'A!XKC!UJHA89C!JIJ MJ?;R42)W^_'4G+EC3!'DDQ&>^/_%HF*KD0!Y+>/*R^&%,C8W"SW,:":1RF-XNA M.'.\"@2 ^5?S[:]OL*WOK)RH7QS^76??;54?L&_,]6^9=L;OU;ZZI[?@6+? MZ\Z7!JO"--5]!R0&>U&#W>VQ6ZIY:K2*WN/2-<5TW/X^3>68LU/AV"R^SK9Q M%BW? <_C4LE1N8+:#D7#QXTAS>/$1]TBL"18;%-764VFM;91D$[U4>?42WP M^JX"FKZ0&O+Q\X?&CC;X\>7'!+:8"A\MP=[GR][F MV;(W:Q/GR,;Q^\1UC+^/R],7 ]FRP_S/5)9?@&5Y&?3L!,*\U$:*.3'HPZ + MPSR8=:*,=9-VWUXMSNZH(%]\7YR_\?2H8_2_V6EWW@I!_5JV9ZNU[9FQ0/XQ M69/DL,ONC+T('55V#V^469L7SK.7^"ME<+N3#!Y&/VAP]1?-TG6\;?8&[)1< M>R-X6_#V1M[6NLG;.RAOJS?0+5LVS>.W/!(,?@8,OC=LZZDX?"^OPP831>T? M'CXX&8]?_'G//Y@+V?:1SAE*[L]GY%CP1=Y[;W)Z \>187M:$=M?ZL8).A33 M$_S9&;_@0/YTP7;29<=:]7L%?W:6/\_(M'^)/5]T6S6E,;=5\&=7^+.#EODB M@^YCF6LJUOOTUX"UML>G%Q_ROPDP%:LFJ(+:3) M;LR'2\7%U/=VQ_ MA$A1Y]7^2*T+439EF5D?I-7F1@ZB>B\BDAE^J+INH!F^Y1IFZ!'%UAS3]JGO M>H&EZ,N(9#-X#>EW#A<\XI"$M7L;;7US-]'MYK&- XJXS]CNBW=J0]H\,MH0 M_LDX0[1"UKR X^_. [\6J933.,8F@*SA&:+_CDG$OBA %>0APVF/IYW-$&\X MD9@X(K [7E)J.X\63XA/"QS\'1XT)BANT9AAXY6-3D:SU9("T#$EIOQLR,,( ME%#F#Y]GZ'J\95!,'VG,@BI1,IX493.&$7G&V4QR/I/R\4LT@(?X6>1AFP8: MIT_7EPMZ^ F)Q#6P>BU]\1"IDF'3S=,LHR%"3L+F1%@8&.CRYR3%?ZJ%0W[A MP-*\0QS_/.=I!@$&BT&+5MWZX+.*.2*:[X$HV2*1M&OI(Z<,@^M'^B05,:94 M8&S(6^X!2=C=DLI)R9#E9U2ND JG@C25&EFB$7L#Q^+$_@<9:Q; _SHOJNG7 MTA])NIZYD"))6H!^S[+40\Q9WAVE9"V0>7+!H*,,+#V&Y6/,:;]\IM>#$E:_Q)L%%8;X[TPA]QJP)ZYK*K-^56X1]A;ASX$,:"9(5]4LVN 1+D,?*[4"*X^Y"IKRA@V3 M-3U8&B_[7GTSSRBW:1(@:#[V=DR8,ESSJDTD^[5^0#],,=^-B MDLUU/XUFWL>K8KB[+Q^^E="V4=FBF;=6S9_(.&^3^:0KSG[WB# =3)A92*NV ML,RVFA]NU6("U=C<0V!_1-05R MHFD(3WJ94+P)!^PF$>MPRQ@/>^/A,L#-]5HK&ENZDK\#@CXR,/[/Y0MOF 34 M;6BGJRQ] Y:QB8:0AG:B46N;1SWK%'PS>0!)*^U+CS[K6SS65!VV#/BZOHQ]4P"F 7N<;UUY>4YYI+C-Z Q9"F MW5ZX S!5T.R?Z5XUI,FF09: ]9P1 M.:^CQ]_'6N',#*OJ[FH)L#'V3AMGS6Y%&^ >0=4<$60R3G TJN*7W5W/QUM]"HG;ZE:656D;J6U1)U#SVX3O4J$92&=79-A=YG]JZ)B M>?8@:+2R3R?*.,2DT*=A5J4JC)\Z*=7L=N//^B MI_OY,\1CE#CMF#KXVI-K+SIW]L6 M=P4I6-[AE_!#51O\M2Q7>?^CH$D>>3%]G^"S61WQY[0H&8<&'V+R,.,,8]<* ME"./P^P-/JXK=ER&Y-@ T5%':PN4X88.2I>X(:];-F@@[J2L*$UUY!-0U5UD MHJTG@2^STUR"/,>L;26<7Q.?WZR'O9YA(H2*..RL MJKE]WF&18D.8ZT*(A1"?^JRPEE?M"J]:B*D0TQ:.8QO;;:VF4D2$& LQ%F)< M\SB\":_::BY%IP,RO.4\O6I! I.D+XN]N%)<>6Y7"N875[[:*U>:JB]4_IUC M)\BM[5^[V970>J&_WVJ'MOGN=JQE'G;['-&53H!E \",8D\V'!8-6 ]DDO,> MIF&[L!8S>I'[$^;JQCY&K;N90W?\-6E;P1X0.)$CXFL,UR>'U&8_: MLFONIK:$&9WK]!=FZ:CJKW?C^Y/1A#^#]Y+VT]$XHT,LH7VD[#55;[PZK>C8 M&*/59K'34ELD$SQ$NI(26NSVAFG1+VL\^&58RLNZXN.TT^]']H:*1=:I QW4@;N:X[9'AU)SBP:K,RJC-U#=E4$M-A*5 M.3>N$="^5*U8'OU872]I_Z7B,K@D%/77;TLOUSJ4,GL#TVBDPZRY)26K&L5[ M/NUU@[%Z WLU@V/G95O4!/@8'&*43)A6XKH!7Q49#E6)16Q#\PQ#\VW/]$S+ M]@)%,7W/=\B_;*6W1J$L=K.T0/;+3]#==5F8: >U5*H&'>^O&HM>LUT#YC=K M@HG1A+F[RI1Y?"/ +KJ,!Z\GH$4RO J& M0SHS%@DV)A#BGW80#+!-63M84%JW*/\)YON3P;H5KB\YQ^/,=03I#< 4II*J M]:5ZG7>_HBF6)C=)P/H(?TWS(J-%Q/N_O:4)#:,BGX7K5IOL6C;7GJ"::'"# MMK?C*ZIE^;KCJYKAJ[IG&Z&CN;87^CI1U'"Y*>^WZ?NDKV#EK4%'F5^/)4W( ME>#65[ZP@OHQEXP]\3K"YNS^#HNX2HJNVX/W<\;"$$SEC=LLN,')ZCZ[D&OQ M\?.'!5@>8 "/9E_"&54841;4YH%.4VF.[$R8U"G-V#6ZJIA,.-T M"8=7^G5^^@B>"K"]- 3S/GYF]D,.#DB&_@T=C>/TF:)SQGMY_P$SK/R'_+I1 M KP#Z4MH4(HA3IZ3I"X%W-X@3=;,/^#/!T^6O8 109:>AI$_1(<&C)._:-EF M_!CK6DX/=6\6>1-\[CX+C 9.\91NGIX_]P*^T'WI_709T8.E($F(Z82>[IA@ MU#X:HRU6+C$9C[-TG*$WS>Z7/(+^(SR-

G=1CKQ&\-2)[B2/LEUUYU!4\B?>WU&WU%' MXJY9B!-)/X:$K=(8YZ:9MA#&"+-'92_&GK^X*5'=8F3AY9Z',YI!BH@'48"$ M_(^\#(:QAY,X8B'UM!(?#B>8W6EPIMW0OWA_]?PK@)\W/\I*.NE X%UY7OU? MTX)H_>_M_X-BO7X6#^ -^-_/*_ZO_\N/O7\/O2L@/[TZ)?,CI[4/H/V57_\J MN *^?^7[T5629-NQREX]+(,!O:O4CZ\R+Z@?$_],DO@J#9(K( 9_:@JG+#4K MFAY](\JWR\8K[_Z:N-<6J:;N"MS4J^BD#=(>__9['C7#OU6#HSWF!KH9[3]G M&L2Y*:K:'I9>].]/,B>U^B*7HBA7;092F'(>9X1 )N66D&">T&!I(G39A"ZN&WHP/-3?9 MTI ,:II!L9+1O+4']=>O=S>]NZ#U%:CYT C,48!U_)[7,J*.)8LJF$Z*IFO" M91;'HS#^=.$\ZLSN1?5HO&:8U"I[;*_;XNJ+).;<0SR%.Z%KB9((>44T5!MKV!L UJ9K)J'O@J>D?QI"XE@ M"1;S1T\Q;"M'=&_L:?- 3[%UE.MY\J%+.ZJTD;WO^4K\I=8S>A5OUK5X6- P MPU$>Y3 *> 01\1G, @]#%G _X3S"'HK,VJHHS#XWQ:'?%J2+86_IK]7J]8D# M3]- T5L=-5'A#'/'HL0NW!=T8M& S7H[%I6YWZ@GBP8LYQNSZ RB)_#R]:9: M?"DV;7+5=[[9+&N+JLEBKG4BSN[+.GO^#E>;UXXJ=H=?Y8/_R7%UN^*+T,O2 M( YBZ/&00)2S'&81$Y(P\1@+XXBGGE+$L36*YB88Q?>+U.2;AC!^SXN6J3\D'+DK2]FA(I-5=78,L7:!D#DC,@6)MZQ5A)Z[8L]3CS6KD] MTOX/6$'EP\XZVLT!*(>M3S4O#KWZ9+,WT22GG75=>&YFOLR] M>&K)!#(I6.[B=TTNS5\ '(TSU%UVR$B\JC?18\U,4J,-W\H]C\Z-J1:P:U M*HXV(QG44@SD(H*.YJ9834>UDZ!73:3LEIP:G?4M:DFI0G&F2)3RZT;%5G99 M@/I%5H[>G9N>(XN&](C4JJER#,RPI+"!B6MG[#X<]DNGG&7>M&3*\8!3EDHY MR\Y!B93SSQGZ9)^?GII;(+S\@-<_/B_+/V]6=8&XNE=)=W1Y.(A0B!F,2((A M\HD'28@3F >9'_LDX5FH59)-<=ZY[?(^V8#MDO?*'%#!!<@%&Z#8\:%9PD1U M-12]K_8Q=NUW[<,K20:29M CVHD>H0F4+4^KXJS3^ECUH#CRKFJ^;JIO]UL/ MW^9MV]K5PUU5YL5&EJR1FLQW_E W4[HO=_V7.&OB%X(@0%F0I3"+_!BB.&<0 M$QQ Q!.&?!YY'&5Z@>Z7DC0W4;?/D91P6YY PU1;'*A1^SO.I ^ISYM9,(J% M%58UMJ9<-^=VV#1+9F"HV4+9F@UW,4$3FW>V #RV_*R-;!B_R_X05J8<_'-9 M73^6U:9MFK?(@C1B-.30)X%,02($DL1/(/$I3I(L8(FOU5OX[$QS$[U]VC3C M><^"J28.K4#DVK1404<_R'>,EI$8.K'*20T]S*498''Z6)5MPYA:E)@>$*E M[SQKOO/^M.X^]R8@AS?D[=S^$*RXIM]_!&H2>X2$>08CCC.A"),8IC3)($U0 M%/ \"%*N5!C/(M 3RMP&YGM:6:7Q>8>PGU,8(Q MR86D]O,(IJ&TJ+T$^XB1% 5*VMJ9\>Y\2;9T"/,=#MX[#&# *9=XD/K[%N_?_T5 M_U%6PM!CSW3SI5CQ@XSAR/<9(KX/DU J7ZGX(Q5F%XQS'/$H\!D/E5*P#.>? MVY;O9P5U/ #R"FHN0,L&D'QHQ-<8+,NPG)@ ;-=> &6<=5*[K4"O$=_D=@DF M"G(2!#XO<=5W=:V?'Q]Q5?Q3:GIKO&R6YK%>FJ=V:00Q_*^68I[,81P,?#(8 M=KKH)W.>]T*@+AC&J#+S'2^_\O+ZY:'.2]=LW7KN_;D= K+,\-VG6_!5_'?] M(O3J!R%^ZCS\BUJYGH5O6-C;0LZQ1+<#FFYYYD%43(LSGQYTRM+,@VP=%&8> M?M8P9$3&4*FC(8^B$9)WFV%7FQ/_BT 18G&3N*HSC]E/Y-35NY MX[/0W_!2YN]]6C'9RW.1D8RC)&>0I3R#B"048H^E,$Y(E$=)@+BG=-L[-,G< M-F]+)V@(;7)9/\F*H()6]:N;LY".W]_8 ,KQGC;"2.LN9PP$HPN=LX-.=JLS MQE;_:F?T6;.3^9>R9'\6R^7UBMT(TW#U4 CAT53PV56VV!FS:18EL3BB81)& MXN1.L4Q2\RD,XUBEY68%-Q+);D5484M#\_[Z@U7015^\8FM,YM'D$LZ%$+ M&G+;R@%738^'\R>%@26DBHXUZVATPHDM)E4 CJTHY3=-.T"YU.D5H M$J*TH_;CG.XGD%GW%5ZML(0WB. M>TN8#F00>G G-BE>;\20' &"8X(1!'S(99QAR3.4X0( M$G\RY2B#P:EFIZ$UQ(*.VLZWK6AG*F [++/L(N98.)T%RZ2JR3!J&EY^:^A- MY-#7_^3TW/5*> QZYH='F,X)K\3)GK]=[0U]U[ITXHDE5?6DMX_/3MA)_Z_X MO;I/O.-[6(@9LNQ:6HUQJ^7,/N#/R'?=C3&9J_J Z+YG^O!79M;79UQ4=6.L M]Z_O&\O@^P_.-[]4Y?.3L//:,O(9]5$:>9#DR!<&%PO$WQB%241($*6Q^)]6 M$IG*I'/;>I+FKE,;>04MW: F''24FSFTE=9 S7*RC:SC'6X'5&T#20U&M(__YU]TA;6[O- M2F@3M3*XKOU0]S_PZO9)#K'^10RQ6=^LFCNL?_#BX<>&LS:DJOZE="-N65RD M>>@3$B)(?=F1FOL4$@_ED.8\R0@E&0KSA7B;E,KWX'/A34<4]#ETZ.&2-'(& MWCVOF2S8VURKZ]ZJSP5?U%J?]$8 !%J$KD"#D>Q^UKD?.IRV<9;U(W7X!M@=61;=$W-;?UM>D-GP M-:VS939LG_/IS([ 2YMA=9[S721(B#C%B"60)S2'B 849C3.8<:X'T;4"R*L MY[L^/]?<3)5^[D]'K&D?JV-@%8\T.W"Y/F1.(.6DU:4&+-9[4!W/]$8=I\ZR M?+Z_U/E7S"3&5[Z1)=7NJO*E8)R]?_U-2+B;U;9@S[5L4%]L"KY>^!Z..H7'KL=AUA9%^HA9DDP:$T\J MJ/0!.91;!B.8-,4K5P]"C7CL8M.$#O=8U%6%KE>KYSI#J?MWG0NV2'! :.IS MF#,9O(>\'*:8Y9"E<>+Y&?,SSU=O@*6A%[@G M=EC'1AT5WC:ND9R WR4GH&9%UREHLF2*3D+'"^'::>AB#?1]B!> :,NG:$+" MM#[&"T Z\CE>,I9^P-"GJI*7H[*T[PNO7ALGO&+TT*EWYR;)!(WEBI?/Z^7K MMG7MGI^EHUX]UN@D9,,BR09:CL6-,E#VXA3&4#&*73HYX&2!3$/L]*.:!I^S MU2NW7WKW-K^KBK+ZSJN7@G+9X;*1)(L\IRP-8@\*3KF\_\M@%@@="$<\PSS& M0E]5:C]Y&1ES$QM]FN6M^9.D&JP;LNL^NNLZ.74CDU"*^BD=^_K"-5/3?]RO MA&.1=+KU[N'2U&R EH_I>O#J8.FL(Z\2$6_H3[,79ZZ-O6#@E_CZ+$>XS:7^AE<%7S>&FK#8?A%BJL++K^5&B*,O?"-VYB)( MH]1/DA B*FLG!:D'"8X3F&(O2?R,\(SDRDX)K:GG)D,:XML* PWY,D)MTZ;E M"LF"P4/#!EC5?(!ES0AXU[SPJA@>:;!*"IX+9]B[=KXVL-_F8$LYV)(.6MI! M0SQHJ'<&LX:_PAG<$SDK;,*NYZ@P0F[02Z$WXG0N"B-.]_P39B.8J95?A)GX M4']UW\5P3>?#QNO17K?>Y4#63((0X]T.88)ZG M'),X2[1*96K-/K>C8T>\,,$[ZHT,;KU%B+"?^!YA,*(D%_I^'$#L>1Z,HB1) M@IPFOI_HQ$:Y6X0)PJ/JLK NT58S )QAZ#I\8/<-[PB_:GW4VQO73=G&[M?D MV[,4C%"S9#WHS3VI16$$RZ&583:(OJNF'NW^\>%OY9^_KIZ*#ZLU$__>!BPK M.FV&1YF;Y*^I!??%HSB2KX"@&?SZ]>ZF;D%:"-0X4W?;C, W[L"QAYQC43,* MFN6RB>K@&'ET1H:>S+>CQF+?RZ/XAID^V=6_$NMY^\(KL=R\O4E+.,FX%WE0 MZ"B94%O\!&8X2V'NI2%+@R2.PD!'=SP[T]RDA:0.; K5PA'C2*JI)%;P<2P3 M>C0"Z7*4XH$[N)(RC".$,Q7I]&'0F MGYO,N*:T>A:;X@F_BCF;DL.\I1Z0QO&DZ>/06@LU$>,*8<=2IR,;O.L(E]U2 M04<[:(D'/>KMB2(3S"Q))ZVI)Q58)J 'E7-A$7UV1= MUR74;8TR,-2,MLZN84J9@RW!H*,8_-[1[**3B@)$MONK#$WY-EU7%$ XVXM% MY5W#Q@VX6,GPS]O5=RQ31]\_KXL57Z\7*,F2Q/>HP-@C$ 4DA2G*"10_9$F& MTI &B4&YX'/S*6V5Z:L"UZ'0[QZP3"R405EU,6!6O/#UIM@\#U7;UD-;3>9< M!-Y$O18$B>"=)+(&[&.Q?NI$C! \'<$6>RN,0&*KB\*Y::;MES#"[%%GA+'G M+^B!\*-8I?\" M?/GK^[^"S^5:QA4T7K]7L.[1_J__*PW\Y-\!KWDPZ'*P#[.J:G()>(X%1$/0 M%;C>;*J"/&_JJA&;4GHHN(WLNG$0;#8KV)]@^N8$)QD\V8S@])-Z F!=;63Y M[G6Y+%CMH:C31:Y_%FOI8(XCRB*8<"($0,9DS1B,8>!C/XNPGV>Q4L/N\U/, MS=+?H[))E!):M"!4,65M ,SA;6X'(L?;W =Y2T^#L#0%A=O][:W^-=N:P\, M/,G6'F>LV]H*3UY:'$I8',6&?Y&A=(=ME9H<)19D(<($090@L>43+X!9GB0P M]^*]6]451U!"<0.WZ"L,>RA=4 MH%(%S'I!JM&)WZ@^E2H@Y\M5*8]@U@!D+?3*NFZ>3/ HA3G*V3?^R%F!E_\H MJ_]:\)2G+$Y3&&61$&8!36%*&8*)EW@>"7GJ>8E.%Y"1^>8FO%J*P8LD6>ZM MJB46_"FHU>ML,0;UL'1R *!CD=1A]_<.NXY>T!$,_F$=1+T>(1;!G*Y1R$6@ M:K<-481HK'?(V#"3-A!1Y.FPBXCJ:V;*Y3 M(A!1:3J&A,/4BPG.A'3.8JV4X9.SS$WJ[H@$-95Z"N%I(-5TOXOA<2Q3#Y%Q M$%4R"($EQ>WT')/J:(-L'JICPP]?:DR.UDY>GRN>W)@U.,I8S&D(:8@I1)&? M0^RC&.8H"+PL2H6J1LULS0LIFYMNNRZ MUNR$BSFAL:M2U'\]6-7?I4%L"7/K]O*E=+V1.6T)SO/6MJT)3%7 )UEQ8?7P MF[#YZ\ON),H"/X\8]'+B0Q2C!*91Y$,_P#BG/!1;1>L:\6B&N8GH+8% 4JCE M,SB/HJKN=P$VSO4^'5@,=+XSK%O3]P['GUC7.\/>L9YW[D%[C*S&!,2DC#V+74A/T_%3(.- M6CIE!8.6T(->Y$N%N%8;BZ0F3!Q@_K;-QK?$RX;CS5+LZ'?;:'P<-X==Q@19# MA%$*"><(XIA')/ 3E,=Z/4'UYI^;*C3LQKL"-0^@9J+N:0M^;_C0KPJLM4IJ M\L\A]HX%H'W830H!FX!GKP:PUNQ3E_\U@>9$Y5^C8B5X:>?RXH7#ZL/SU7%5_2USEF3+7"$U;EB];^6C0W*_A#R6IJ;7_GF M-K_'/Q!3$,$NI!% 4(9G$:0>(S[GNIS6>88]7L&. MV2L@&R:5.1 ,VY/?;A?$DIAW1.2DIX%;H \/#<>SF07P4+S>W*SR"LL&FE2F MW=Q5)1-_6W<5"G(:AY3X4!8D@,@31P7F&8<^0XF?,!3R3+TJHL*$KA[9?7[E:O^>Y."J:YX3TY^M/ M/X4"*N8H5KAZK2/5OPH(Y#U-N10S/0C[A(L/;[.(DS3/,0H@3N(0(I2D$&=1 M!A,:YIQS3*(@UDDC-5-N)HOF6*?8L]T:-\Z. M5;#CM5O1]OF:W;K.>X\]T/%GM9B)ZT6P5_O$&:53ETIQ#?F)RBK.IS2L7ERN M'NYY]?B1DXVP'C_@IT(>D;+\RRU9MO4OUXL\3C*&4G%@I-07^@ A,(VE=9<& MW$_]T$\2;_'"*U(J%RY6FEA'D/2G=R=/=MU*F: 1#D7J">)#WT<,2]':1IC)7/:'>:35(G>(EX'3)0K)UBKG9GV$71\ M_-7@28J!)+F^G:RI!3MR+58CUD+'5AEBM4FGK3^L!<11X6&]MPWN\K[A8GG/ MZ8]5N2P?"KX6L[3=EM;[S7LBBE 4YC[,F(\A"IBP WF2P2S*O8C0&&=,J9J MUJQS$T"2[BO0I_RJWD@=\1K74Z,9/#6A+%W^Z. W>_BD/-MT5H"Y_>_> VB\;B/-3D59U@,$U8T6CWJ0H MY0&F*<4>74:7:G M"K:"\+8+H6.QO8W3_$<_3K.)4@);@NUBJ"&G[6(YD82^$%,]":V.T*!L5AAF M.JFLSM.>/-9XS7X UC=.9;!7D1?TP$,O[X6N;S_EX:)8PG81QJ]2V=CO2YG0^'W-6] MH1M^ML'^K[V(K?H,X;A:%:L'80UL!B)ZWOHC4;O8F.?2.S[73L5ZO6OX_@N0 MG%^!T[VJCSZ7'22-BT&";%9H@^,LRX;,)"'.S(#I!8HXH,,S.P$55 M5S.Y63T];]9?^ M?!JU!GOLFA*] 0>@5:P!Q4(E' Q%;*P\!,TZ8W MC+-\E,J@\(K!_<5G3*JB[D+_?Y%X5A!".4>Q EH0]3+TIAF-&$ M9BQ@G"J5)1J?:F[R843802'H.7$,,C3'?_H,3)WM6#VAMZ\I/Q8O%IM1'6Z:='7CW(#M=5 M^>?F1UL#?Q'&*8_R/((QB4*9YB_+N24,AC*0@^(DY&KUFD;FF9OD;$@%':V@ M(;;K#* F",:@'9:=%@%S+#@-L5+>]XI(#/00%2,TFI7XRTZA&AMW$E&@R%PG M!U0?UQ,"5#8EKEX7O[Q?<.(A'$>RH;FLSY;S#)(D\(6RE.<^9EG(0R5K:C?D MW+:V+)[:P3OS$MC-56II#)V.(CN^-57E:/6-"U MB[[Y]/.)RQ*-33/FV_R[^.DZ;Y+PFHIY/O,S&O@1##)&(!*V"\PB&LF#-T5^ M&.5!K%4HT0Y9<]O,+5?R1K7E"_08ZP6I78&.M[8!=EV/K\>>685$2XNM=N\R M_1(Z%DP3KIY!F3&;8%NK36:%J(D+FMD$\K@*FM71S42^L,0HYZP.SK]9KY_K MV?/Z5KP?B[GP!7X!"3#TLR"'B*8,ID084W$89!XL<)3'D>TCBE>1AK MI8MHSC\W,76F27F?A_\'?#+H!ZF[+FIRS"':CN69!M#@=\D":'FPJ.X9HN>L M+_SP[&_<&EX)FO'N\&K#Z,D^3ME"UD)CGWYR^KPI7H1RK#E5;E;EAJM)*C44A^62=0 =2Z%Q[(21*>@& M->$61(\60 ,W;&*<5L90MA,M:J-/(DBT&.W$AMY+KBJ@])L;WY?[&=3-/?R" M,N)E?LAAB*DPZG 80Q+% 8Q"'.#4QVG"E;K.V21J=G*);\!2< 3P0;/HU7Y] MA&*L/H*[9516LB9='/>:EU)QBW[IP>..WS,HM3 M:(S]1FZ7+\6*UW4R%EX>I6D6$AA0Y$$DZQSA% 4PSI.8Q23U:<(F=;UL29N; M7+=W@3^QVV6WV!.Y7HR6\'^0^T7RUW2'GY,/Y@CUN?AA=H3]S_+%' %JW1]S M/(-^0-O'-M;Q<[&F>"E(*$KV6?QLO?!IE#/"D.Q5$PO1GHY=3B=A^]C6>7$N_I^ MB+N7ISJZ1-OO^TT"_V-=N8),\7\=)_J!:8Y$6JW!V,2)Q ABF'* BR,>GGT&4C7-^G*@'._FFD!84PC:MN7[ M.UNZ#_#Z1WTKN5I;U*B'H;'5V?[T)-.VJ1]D]*CG_/#3>F)A76T6G0G:6J!M M6C1ALN!4[$&,$P11%E%(:.;!D%(2L)@@%"LEZI^=86["X- 25Q,"YP$MSX\[R8X>9:O;S.,/FO:-?WPLFUB^ M]C.D+ E1&E"84?$'"L,F4K7/XNUJC&\ M_];<-N6.NG]3-XD/@!@WB];O[Y(T2Q=.I_DU,G\/AIK,_#W-0M_\ M/?.$OB/Z0[%YO:XX_E ROH@(3Y(44^CEW(/()SG,2$9A2G&<$4)R'"@=BX<# MSVWC2=J ) Y(ZM0=S'M@#>^\2R!P??JI<:_E.#[%JI&O>&^@R=S#I\CO>X1/ M_MZTC-$U8V(YU[(:)5[^?\53_361D&9B]V'HT2"&*,A2F/DDA31@49(R/XV) MTEW3\#1SVXAM89Z6U"O0$ L$M9H[N-\:H*Y"8-M2=.];DXC]J$:E.-WSY<"Y'CWM^3UH;%F.8^Q M?\'5\\EA)[MY'F*J?_$\^-PER9O?-WA3>P6_E$V=^H^EC#Q?I!Y%$2$A],4. MAXC+VVB4Y)!'U!-6=Y#D>H&>@[/-;9NW:7U;:D%'+OB](5BSRMDPU&H*@#4 MG=^;&6-GF-,HQ0H3\X>U[RV_QKN7KA:UEA M6>H=UW13O A+Y2 Z,<"Q1\7_H(]1U :14Q_!F/,DQRCS/*34U-1L^KD)FXYZ MF1.VI;]5GSL.-*-;])9#3?ZX ]FQ0%+!UTE\Z67(V0J6T9M\VB :(V".@FO, M1KDT*TYF=S3I6UZ,DS3W?!CY00:1'U-(6" L(91A%.21,(N4PFX&YIB;S#K, M]9*$7I8/MX-S_$;4 DB.98X!/A=DPATA8"$/;C?F&V7!'3%U/@?N^%%#->:H MGI90FI;/,C+Z3F9XE:NA*@Q=V8Z%G^64I1&"/$,8(IKE$#,6RDM3\2L2L@AE MBTTI6\JKG;Q6R-(2(5OBW&V1>SD'6/=X^]?_E09^\N^ &Y0$M+1TW M(G!!9 M?"A/(8HQ@23T?2B0093@((Q)OGBJ,_R$)EUMYKJ AR2Z6\;W_*%8U:4/"%[* M5)TW63?J!VG&@AP2Z:) H4]A&B,"4RR.XX001IC?KMNG%9OWJG4$NG36L;=> M,$6;8_(E<.TAJ9F0J34M&Z#E8_J:4':QM66MV"%J6BO&*I!'UHW=T>VWU/Z MUS\^+\L__\;9 _\%%ROYP_<\+RM^V )5=D/V>2IL)4]6#/ \B+B0U#A. D@S MDH4QCGP4*GF,[),V-QOKMU7%\;+X)V?@0= .A)"HDW9RP1'X(5FRW/=:*< K('D#DCGPMV:I)'_;WY*:R:,VUA-VK#;#?H*.U)J$ MS:;CM!F@.AVE#6?0=_7_6JR*Q^?'KMEF@A@*A!$49)[0K1D-94%[!&G@92CC M4>RK2>RCD>*G>3V D?]_GB3>>A/LM%W MS9]^0#^'Y%I6;?_TLZ)W54&5"RKLOS6W+?7I)Z]HL>:@IDX]C>0 B^&M=1D, MCO=631A0Q$$KD^0TRT:9) =#399)U86%A%VF(YM+.8.:^*=CSS3(JCG85$O4;:^2%,W5=M;,]M MWID*ZVNRWE28JE^XGA]B1OMD%UQ6YCM+6^Z(EE:;T1L*D%B[_1R8:N([S7&F MCV\J%=XQ^[*;[;+]EF.*N4?%L4PPHM+!&D'B\P22),->*E -<*!S-N\//[?C M]_K[]T_WW_4.U / U#:_.0RN=>CF^'.QNT_S;&D_'PP^Z0X^S=CAGCWSE*'Q M>O_X\.OJJ9"5++5+=IX=8';;L3;HVC+^OWZ]N^E5[M0T<$_BI6CK7@K5)&;O M:90]+ S@N7P+#0;Q%"AI;1\7FW6WSCE MQ8OTW%\S5DC/#5[N)M-6X/1&G=&NZB@'.]+!CO;>KG*D!9H!9TM-U)Q]6CW2 M#)HC1=-P&+/M=5>5>;&1[M$%YS2-"0IEO9)05BXA,(LS"HGX) .<13A$X>*% M5Z14M19W@^MLH/X4[O:1[#)8M($(LE_D7_3,QAYN:A+'# O'PD2"OOZ>)+Y[>_VL]Y((L&[JA:FG/T%/ F"35*2]R!5V_*7 MP>1XZ[?XU-0!25[=>-5VPO$IYJUF&>]-\ :IQ:<8/)U/?/))LTTN1I#WQD)H MO!2,L_>OOZVER^1SL<(K*F1RF\]7\/4B\' 24B^%@2_3-/(P@BG.Q1]QQ G# M41@'N4Z&C?K46K=1$V31R+.NC@I]]RRKO19VA=Y1*O48@)N+LW=?RPT'F:;!,@"OFC2R YICZ;/%:Z?>M/>-EM6;<30L M29:!B2:5).,,'TH.A3=,^Z]OBJKVG]^)Q;\7@]3A3@AQE"%AYU!/YLO$:0() M]WR(:>SS%*$P]K7BT$Y/,S<)L:,22#*!I-,HLNP,JFK"X7*L' L&$Y@,FH@/ MH6"M(?C)229N[CW$Z'&C[L&GS7N!%!LYZ/IZQ3Z4JXU01KA027C/!['S%6=) M3HF7,1BFL0^1L(%@2B+Q3QYGB;"#&*/:C4+4IY^;T.A17WOGMO1OP)<"DV)I M8/YH+HB:7'$'LV-Y0]3_2!.=40Q6 48W4'%RO. MNE*U;1)5R-+8RW B-)TP@HBS"&:1ET+*DR!.6FF9ODZJ@$'9G: M2LXI+)65G L1D+'&7K:($R0_5&7*+CC MY5=>RCS7SRO]4,&A0>:VM06QS^M:J+9>1GCWZ19\%?_U6T&"SV6Y694;G0C" M02B'][Y5%!UO?TT 7007JB!E%F X./)T088J#.X%&BJ]8*H82(J%LEZOZVU^ M^\0K+#61G3?YLZ#^.W^H-95[,?UJ72X+AC><[38 B3+"$H9DY\1,:!-9 C.< M^1#'(6,>\M(TU\H1L$/6W*13OS;J/H?R)UL>0<-D&TX!Y-<#.D[EKNSSJJNZ M6%EM555GZC5TKAI963*GU6_M@FY-%;-"U,2JFTT@CU4]JZ.;R?[>-8VP0(]+ M7RW2-.-9F&7W\!7VZN MW]]\N;F_^?0=7'_]"+[?WW[XC[_=?OGXZ=OWKHCFI__WMYO[_]03QJ/PJXE9 MFZ Z%J ]4NL+K4_#I4>UA9\J%);$VNATDPHL5>8/19'R>Q<4LVN]=H*1YZH2 M FW!*$KJ)D9^2H2^B/P(I@$-($^"4 @5$L<1TZY+=SC+W-2_IHY9XX$WJ"-W M!**:?+@8&L="H4%EZV#?DFBY,-LY!&S66#N:8_IR:>?8/%GY[.S#^E=-=YQ7 MOU3E\U-=:+KN"-!(D6^;U?7C1O6R:628N>UH22ZHZ05-@>T>Q<+"VSQ7*W#] M*%,QU&^:QI ['Y)D!41,%>.=:$58? MH$V3TW7=(>?=\YK5/ZW_J1F>=QIG-2WA8O0<2XKC9J=7H*;179O3/0@-[O= >U:M];$V$'0AQEV1G:ZYE23F>UF$/2M>,,1# 1553=-N%[A MY>NZ6.N+I#/OST[X5%6YXN7S>C_XJ:-;0]:< TQ!JEC RK7\&(;)A;@8 <5, M,)P;=#H1,,+6WF8?>U9_6]]7[+JJ/CY7]?JI;N;]M^:VA05IXI]-TE9'H_J^ M/4!D?+>:@^%XC]Y7N"[(HX6'UIX\S;K13CP8:K+]=YJ%_JX[\X1^=^M/PGC8 MO%XS)A9Y_4'\];:Z+_]<+:(\QS3(, RCQ(,H]V.88M^#280I0V$8\MA7[6Y] M9HZY;=&&3-#2>04^*+>C'0)R>*]:@L?UP7H"&?&% 4FFG<[6(Q@8=;8^-^9D MG:U'F.IWMAY[]++2S!]6:U:QSTO\8%*7>??VW';L<;EA&9Y8"(!4 Y('D!H_ M9"\'R?5%W0 ^X'=)K(-"S,=(7%R%N3?DFY1@/F;I7/WE$T_:[[UZV/9OERLC M8W6O;S_)+16WE MK3XQ1?_>?#\2Y.@-$ M(G,%<"Z^_.E:S3IHGD4>@1_)(G)<\A81D"40I15$84,YSK'->*L\\MY.ND5IM MX.[V;-.NN**.O-HQX@1/QP= 1S-XUU']%U"L0!N8WE"N5-/&I,"M'EKVZMXJ MSCMU.5P].$Y4R=4<0/_F[F-)GZ48O*^$_*MKZG_C3V6U640,12Q)&='72R.[PQMOJ7>*//FM_BW56<;:K'E=$EWM[+<]NY>W=4DE(N M9GV45H[^#=X^2NH7>,8 37E_MX>-D]N[DS!<='FW/^+D=WIX?0Y2E'B0>#6"0<,Z"T&>(:U4\ M4YIU;GM_1[2>L: &L9JA8!TXUP[T+;VP)OA$-SK[A=*T0+)D&ZC-.:E=H 7# MH4V@][)IU,Q]?4#4URD?\8;K!<\]#6/6/7*>\.O\JB3 L2>W[ ,881 MC60A,\0@X9A#CE*2Q5D>\4RK,,7HC'/;[-O>D$\-?9=>)QX";'J-> %L;W-] MN 7R;@1("[>&9\!Q=EMX.-\;WQ*>87_\=O#:F+&$HF,!TP+XO0&P(13L*+5;\7T$#HOEW<_- M-'DM]Q&63Q5N'WO%?O"1;*#U>5G^^3?.'O@ON%B=\N3*<(\TIIF/+[>5(O.URQDV/([WVR6]>W A[9D M'TV([P4TA3ZCPKRD>0HQ23R((T2"0*J(H9(:.#[5[+3 -E+EJ>T(7N8 MZ$5 MZRWM;5]"/U34!!40'Y:B=G%T[9;J0E$DH6!'*?@P4C%1%S/6.E2;K+=IL-N; M MM"!:# -4A<:2PC@ZW:3*H"KSAXJ>\GL&2MR78E,\U"?13H U=4CKR 7.[LLF M,!I78M*VJP>[PZ_RP6_\4:B68J;;_#^%#;E@"8I"GV5"R< M3AEW@=.>[NYD M/N-"M^FW^H."LVGS&M,S>_<#G\QU+.L\@C%/HD32%/$@P1 MRG-($LP@]CR?4RI^ZBO%X:A..+?C4M(K3\J&8M"1? 4:HL'O#=F:+=Q'85?3 M]FV"Z?S,NQ!'@SXU:N!8ZU,S,MW$?6K4F#_N4Z/XGH&^_WW#^5(8%.R9UMV8 M?^58=E^60JT-:N61+XOO4)AZJ0]1).O6DS2!/,.49G$NOC*EN""UZ>8F:FJ" M04=QG03?HUE#NQL'6D'WM@J?8^%R@-SU/G+C(<,F$&IHO5:AG$B5'8;4DD:J M#,R@FCD^RG2ZHS)'>PJA^EL&8O?VA5?WQ2/_CI=#+\U@J M"--+$7(=#R#!D?2![PTX+8F7(J,A(R]%:"*QJ(V4GD <0F%0!IY\<3JQ-T3W MGJ0;?-#,A/W(J^(%;^H8!#%%_15\*];_=?VS6"\(#A(4)#YD/(T@"DDF/54$ M/L_>MO M=6;;ML7*M2Q,UK1T[?J@T(PE*6$AQ#C)A+B)$!IAVC@+R"=[\UB_P7L.LRM>/732\>APMBJXN/ M"Q*G[?_C$.2CSD$NYS(.JI+F?5<>Z?5#67E_G[&4IRRC&(61IW:H3 MY1#S,(192%$68I*$"=$,JAJ<<&[G0$OOM@;8*^A1#'ZO:=;46T 2:5 MYXTVN=!OA/Y2/CYI;^V#-^>XH0_LAWZ[*ZU]?0B2TFZ^ )\)]O -/:W\ADH M3#?PX7!3;MLSK!QLUG-/&99*JRO;W>9UP<1"\C;0A^5Q MY/,PDQ?4OM#Z?0*%'>##+(]RPF*:QYY6R0*E6>>VZ]LB@&4..K+EWR7ALA%/ M2[IAJ)7:,J@9 M;!=2PR+.&J7U%-!R=;%=64YIRVHIH.#$<5U;1>-B^^^K%8 MTR_%BM]L^..8,^?L>S/ZYO?*BDHBEZ6,I1"JKJ06U.1:+BUZ$HJ+2HONCSAY M:=&3#)TJ+7KZ0;V/<5UMQ,>^6?+;_&;%BI>"/>/E/XK-CV]\66LVZQ_%TWWY MJ6XBUD4E/5:=WM_W*A>J)X?86[2>.^JL$DV5+],'0!JW&"T@Y%CP=HC$G14 M AW,M S'<4B,K,>!82H!RE8KDU4)ZR&OH)79Q-/U7=.Y.E>" M6FOUPGKH75PRS S%MZX:IH*FC= *1A82^\X>ZDU@I&[:7RX+)0K3W_.?FO6#HOQ8LQ!ZBB KI'(00 MR<:CF" ?>E&"H@CA@#$MEY@I(7,3W%TE""FO]WF2/VG;X]3%M%J^&A?QCC,] MQYGQ^JGYTJ98%=?6N,DBM$%X0#($:HXL.MXN!=62+\Z8C$G="=>BQNW@\ MXX8(AV5XNX;1UYM-59#GC?S@[LO]$GM=A;T%CRD/**4PIA&%"+,(IC%.H)TE:J/EZZ=FJB=<$4< M2]S!DN4RO42&.N"?5^#Z8+7.E)>TVM7!!L;V.C]<1,W4W2%L0'>B@X2588W3 M/5Z*M3@'/I?5Q_*9;/+G9=<(9Y'Z0>I''H$))QY$+)3UM&392I9$C/(L\4*R M>.$5*362/%X5)0-/'>D6 MX54[BVR!YOYFISGVA5+'BQ'F'"W:S^H"?"J%L+H+,0W$:AM"3 M5260;#:&<9I"GZ#8)WF8X%BKH,29>>8F/R1QL%@!VI"GFVI]&DLUB6$!(=?" M8DLAD"3*!/4/(S@9I"@/HF MR_CT+!,G"@^R>ISK._RX_2YAG1IYU_A/]K7) M.RP/VFU%@(QC/Z!Z9 M=VWMAW?+QKQ;->;=!O_4K/1@:RG5Q-4;+)!KW_AXM["^Z=TR=V2"-_PYJ=]@ M&?,)6H;I4#6;KF$&4.HT#C,9_M*28Z@W->5;)BBY0>0FBT]OA[ON)YL5D00O+( M\R/(,QY)'S*&:>1AF#&.Q*L<9RC0V]"#\\UM?W?D;NMGX9]<>XT8+S'.6$^3#V&9=5,C.8^A&"(<,1Y1&*$8KTW%\G MYYF?WZLE$RPEG4U.5%[_J*YD^5!QG>I%PQBKR:>+<7,LA3K :@*O=E7-[$F< M000LR973%K.0!42K!*+*I/-3WM6244I250 M5>OM NM J8&*KPZ2-3U?8')7HNV+1AF4 M\R_/Z+MOB3Q3^N^+[7HHXY@8I;4-##M96MLX:_VT-H6G#:,2ELOR3WDVGPAX MV$6J++(DC3V,4QAS$D-$20(QC0-(0>$H=-$@00QT$(8^JS MB& 6\"C2=+58(&M^9EW-E3AG:K; D_AM$^0L.0-YS1K@+6^ ]IF[ K0-W\UK M_L"K 7=^X;JQ6LY G?UXG5,@88KT+$%/NPO7A=[W;!FJ:.[ M&ZSMN9ML$#6U5\HBD"><5S9'-_1Q-6F(WWA=^*$IN5$G+*X>I'$BSIIM^Y.[ MJA1T2MW@;/[BSEJ.$$5!1C*8IIG0:N.0RK_E,"#3?B6*'M.W7WO7GM4W7W9]MZS; M1;'EOG5$Y;1N7K=0'[F#'4]G4+WIT^JEJ,I577!F*:?K]:\;)U6!EW?E MNH[___1S(SW8PB[ZM'I^K(DN5U_+35L#6IRT2_RP0%XH ^_%X421[-#HBU,K MQ#%D&.<TOM D9N<[#E&'0L@QW/H,:SF'!$ M,(5Y%J4013&%F2=#A+T\(2'Q2)91>T& VWGG)AA58M8$\39# '=KH.KGL8ZL M.$J@6>RD:8C5)/.!NUAF%!!Y!H1<5>/RZP164O,>ZS9L B<^8UO'/O^*? MQ>/SX\V*5C(N^F;UH7Q\+)I>G(LDPAPC'\$T1TS>*C&(8Y; / KC+/5\@GRE M_&&CV>HK:*%+T"; )&]9N */#1,R*;'F0A9*H3L^-(Q_[052N,MQ";MC ML58C+LSM-J3G\Q;QEG[0,2#^ CY,@[CI+Y">Z%+&^ GJ7'*8(#MY;: \Z MW56$*;][MPO&@^B=*(P7BT]U_[%O_*&0:76KS5?Q*2WR("$I3D*8H(3(+A01 MS%(_@8CS*/9XAKPX5CDTSDTPMW.AH1'LB 222C49=!;$8<%N QKG5^M:J"C+ MA3'6!T+QQ:N->)_+JIEO>\>ES+9KSLNJIV MI>X5VT2='V%N>_17+&:1]_4UN6WGZ,/<$?7&40/0#6]<>Z@YWKY*@('?K5;[ M5P/'*-=F8-C)OGVB@\;=X<^U>^^5$R[?U^YO6Y;?:]5MD-K>I;^QQ$ MX_O: CJ.-_4)8!QLX1$<+FH@?CCFY"W$SS!UJHGXN4<-4^1D5R.\_%Q6 ][# M@J\721C%<1K[D#,60)35U:$(AM((\K+83S*"M2KY*DX\.RG0T%W''/(]W_YR M*#7H,O#5+IA=0.I:=/30'(R4* 8*=P>-@K:A"$LKN7 642L=I(] MQ;V9XM ?:#IMX03Y>RK"J=\;QNO\P!5_C]><]1>CT4&$H49_\/L_R];]F7M! MC (6PCA//8BB(($XR@E,HQ0EJ?AM$FM5C]28>VX[^^]\78>!M(U#-G^6FD$W M&K"K*06.P'0L#VJJ84TVN,.OM6#HW1!<@99V((AWX'XV ,U64(W&S-,&T^A# MXOTW1;INQW2GT:1-NF:I(N9O29* MRC-/W5-)%Y(3+9:TA[@TH/I#N=ZL;_-O?%-4]>DHIUK7,8B[>T:FBTTN1O%!6M \SY@&BM4NVD:_' M"&->)&08DM(LC!.8AE$&21!3#_M>'.B54#B<8&[RZJ ?KUGWY",4U630)=@X MEC+R+)6:TN3MB\]A8DE\' T_J8 XQ]RA"#C[G'[ U\,Y!&)\S1$L9)E=G:&N6WSCL@NMEZ0"22=ZD%?IX$< MWNA6X'&\T[61T0K\&N3>*/+K](B3A7X-,M2/_1I^4-]34U\^T\TS7BY?97_) MO\LV96T+$MVP$)6QYK:#]ST7+?%-F].7]5_KQG\-!^H.'B5(QQT_MM%TO.&5 M@700::(#E9'W2&F"R;Q*.NSVO4U:[^F+DB8\[9J5=;I2?8XI"H[C-^1O?_D.O':S9X#,2!AT#L&HXV-OZ+AK"7H:8I?UK2,2D&_4RH YWY(6C M&6?N'#0XZ;=!:?+T91#^P?&TRB/4>1I!8*8 MD3%GU\4P7I,BSM)0R9$#%U^M %0)U()KID-#-) M>E_5JM+K]XT82U8P*5=MB'V<9YQG<02CB(40(>H+\]5/8)(FE'@9C])^L^/E>@(=-!)L(H&)9$S?EY)I4FH^P> M"HSQ%TS+#WT0JEJ%ES#_[^Y;GB.WG33O\U?@\#O8$84- M/D"0W,-$J%\>;;2ECF[9/OA0@1>[:Z94I2V6Y-;\]0N 9!7K10(HD.*L(VRW M6B20^8%()(#,+S&#,4NE+<"8PBSD!61A%.>81IR:'65=[&%J-J"FVJFE!%I, M(.6TI2 Z!K+;"GB!9^A]G2TR#C1$%[2_@H?HN,61B8@N*'3*1'3I03]5O%I\ MO9_W);EB$M( AS! A8 HPC$D&Q>((Y7YZH)HH)I=9[M\TP)<72#T5=/J?->!E_A"OND^U.3=Z_Z1.LM8 M9Z-6<>5[UN3R?OM#;!Y^D-6]CJ+T.^63:7*A[5*!I_3 M/&,DYQA&)(B4VRA@%J$0A*#C\7]/0MTC)W!Z@CEXF*=URN^> M]4DWIQDF*8M@$ 4"(HJ(2ET+8!+D<:0\OS@+++R^2_U,SQ.KY%+7J+R2&=!* M:$T<8E-"X2*V!@Z0#[P&=DHNB>C)%/+[X\GLGJD__ C/0^['9T^!M9 MK-1EX_WJ#)7'GJ,F2Q,>1YC J! %1#QE,(NS#(:*94-D6-T2S%?BNPX-,3I\ M,>O8Z&/.JX^YW?UPW[226T4R*M:@*M:1+\JGM?RQ]$TB9#@V9H=='O$>QWAH MH.L"]RI11J-<%8QM40A5#$)#D ?9 >;I\,NPTU&/O^R .#X LWS;/G/G;KWZ M^KP484"34'&];QY7VZIBLV'>SL4&IG9[(06%2E*@1(7AP89*\=TO5LK^F>?O M7$:NVZ1X VU@"V*&%_A;B>TI?Z<7%J?LG[;^KJD\WF5=T1Z=AY.[^C%V8SC\,G= -;BDI4J&4%>V'KC)89 MT/+ZUL"_2\UYO7I4E M+W\(_MMZS16?BB)6+,7F193SA(19'N:9\M@":1Z8M+9Y@2'.@X"1G(D(6UK; MWCZG9GD;2<%W):JM8>B'V-1(> 5N<(-12SL#._BTP#/-HJ1Y62NA?9H/8X2\ MF9+^'D71&$ U(4$ 6QJDD49K!@C.8DDD,069$T]/8X-?NC MBTK*C

54L[E6D0*U$$U%DN?_K1]W,"'G%#450EO?B[*>1:&A4AI!D46YQ#EE$,:I!3B-$@*6J19A*SJ M.+?:GIH1:8HQ_JV$N[S&]D)F9A<<@1C8 AAB8#W5SVCK:5*W6QYU^IY1Z7BB MGGO$(6SX_9JH9A1A6\W2IN(N:I(,)KA(L$AAB-7V@P5R(Q(D.4Q)(D+$LY"F M1IPCO3U-;;HVLNK%OB6M1 M2&\F9BK/%L,\00%,DRQ!**)9&EF5!.OL;6JF<\\TV_Z6+3=(W?B:.4'>4!O8 M@K8 :TGJF;3<"A1?\4R=?8T;S&2B]DDDD]%+KM5$;E?\3GX5=H5$ZI>F-N>5 M3+:E0QK]NR?S5:H//''/% R9*0*FQ(RW2B*) ;E=0*B#B(88DCE(8\1@AD;,\"9CQ[F7? M[M0FWQ]?OGZU<+); !GL0MS4'GCB[87RY"*?:MGI$+<>'\_]/97QP-D]\VLW MUU8N=N3[]XV*69"['A7F\2)6S^*(!9BG#!64$(@0X1 5200)RBEDG. @8@*' M%-NXN$:]3FWFM9F:#Q6H0IFT"G:.KQGZ9@ZP=TP'GM87(1R47=D*)4^>L5F? MHWK(5C <>\IV+[O9I<^+E:KPK8-L/A&F+T3UD7C$(H83Q& L1 *1W&1#PD(* MHP+'+*>4!7:FZ%)'4[,^G\5*HJ>]3*=KA8N FED7'S -;% L$+(V&WWJ>[(4 M%[L9U3CT*7ML#WJ?=^1/5<3*NLH8__"LBLA4I8+U'OU._*-_4\X1RI(BR1@D M82A4J>X$9@0A2*(TS*(H+#BQ.GTSZG5JQD%)I2,3Y2K**D+PBF-N!E95I+7^ M$?RSV/[X(99<1S!NR<^.R.LKAL3,HG@'>F#SHN6MR@UR4$E1L4R.K8]+,.3S-+(POE 8V+#LQ6Q<" ]T'F"#B M.RWF7%=ODP_3H?3%1)BN=USK.WQ8/Y+%2NYDBE#D*(0Y05C1D >J0FD!LS + M6!*@".5&H9;'#4_- %2R@;\KZ0RW+2=H=4_Y:S 8>'J;JN]0J>%0URL*--0- MC5R7X5#\TW(,1[^WOWI3U(XW;/M,ELO7+V3!_RS?K[^)I:9@K&^KK>N)V[0Y MM9EX2/Q:*P&4%N"E_%^:%Y:L7D&C3G.C;W[79P5X_U7@4%@//.,=81Z@<+D+ M@$X7C58=C78/Z:)^^YK2Z7U[K^#F4:RX)HQ5+%]!Q',6IADL1$&E6Q"G,$]8 M!O-,X" 7$4DY,G4+#EJ>FC7:"0>4=.9NP2%<_7Z!,P@#FPE#_:W\@K.Z.CD& MARV-YAF<5:#M&IQ_P'[2?1;?R;+R,^KL!%Z$(:'2!X]4(:8T@!D3,93_(AJP MG.6Q42&F,VU/;>)I\4#CEUK<)9S#K7_^78'&X#<&YD!83<,+*CM-Q..V1IN* M%Y1H3\9+CSAE)JQT;>J_%ML?[Y_+[?I1;':ID+D_*'SLY^V MY3P.LRA&.(0I2T.Y6$98;I])!'D0$A+&&2V84"K;^O%O]M2E9ZQ;!U&XUQ!F/P34 E MO[YS 8T&LWU*M@H>K(=*S3N@] "-(H./@%5^Q< C,5KBQ2 C8IN><068/7D; M+BV/F=!QA>9'F1[7M.08)W="]'_SJ&K'_7<= Z,(M4M%!B/*>1XD."4I@B+& M<@='J70EPRB *4)14@0X9"2VH^6WZ-UHXHW*S?]UMZ[HRVBB-M2;A72\EEWT MK5>/@MD=D6]D1RWA 6JQ-=W^#+0E5PM]BZO?8P"=/6"^PN@L>AXWF,X>DI.0 M.HOU769I,_4'LY;8S6F:(FYDK[S@.[04W$.H_M$2> M ;(UI4.WME%6*'FR3F9]CFJ7K& XMDAV+SN2HE5UU+ZCJ;E2C9P[CGVH+)9M1. %4,V,D0^H!C8\.Y1J MJOU?:BE_U3;'9QA@-Q3>0@ O=#-R^%^WLJ>A?SW/7V<25!R!^F@S'J$B"BED M699#Q'D"29;$$ 41HY1QD2 CLJ4+[4_6 #Q)^=SF?8.;8 3>MO,O&/5+LT MWX\?63\^;<0/:3,6+Z(R(=JY>" _Y4_50']1)SOKU!#C M5SXK,[.3R7!HEY,EYT'H:.,IN$AS]N-T>"7HNV!:;P'&$-U(WC MRG"0'UMG-61A$L=)$$"1%@*BC%*8A13!+,JR."6$8F(4O]+5R=1=? M-J=,?ZP6#;EI3D,2YS2%HE"W:XB$D,0L@P4F62#R@++(B,/"H*^I37XE+6C$ MM8ARZD&T>^)[QFG@^7\ T>[@&2A976AV>Y"S" 3SA^!($5\=2'H*YS*#I#-N MJZ>)\0*TS'0YB,0R?,5'YM[]]H?8^$O:.]O*=[^,-L_ ZE>Y.P.M^U<%5NW\1FX?%H[A_WCX]2\.U M_;'F#:,H0ZD(B$H$XCE$D: J]@!#1DA(PR#+,V;.*'JYGZE9'24IV$I1P5K+ M"AZUL!8N1P>F!HZ:'Z0&-B0:)"4EJ,0$E9PN#EH'6A;.F1_41G+,+J#GR2GK MAZ+3(>MX?3QGK%^' T?,X'&W4ZN_Q.+[CZW@-[(#\EWUJGQJ?F8M1*@T4*%0>ST4'/N6!/S[:T;^/V;W<%Q']C 64,^P/[W M*@R==L-N/8ZV-[X*D/9.^;J&W'S#KV*[J.H]J82E;T_K5;G>?%8?@+I15>00 M14@SS%4)02$P1)C$D* P@#R5?J+ /&;$B,O&N,>IV;F]P#I'#]0B@T9F)RKO M?MS-G#6O: Y]*7(ED-;^F#$XGCRP_OY&];F,U3_VLLQ?= VP.TW^OBE+L;U9 M[ZU;Z^>=CK;1=/9#9V;)!AZ0P2\E7/&?Z=Q*37'PH@/CABR=<@7(WH+> M["48.;#-&:+3X#7WIARN0;YL!"/E5O;*-F(KWCTOEFH37#8'T5E09!%/(4\0 MEXY<%,*L*#!D5+IX24$SE!@1F!OT-35+64L+&G'!3EZ+,_X>> UN1?R!-K U MNXR7R^5(WW=I?D'B#\"1+DDQ(S1#KO2GJ:&.^^Q$R7@SL3PU=<]\:: M5$VS$)VQY'L')XY$$F-62%,:QA#1*(=9(G(81@EAB&8)3RVWR&8=3\W,.M7/ M,T;9=$/L'[O!]\45>5]%6';6D1RHEH0M6-[VR8;=CKQ=M@/C=-=L^;Z#BZ=H M/+:O*MFFRH60CN17N5'?%6U7'$-S(L*(I4D(2:"240F)8O MA;1ZT6L 3G5=7=4T>T?*!9LSC@E.> 1I@(DZY,P@S;(44DI1@(,4(TIL'$G3 MCJ=FP/]Z@ZB9T]$PWU?F_:/2X MDO#M\N"863//@+\=V=N7'JJW7L"&(GJ[W/';TKSU M)+\M;? M@DMVVE$5J)O'K7DJVNF[4W.A+E8HNWE0+=?8VZ^!NI?;S>F[WD9CATKND9$B%UWJ/(8C\MU__\ MA^#?A3KF47_Y3A3KC8K!79*R7!2+.NBMD%/Y@?RZRWY MN:.6E3_^*YB!?R7J/T'EO/\KBK,9D-(]"46B*):6H6N^/X48!$DTEWMSNOX?\#&TY1SE/%"U#A>_#+>=GC-%K\W M'+*!E\N*1Z&3[4^SIRL-@59QUJY6,P-4:PJ.596362FK. +]+;<##8.G!=JW M=*,NZ0-!>^P$#-6-QQN;2UF&-SK95YU'W-!2W_O/\YC3*$H+& JA8BUY!+,B M#E7Z#"D*A'/&TJLO@;V2H&_&[4\;I@\ 3SDC9&%-&]_D60/G=']DD.SCB<^ M*DZ^G,M-59!)BPF+L$@A0IQ#:4 +&$6_D6)G>$G6U,;69I60ROQ+J1*?_:L@7,$///2TF MT'*J6%+-=;5=@]_OOMP");+\A;K35TSW?/&RX,]D"3J!M+H\,D')Z1*IL^'1 M+I-,U&M?*AD];S?1N5C,WRNJ!<.]P,GS$_I8M5Q>'?.+VG9\=/*=ZJ.3?]A_ M=*DU5YM]Z*\F%#N HDU8<:^]3>28:XP$5U77^OE>?*5!2"MYF>/XJJA*YXIO8O"R8^"(VBS57'$G?5[J5 MJO0V0RPD-..P$#R%*,89I"G*("4@0ZV,+KW5 M:&,;3C+P,!MNXR$-O4K[@I9//J)=Q@/<6.#.PN"/'WHP#_FGXSDC]VBT]VH'N![=X?=[%Z@(HI% &H<$LCC&$9'3B^# M(0CJ;&?3BV>J=DS+]>H[E+/\$2SW8CL$+YU'V,SE\8/:P).V@JLEY0SLY?0< M#-2)A<^XGO,=C1^BTZGPV6B;[C?<3(5>Z-\=+_0M7_3=Z_Z1VE751[M5&O;M MJMQN=-I]527FX0=9W3^I)LH_A2+4OUU53L+1Y?1OLOWM![GX?2*+3;55R(LL M#E$DMX LI1!1'L.,XPAB'(0)YV$>I%8[PLEH-C7?HQ(?_/)<63PL&[C_>&OOXI!OVA$L[J#VSK&\T]9LY=5-IW:3&TH%C>-U,I3;<0&ZYW<3M25/0-@ MYE%ZAW5@"U#+.P,[B4%+9+"7>>8MI=X)*K^4E3U]O@5?I1D,%\@J#5]V9 Y2 M>3SKE6+M*#^(8K$2_)U8R3\T=T]?=N)0]ALJ? M$/68ON=XEBB^JRW+5_&TWFREC3H7L441YTR$'$I+HKAN121-2)!!$M$H(3A# M26R5^�Y]2LR+OG4B)?EJ"6W?+JP01EPT,QO]@-?5Q520MVX@X?[68!D*_S M'(,>QSUI,8?@Y S$XE7'NE2D_*'^58&( M0YSA.(QYE/, V^2VC2N^E1D<(8?N3FP5W7<5YO0+KQ7X59T2:V()%>&J_R#V M2EO6OAKW\S SNM,=]('MMU*EIJ!H::3VHXVRH'JDHM,^^,O#-RH4]C%ROS1 M_*H#YRHL0 ,&4&B "@Z/A;G>9!A]U?0:5_AQRX&]R<"<5!)[&RGO[.NI/1"+-,>;* JJ]019 &K(8$AK$:9[%89@FQC5\7"28FCW< MZP#*G1* :"UFH"^&T-.H=)O#4; >V!JV8-[+WUSA@%H%E05?Q>5H+:07/@[\ M%M6 AAZ&D:H##3,<=A6#KH&RLX*04\/C512Z1N^#"D-7->049_-%K._$VCK2 MIOW:U.R_BCCY\O$>W'V\MPJW.8"BVWY?B<+0?NH> /]1-^=T=HV[.6AKS,B; MDHWLAU=;'BZ M= I+_RKKC,C L_0R&.!O):JG!?>L^FY<7@=4Z! [:NLP^X+;2WJQ$FW>=61K*@F'],<23A!#G69I+DY,*E%NQ#IGV/#7CL^-KV^R$ M!5 7=OE%Z0(2RWQ0\R$PLTJ# #NT,])@J@(8]M=0>ZF;2AHWR^7Z'QUUK]E] M-H(OMKJ@N,>30&<@?5'U&/<[+N>.+1PGY#G6#3@="/XF^ZJ+\7T0)=LL=/+? M/L#3_(RPIZ6I&29U:O;;S8Z.M*O0@RXI/@\+$6=QRF",BP(B02@D293# M *,"TY D21K9A*Y:]6YE8T:(//T@5NM'N3[+SUNOP%0)"039J,2J4G-BL/7C MH[JY5OJ 7Q;UGTI+K\ANC,P\H\&0']A 69:QT>(/7*VF#[4A:]-<[/OM*]'T MP6)4=Z:W$<>(__5*Q_?\M=C^>/]<;M>/8J.+1TC':QX$*3;=CH?U_ MGE?RJPXTTK%'I,U68%_8#;S@[BS"/U).T @Z UK4WJ,(CYD2!G#YRFOHZFK< M+ 0#I4]R!DS>L:^8\G&U7>S"E';)>(IY]KF<\XCG>MH:LME)6MSW-;**:W$-;,IO>AVVQ.?F UL2USALBI>8X*% M4RV;SH9'*VUCHEZ[THW1\X[\P'+9)JJU?>4P#'&8XDGY=+B!*0@9IDDCG MN> I+T2$$TYL3@C.]#&U4"SHJ PY:'\(D62P2R5V(J< M\9!0'DI%+:FJKX-S)([JHZ]2>V8;/?_U-5WIQ!IQ#F S=_=*T 9>F?9H'=2Z M]TA.?5E]7ZS49WH8EX[ZLHHG/-0=C[JM11\$W>[I+K\*+A[U.7F5!/OP3Q,* MGK,<\P0G$&'!Y/J$&ESS>2[Q+C MI?!VQL%T#,P,Q@#(#FQ$#$$=@,;*$BM/%L>TUU&MD"44QY;)]G6'Q%!G4M\/ MHA#2C>MJ Z=[3(7_0\=MV6\(U'9&!K6?'!4T/>>'J.-WXWGK6.M9%]N_&T MR%1]NW$=*8?U#<;7+L%UF!'H3'WUW.5X2;'#8'60+CM0%ZX7Q*4.+-9LN7/* M$8]($4":"*)8&3"D08AA%(:%_ ?G1%"[&^%6ZU-;)!_4D1E@JECDN@ E6=H6 MM3K$SO0RS!&1P6^_RCH;0$OF\SKKC,+>[J_:;8]\875&K=,;JG,/V0>X?GEY M>E!G6:9AK,WS4YMQTIB!E_* 1WU/K;J#HWO*N2(Q\$SK! '\K<7U%'5Z MK+U3;.FND=$B2(_%;L>)GOS.D7I9%1+5:VU-+MQP"^L$3Q+&/$\"# 6A"**( MR64PHP3*]0^S/,YRD5@M@YV]36V2-K+U980ZX&JV1'I#:^A]G2%0]C3*)@#X M(E#N[&MNM)(?)8MW\H_EG,>4I05(H8X#!*(PB2%A'$"$XI% MPL(PX-@J#_>TB\F9@T9"1T.PQ\YR]CLA,O24;X0#?ROQ@)9OB)E_HKSOZ;[O MX&WF^(F"%R?VZ9-7%'E6.^Z-^*'J.KR(_9V80 QLJZJA.-#F\,Y_QP @M1J$\=4?G#[K65\GT/AUK[T >+8^ MMI^6[8\S/DD\UBOQ5;#UB]B\?G@6#VNY!?Z_SV2Y*!9,'X=J">IB.^7-X];T MZ,.E[:D9T5H'T"@!^+-0?#W'>C1SMU&EMQ*=GY'H/W49>A &MIR#X6]U>',- MB$X'/4X=CG8H= T<[0.DJ]IQ(%13%S?E^^6ZE/W\OGI:J+,^J\/E@\ZGGS^]V7V]89IT4YX0[T^JV0'^ &MC6FF/D]&.Z'QHVM[7*S MXU&W]:IVP./6_[3;;E/M6N^+*D%LSD+$!:$,\C2D$,4)AYDH0AC$5,2DH)'\ MO\V^L=WXU(S 5_&R7KZH &-69<<5A"V6B^VKW9[O +^ 4A*@,(.8Q1E$ 5<9 MG3R$/,M(& 9)CI/8+K+=%<%Q0MKUV9)T+HX0G-7E ,!ZGR1^!:IF>V)7I :V MFY_7J^_P06P>00-6):*_W>LYQ3WM0P^:'G5'>4ZIX[WAV6<?# MXI2#]K A*_9#W*]$_8%'+(G")&8PB' !44%S:3MP DF0)X*@D)/4*!3^I MV9(_15DEOU5I%W)K:WE19P&[X0W>,& .?;6GHW/?'4;G[F,R9Z"6'4CA![ ^ M#J#YNA*TZ'G0!QQBE"2HPMJK^V-'9U.S3H:R@$=:RLF,7NF96R1=F YNA M"W -8'%, /%5>;&KJW%K+!HH?5)-T>2=2U:C/5YR8_5?__YOS=_(_ZAA$R0,$8@ )A8!@ 5 9G-T&UL[+W9EINYO=MQR[,@Y?MLU12U;;64974DK9]NF^X M, 0DVA0IDTQ5R4_? >8\,3G@YX\L]QXD92I%!"(^!"(",?SC__SCR^R';[A< M31?S?_H+_RO[RP\X3XL\G7_ZI[_\_>,OX/[R/__Y?_R/?_P_ /[W3^_?_/!J MDSL"Z+Y1> ?][\LY>+ MK]^7TT^?US\()N3ECUW^[?(?@I-"!V: 9U9 &9;!J\P@&!5\%,G;R/ZO3__@ M)#.AL N\PA*%(20HP2I3>"2<1MBV7SH;#K_CW^HO\2PPA]H>_/5YLM_^LOG M]?KK/_SXX^^___[7/^)R]M?%\M./@C'YX^5/_^7BQ_^X]_._R\U/<^_]CYN_ MO?K1U?2A'Z2/Y3_^[U_??$B?\4N Z7RU#O-4%UA-_V&U^>:;10KK#=>?I.N' M1W^B?@67/P;U6\ %2/[7/U;Y+__\/W[XX9P=R\4,WV/YH?[^]_>O;RTYBV6Q M6N/RKVGQY?X/?[Q>]^L25P26S3[?T#[^MRA=DBW?JA M6>7JXNI?SD+$V>:[DXS3R>937T0B/*3UQ+&BE?6!\!8(>9@D^! ]2(\BI2*Y MS.+VEBO)*Z)Y(X05IK]^6GS[D3[XQ\J&^H<-/S:\N+?<.5\.H_ORU'VDGYT@ MCT;$DL!J[^C I ).%CH_QF?+4LE*A*/(OKG:;:IORO/%,OVP6&92!-UBBY#XEZ0&J1].&$4 MF,R#3ZQ$:=H(_\[".^% ](^#8_C9"23>X7*ZR#_/\RNZ@"?*6N:+M) U)TQG ME2$D&4!:XZ7P:)DL30!Q:]F=X"#[A\/AO.P$#!^78;Z:5L9? #HP4F6H'!2= M,RA;(OB4-1B'+ 3KK<)&M\.=E7>"A.H?$D=Q=&14_#Q?3]???YG.\+>S+Q&7 M$V2.9YD]Y$(<JB,D-9T!E=1C28)1Z%AKLK[H0"W2\*CN)@%])_CY^FE0GS M]6_A"TZL"#K3%0=>.$XVC](09700L11GO>':'6?D/K3J3B@PO:/@"$YV@837 MY,@O285M&/^!^(\O%V?S]?+[RT7&"=.&>:,563XND%IC":+2'H301H>LBF&Q M 3"V$K$33FSO.&G'YRY@\S'\\3H3^Z9E>AZAN-"$Q6$QV@K(J"0H,H? ,6>@ M*)&X-9A2S T \\CR.T'%]0Z5%KSM B0OS.=(Y^H8(O+PD- 1KY4 MSJFZUP&,%)BB\$D+WP @#RR]$SA\[^ XEJ>= D-,LA,<8V(@M::;,]-.?&"< M(,Y=-A(EVA8VR -+[Q:^8L\/&?LQM2=DO*0_OEU^7/P^GZ#"S!2/8"UYV2KF M"(',;""KJI2@I;'"M/.ZKNAH^-89S/6]@21=XO5.LS^W^G7C5&M M$V,Z>P')HZ-=1 $A,@2CHL5HN,JBA2WZT-J[P:/CV&-T/<.)2SG*) V@J-8.=QHB*X8XX3!&&[P(QSUUW%UQ-_%W'-<\BH4C MB__C,M2LI _?O\3%;"(+V2K<>7"Q*+)T*^$Z)6 V9XG.FW"D2WEKN=T$WW&@ M\G#F=7+H?_XC?0[S3[B)Q+.H>;*DM%"3JE*);-@H,(,CQS=P*[WPO,G!O[GJ M;ACH. )Y-"N[< =>GBTKN\[?9BND209GJXD5G%GO+#!I)3$%"=*8&/A<@K\LE%I($YD4,IQ M<(5Q*)Z%*(JS*IL&$'EX]=WRI[H/1#9@;1<0J0_\RY=AC9\6R^^3Q')1: QD M&7,-I6H(-0DLBH!,1OK-ME >MQ;=#1#=QR /9V07./CP)4GNO+^ MMES\OO[\T&+6>G"4VB1/?7@XKOAHOLP MX_&,[0(?'S[C;'9)OKFFKNAH>.8 MXY%L[ ($1/B7FN"S2/_QX3/Q;?7V;%WK>JIG/3%,!84A@V6LIODXVHV)%HQE MD0L?K?*R 2BVT; ;2#J.3C9F\\B@>?$%Y[EF%/\R"Y\FF;/ HR"W27I-5Z+@ MY$#I!($ICPQUDNPXV^+6-(Y>',ZR0Q_Y?I*H79_X-A^0M]9S61-AFI M= #MR2I6D5OPS-1GV&A*--)(?UQRU",+[X:$CD.7+1C:%2;.:T[.-R$"0^.D M@9@-J^J,V",3ATRL"=H5+H_,SW]TZ=UPT7$XLPU3^S L:!O+,'L]S_C'_\+O M$X;6EF X"%E9PBQ=%??1I1;Y6W0T1_4*(29C-<;GZCZV\6YU?QV'+)BQM!HM__/$> M']_0-PXOU">0SU>8Z0^KQ6R::T>&G\*LMAH@5PO7J]L[V+6*_\E/;53BOQ_U M1];_GZW@4PA?)YN$N'IQO"V_3.>TV)1NC\5YQ=\5W#1+SEB%D$L@C]3)0K:F MMQ 1E4RD,X+?]E90PBINH'"QZ/FIP]EZ=?F=Z^.W#UV'*I?+-5ZL5L36ZUV: M(!1+!C#5EYWDJH$M'0CCP^;ESXK6N[Q-P3C=!09#PJ7B:<#N$6^BV]1?*- ; MFW#>N*0@N% +$HC^*#F'@C)&9P)ISVVVR>&8N4/(N- Y1K(/@N08-G> E9=A M]?G%/-???O[/L^FW,*/-K%ZL7X;E\OMT_NE?P^R,[EQK;8@&H0B+H$3@$*R6 MX&+B:*/RBF_+VCT$.SL1U@.6C@+ 8FAI= "Q%RG5JLK5;XLUKFAW;Q9AOGJ/ M"6E_<8:_X?KR-=I['[*.M4Q?T,9"Y&3Q[LZ2RI139;,L&/DA%[4K<.'U4 MAH/:,%+I &YDE&ZX\V_3]>>79ZOUX@MY(Y5]M*6)1J6PF$#NI"2CH 0/CDP# MD#$GXX7DS&T+YAZDR+;0,TXWE@'U5RO>=X"CU_-OQ);%\GNEW>H<10AD(MA0 MBV]$C5%%LBBUX>+O^? 'J2Y9,4A;H M]@Y4G]9@]3<,\NRX*PU2/;'1_.'Q0$-F(.Y>S@T%NLP:P*-=\O%5URN MO[^;!6+'/%=K_VN-:-"?ST,:^ ;#"M_7_JMOR]]7N-GNBT+H),OM[,O9K ;= M7B%M($W/I3C/+[[4_-__VGPYD62N)4Y>;;1(')$Q@-?:@RF)"\]\PNOP;R.\ M#;^K'JSP)L&#S@#0@;9\2_P(-7O]H7U/5$XA><8 ;2 +TM#1]JJFMAMKBO1& M)+TM2^>@*W8;03U8[DV V([M/6#HVF;X;3%/=VX;F;.*F3Q7(EL!^2(U@RUQ M,+H4A>3F%K^M[/!(,^T^03U8]6TPU(SM'6#H;XM%_GTZFTU;6IOUVBL8UDX;#3T,Y'(RJ M;[B,BT:X>G6Q<&U$^ 4_AC^N]Y*)_!QKJ01Y-,-KL':_]T5FF2[V6=252N"(D[5D,DJ5MN:O- M+)YQ+9WA\',\USN SCG]DYQ3+,QZR$HX(*FVY5^23[5BO(B3-I6;'L(0':E;5Q[9_!TI$%$U('FN;&ONY%AXTWQV7$0 MMG8Z84* VXR.DJ1/R9QSR@T(MJY2EH:1_N,0.T84'8#J,K'A7?A>$QFN.AT@ MLRD$!29ETLHI(2GV6, S;HT*NMC0/&7R04JZ =-1YYM,&. YLDQFGA"EM4V]"UWC7H$#P:JY0#H V<]? MOLX6WQ'?X^8%YS[G)BPXG8.38#8)$=*3 80C>"@N"7[,V1#%D+2 MTK"0D=\QJ.X7F#R]S+B.?F.8-.9J![KGS6+^Z2,NO[S"N-[D&7^=5C>ROOR] MC;/IIXVDKL#O*_6*'!65D7QA2"T+EP:M-C]':02E'!9 OI CD91%D(4D0Y#5BY'3]QJG==](&J:-VP86A\=Q^P> M IP[:=2)5BC06#+U@B)]&C7MRKL 66"LD^*8QM9^W6Z4=>/9#1A]:B^B+FZ[ M>^^+-[A9'QF5,(Y'44<1UH87(D2(*7M(O$@6K$.YM0]^DT?>VR1UX^<-![:6 M0NG3Y_MM,;_4U9%Q*[(6H+,F1GGKP0=/)R@E06>'*7FW <5>;M_U2MUX?NV! MTY[3'1A1M_,^KX)J-YZQ(UWJ3&(!D41]&+=T(G@H@+*(8IE3NK2.F#])5#D!:39*XJ6.O=R+(++5:9I"^AM=22."T5Z"#2/3_8D79UI#SX/R4 M!ZGIQND;$%MM1-&%;;6%18&1?X*>/!*ZK:L_2\PRR4+12-Y*XCGH]DU@CLI- M.(57.!RL&HFB UUUHX7I>:^%0/N7OF12KC7 9JPF7SR=P2C.P#*BYPW^3UA]BY,R96X<%DGAFNMI?80G"?G@?X#3H:: M/\;1&FVUYLW3#!XF9>RZYDG60JN>0 N:UC/B*",!"4FC!^ M?P#Y)(X;.ACJ/AQ03!THLOM<(SM1L)A+ M JP3L)7B=-.K(B![G0(OC&S&X7V[<4,% V'I2&9W\-+WZW2^6%X..\,5.;5) ML2R5!1NU!E4D.;6)>S!29DU^+E/-M=)=&L9U_P>"RE&,[E*OD*Z]J M!PT2SGJ]G,:S=E"#TC:5*(R MR#(/T;5N*-"&\IU V7R$P,GUU^!"[4#G/17@FZ WGA=;^S4:VH^G_;@@,SDP MB%$@TUZ5X5)C'J1I7/B=NI[F>+$T@]G)V]B_VTCD,ZZG*%$\TD<\5 !5\@Q"+)Y;:F",>==ZVK!(^>83I@ M//_4B#I4%%WDSCSP3G&^JTE0Y'W+S,!QID"E7,!E1=PRY*X$Y Q=:Q7U*#%C M1^P'AE0;(3RK$6=7/%TMRD6>8RUP:.47/O+QP_F$N^RGD3]X_IASM> U DV0 MW))5)*VJ':?JG Y/?Y+.),Z*C;EY7XM'2#D^*'OQ@1]K?&Z2?5(.O07C:ALE M5EBM5V)@/4MH73(,!YODMJ%@7%^NA;SO1T@/YO"(UM!JN:[MLO-96I/'B07T'\@R19E,O75W:I%("]Q !WUUC8S'UN[$ MSS] CHN&3.T#%)L Z_D.5J\67\)T/E$NZ5SHQI3QW,X7$)A \$PS+SPZ@3OE ME>^&C/L$C ./-C*]#Y C&=R!(W6QD5_Q2\3E1$OG;4;:OZ)?5#9(1IO08),- MS+A2K$ZEUS^];!(P3XQL.&H=SMP=H7%ZSY"G@:_KC:I),=MH*"2F'1)Y^=F1] ME0PL%2:\YB'PUD&7^U1T$@@^W/AHQ. .(/(>O^'\#'\A+CW4J^PJ :&VAJ7_ MY9J#9X,0L7B"?=:IMD](I""C V.,I+^(R$/KUI8'D-F)A7L@,NZE> \KI@Z0 M^'*Q6K\M%QN=6"F)6.,@U]$**M8>Q(EN8J0]H= &F6T]_.D6 9VHJ#;H.9RU M'>#B;\O%:D67>YFN)\%SQ7C2@)O[UV0)SKD"UI7(Z4MNFQ>SW5B^DS>G-I@X ME*T=9(Q]P$W"V]]PCLLPJU/#\I?I?%KC2^OI-_SYCZ\USCD))F**7@'3B2YV M5Q1$B72[*^Y,Y#GC;C[T7J;P+I1U\M+4!D<#"*,#I7-S#MW;0I<W"F2%.BQNA;WV,/D#%V$4A3T!S+Y@[NM:+VU"_W(_U M/IL2!/$FB3H\C&[7Z 60HU>KGY(U=I AWH]2-':11EO]TH[Y7=3'7JO)RZ#" M='Y&V[K. O@)RV*)5TWF*S!T9I44ACQ M.5L+C@Q X3.+[6MI!]S.3C#VSP3&O8B]B^OV8HL79_@GX8]XJ!6*3 MB)>5K-T7,_ ;+33MNW)3A?J8[KN+_^C0*IP!PK"-YI!R[OC*MN\QAQ/>B>I;R? ^QBR[L"*W;;M7Q9+G'ZZF F3OG]QR,$R&D\W/R,JP^_S);_/XOF#_AW\)T7K]Y_G3V'M,LK%;3,DWG MC"A$4MV^B%(ZIDDW$1.JUU(@&.. 19>BED9PUWK&8^,MC'LU]'XRAL;$AJ..P6 1W&=Y#)K@X-C$ MF8\G.0?WMGIU$5:OZL7;EZ_?U7^RN2\WG_-N01+!]72YL7LOGL7?S>@FO;HY MO<_"8 SEULY M*"KAI2G"%%XKO.5%V@EQ!!):H[@*W*@!>MFUW,*X2?\]')DQ,='!^^66[>^R MW2L16)Y1"*E!89V24$P"'U6$R#QM&+,/:8 9<2U([Z0D[P2QJC%DW8'6OY5? ML-,9MM:K1%<7E&),[6BG(=0VY=$[*RS77#:OK=F;R'$C3*- :5O>2'.Y=@#< MQZ['P\-G^UQD64D5C(W@+8\D'U\C;8HD)9S.3";DLK5Q,^J&QPU,]7"@G@_> M.CB<1PIL4EB,Y!\9,,5;4-QR<$45*#$YPTWF0K7O3G$4R>,:2CTR7 SW?[BOQ#DS> MHU_LZIXE(J909^XZ0T88JRT3R/('5C2GO^ VRN9]2QK0_;PRVDZ*[V.EW$4O M@Q.]G%7><,ESM!A .%D'"M?YGI'\ 2FP,,D2E[YU?]W3[>YY1=.'.B!L\W]3/?+1??IL2YG[[_G=C^>G[5K.M%6D^_G0^9O9J@K+1V,3$P MB4E0F>)494EP=F,%#E;ADG6.6=> 5 M-Y:XMG-7'!9D_M*WI M#&\]T7Y<["N8*+,/WB:PA:7:\56"SYQ#[3*M;&)"N=9'8HA]C.L[GOA C Z$ M#FZ(5Q?+/M:N2G"TB=<9(J9DVHYBY!VC!)%#+%ZQ$G1K^^0)DL;5V>-C9C&< M +O (ZV> WUQ]7&7:(M -% MTP&L;D0U%LN;';O'6_G'\(,WQ9B)+%N_;T&:==U MPU_KSB92!YZS]B"P%F/FY,E&" [(9_/1^RR#;IW6M1MEXU9Z=(// <79Q3O6 M96,TW+Q[D,UZKMN+C%YRTN@RN0C**@0O:%LZ&4;FJR@^-Q]D\R EXPZ,Z Z& M#<35H6[\Z6PUG>.FF6- F3 #5Y;\)"/(8](N@#39*):3QM0ZA_PQ6L:=0]$= M\)J(K)]B:F+CDNP+?(7GO]]@W,OP=;H.LVNN).&#X="R9-@;"6R+BS'^]M[:$SL M9H#:1-!VBL[DK-GZ0)R< Y^8(38*Z3RWUN36*4Q[D#=NB'$T-+815\]W^NOY M-Q+ 8DG7RX1N%+2ZUD_P2":RXPJ"KYE<63MA4S36#:\2;Q T;IAQ-- =*I). M5=YY4M^FT'%],2M2EQPQ"PU:N5I5PS1X0\.!K> MCA10S["KJ2"W-N99M-GI )J1[E:.!7#%6,A)"!-4XE8,T/YX%]+:."[ZC MQ-0I_BX-V7?A>[5>)XHK+6VHK6MDKE-/+00G'?"(Z(7)7NH!YNQL)VK,&$KOR+@X36Y>H_/G+U]GB.^)[G&WT[,7.JEEK)8:"M#>)#$%%\NF]L09D M]+5G@#=%#G\-/T[?N"'#T?#82&!C)S(\J/"79Y@_X'H]V[R63YCD(M5D8,4$ M^55:2HA!*CIAVO-L;<[NSFB@1_(8=EALW$FU Z-I$(YW:M)M;-6+G=T\',%[ MB=XQ0$\L4Y%,AV@X!U]\MEE[U,6X3>/6B,3-*%MWWMB=NG$#RR>N'AE(:!TTTWID9S5^OGJ$ MD736$%E-.9.U725=!A SBU $%SF:HJQI_,4S@/5GC+,O$ MLTJ"8>N ]0YD=6DTGD(EMA!3CZKP>BN;=I^5O1=_DR?('-.I()ALJB4L') K MEL%E,G.TCYA#ZXK.?>@;-U-A;'782G!=*,3=F3F1.LE,=C;PJ .0V^=I6P:! M^%>$32EF'&"&PH[4C9N_<&)(#B2T?GWJ7Z;S,$\/,Q)C#$$SVI+$VO'-)' B M$%]MTA*Y9#R=R*?>0F4W3?1.XE.W$E<'U_9[_'JA_]^6323US6+^Z2,NO[S" MN)X$GB.9&0I$B1Q4H7,64E7\P://J)2^^XYW-/:V$M2EW]P,#8NA1-/%37S3 MYGV]6IT1S_#!C5DTOH9%968"Z)!J\*QR4'CGF(DEHE>0 M]2E]-5U]7:S" M[&_+Q=E7^A?T=3KO:XKYNJWIQ"=;C!(<=(J;+$L'0=8A[-FR3*>XQ-#Z37#\ M77"4P?WP5&\>8?+Z2+?3[ZZX-A-*9Q+9J)3LAARA, ]^06% M[LT8M21W59KBI=3%MG[O/.T.Q[V7!CM8'<.D@UOL*.Y,8N8EF"+ 6JY !4UR MR3&#] K4^([R7$@Q'[=7.0B /+=0>X+=$%%40&\KD+ M;=D*\-)Q*"SF*%FV*K5N0#0\;@.L4M_L(\4C<_CQOU!KP[.O7\_J6,+MD MY>MY62R_G OS*G\7G4!KR#,WLC;FU($\+L;!1B^]YYRYW'Q^S&ZDC5OJ-A@2 MAQ!,!R;RY3"+=V&:R1.?&,9=R!S!6Y] 8:IE>>@!DX]<:"E3;!T7N4/"R"-W MAA#SO8*.PWG>!60N^NWCZG('P7+&8Y' YGP0X1W&^X0R:4\^=V[R 7$2ESQM7W]Y4HP%T#RQSFDET3^VO_4BZ^RM> M05070H])@=Q26Q^:4H$0LX9HA24;BD6>6C<6V8FPHVVKRT4^;IIT:&.%X(77 MJN%()U$%",4C%!="*%)FDP:;>_UQYV8IIQ@NUP@+]TRFP_G=P35W1?TY1VKK MY\6\GM87?TQ7$^<2:L%KM^>$9$JJ"%$F!5Y8F6V0K#1/V=A*4"=8.D#2CX'F M:+9W@*$[>WBU^%*'*I"Q%PW6EWL?+:@.XG(','F1\[2R/\RJ1_!Z?M%XX&(S7NF2N4#0S-%FA/'@=&00 MF'3COL=0.D]KHD?F'\.R_ET_FEUL8MHM(TY9]J% MCC7X7\@6% *<-8S8X[ATK;V!ARD9-Q^P/7@:\+L#U'Q<;D9&?=_HT'-U>K$1 M+$;*) WD;#DHYSW$S5@>C]Q)S-SFUJ'$1XD9-R6D/7;:<+T#^+Q(Z>S+V:8[ MW'G78&+2$C_C?#7]AN?QKHN-2:\%.:$1LD0&2B8!]7$'R%(LF?[2E.:-=G3N/9 MNA[5CXN'E?.$Q5BX# Q8'12BE-7@,JL>;5'21U.L;0W*-I3W-NRJ(;CN:VS"K MX=!V(,<;IAXI$Z%IF' /P(!W=!]*"IZ]!:)[(QBJV?6N@H?8RKBUP:DSN>"1."I N MRM$?XP0I'IQ^FI_/*TO?/RZ)%<3UNN]YWGPU.P?+7NSQPAN??0#)$JDQ6T*= MLR+ &N;)ULIT0Y[J_ RRP7%-GDX/U?A0ZOA*JK*YS(S]%\R?\'*\^4]8B&_O M,8?-2MJ>(ZFUP[\#APV;RZ6UQ_3#28*;1ELQ;(J" MOGRE6V$CWO=(W%U-U_@!E]^F"<^Y0=?!XM-\\RGG9Q)E3#IX!IBY!J5= 9>] M!N%"*#$SFUEKFWCH/?4V.G@XR'>%C@Y.2Z,7+.&#IOUQX.0OU]%G'((S&HPP MY#,7P=N759SPK?*$PXJ[?ZO<1])-^SJ,7_9Z'A+ZC&MR#&:W]SA8#>SM-<N_WJY=S>D]+8\P/G: M%'6V6)TM\2.Q_:?9IBF[>?KH#FA8I: MTM7E>)%T69* Q8#V3HA+4O"E]:%/X_1=S'X)R3*GNR8(6CLZ5%QY< ML0I"9CEL8D38/*G[:;)&MN-;8..>(=58&+WJE??X#>=G>(@ZN?RG3;3(@W0T M4AX7GUU'9;RL(2G"QK]-UY]?GJW6BR^XO,)+QL04Z@0R>$^W0]00N$1(3@C, MS&3O6A^N'4D[OC_ UF6N(9UX24(("2:C!F7HJHP)&;",/@B>Z RU#A/L2MNX M2F8(#-WO*C" E'I5/'];+/+OT]DLS,_KE%_39\X_3>,,7ZQ6>)B!\^1G-E%5 M^U'>2(==+DHV\-WUKJ^F*Q06NHPP"P5*"B3SV]+-)(H#1N P,FA4S<>W[T7@ ML?ILI\5N7-2<95D;N7"L75I]<."+)R\@)A&50TW.RACLZ$2W#8>MNQIN0+GU MJND0=HM@<^I8DN>XJZMC&J&\MJ\'>+,)\]=MBC:N/RY#QQ<5=U<[[^QTW4V".T--)>5Y_^P&THH^;6Y=JIB7%0623P7&@0@8FDG?/)MS8M MMI!S?..+>Q]]#5IT3F/@$9B4#%22$3QF RZKHJ,H"7GK>/DV>L9N$] &$_=[ M6S220*]JX^8XYE GP&Q:5?T:UG7=0U3)]@]LHE[VH+F1RJDK/8 LYJTB4#$R MB 7=&]$INC<*75S:Q^QK(0-O_:[^,"7'*IK;GWJ-<*&-S4(S0%G[#@GE($9N MZ&;FQ3AF6"I\T UVHEX:R/^N9FG!\EZ5RF4?SG>;4IW:%K@F/!RB31[YI"9J M9!M?<)F_=:>8R6HSNTW_G< M&P^^CG%4'B%9;T&I:F@'%T$D)FOL=(!BNT>)&;GM=@LJ2&Y-Z M#O-LKO]Y(]_F$7J:>3<7G__0?9,"UX[\896XJ*W\ T3&&0@G4*?R;96&5109+2G2 >"6;1*"%W"8'.PNC,_6F'BT2E8QTJ@ M5^6QR;_\Z6[MSR%ZY)%/:J)2=J&R5>).O2#N+76=ZYI9D%8($*6VKD,K(* W M(*/+B-FZ%)K/XME*T=&.S16PWY;;Y5\;G_$E26)U3<&[\/V\ENS:Q3=9I*(U MF%SJ$TLLX+0O$ P7V9/5;V3K".^1)(^<_-,.7_<%B;]N MFM8?D6;]X >U2;1^FL9&RNQJI8=>$:+(4GEI@>M XN8.(6J!(+#F@L6D-6\= M"=Y&S[&*[*'/OL:VY\K[D@C;4M)=32<)@E<&@LV"+G'MHFMM+6TE:%PEU P7 M=U50.R'TJF#>XWIZ?F0W?>P.RT.\_1&-\A&WT-4J2$.[6WQ'O+A0WDQ#G,ZF MZRFNSKN0K5_,M5T-^T[/VT>$>2V@KJGE6/OB7S'^$ VXR\D_Y&FO+&NB]NK%M+CAZ(4-B05!0Q0T3'Z,:M]Z+U&03GUC%IE12MR][V M(K#%?,DG%[L^.,SPD"T6,*QH4"(AA,(2.4+9!"%,2KZU-MR/PG%UX'#8>FAB MY4!RZU7A/5"A=UDK>) 7N>7CABK:?9C>X8MWHTC,!S+G55!U+HJIE02$-!VR M3TX)KDOS/E&#%>_^%%;3U=MR9X'OY[]>0]ZZG+5.!42Q!/D@!7AGR5?B&3&0 M1^.:E^3N1ED7"8W'HN2N/AI *+WJH;M%JILI5TV*:"\^:9!2VH>H'+J@5F;G M50H2=*DY_LI;B"$Q*#(7SX@3GK7.P!FJH+8V5R-E/IM>E(O?J*^ZXO#B9A>C M&[%;:5FVW-1>K76&N640A="0=,Z&Q:13\^%)AU/;:?GM/DBZ7PIW$M%UT%'G M[D[??L5EV"CCJW$]N^Q:2>N$BPR"KZ.'LXC@6? @;&1!<"5"&!JPAU$^> M4X#W!"+M$,CG95TW-OK8/K6-0:FD@:>8R*4R"EP=)RJRDU(844@0 T-W5UK' MG09P$K .(K9>S<*+:^5P:_#V![3LA#"@[;=K+;MB'E.)9M,H!VH3'2!-Q*'X M&(Q(,J;8.E=TX'X(58"3#^DSYK,97ED5JY^^_QK^?;$D]9S/TF9(Z8;[-[". M)>8ZGK2F-Q(G,@,?2SUEV423A0XF/065 ]=^'FT/]H'*I08ZA3 ZN!=?35?A MTZ=E;9)_TY2]LZE"'G8J,H!VHCK9QD&PPD'AV6E;3$K.-CYK.Q$VKGDV)/R& MDT\'H'N06_5F?S&_>N7[?F>+S+BH$M92U&!KOE( GY2B^UT8Y):.76B=-7\ MF>.:8*< Y-"RZ]48>ZJORN%6VHZ??)+N, /:=?OU\9 9%8L$&:%K5\2"!!E6 MZ!M$?,M65QN>Q-$R(GU(@0A"'?)64+#ID ;JST2-YUBJVS M;+>0\YRZO^R#FGL]]1I)I(/[]7HKOTSGTS6^F7[#>^R[:T+4Y!B9(]!M0%NT M&<$7A5##E9XY@;EY4Z8#R!S7X!L#C,-(L-=;]GYSE,/OU4<_:Z#>1 />G?OV MC E1:55BM; <04&SBCHMP"7-F-;+7X/\U1GY;XD.)^' MLN^>$1ND32&!P.AJ>S!^[B@QQX(S,@K9?)3/891V\:0_"-[N#:T:7I*]:KNK M=BJ'*[F[']&V8=& *FU;BQJFZR@Q=,"YHIO3N #.\P ZE(RZ"!M$^VK7P=H6 M7=_E5XM@2./GFKE[@68!"GWF67O/8.L2Q*VUC%_RVPWRL<.W.1I043W2[$:J@%%*#DZ?>G:G5E3(:.F"=5"\K&VCZQD348.6FB53=-"L M=>+CTU1UV0)I'U0\KHV:"*)7/?1PGZ'#%=#6SQNP,]* *N?1OC@Q,6E1.9!" MB=H+E.#EDP N,3*ZE9@LK2.#0_5'ND;[W15JXF]Z,<^OIK.SFM-QYWTU^6)< MLD &?JV9IUO8BSJ"5CM>G-;:NN%TT5ZD=MI;:1\,/:ZBAA-:KWKKX;8DA^NM MK9\W8".5(=.VM[>[D%H71*L ?9WF5U+M/.H-(/GQ*$5BN7G-R+#M5*Z/PV\+ MA!%+5KO W%JE0X3\VGG.Y%8=?- M4O9!S^-ZJ[F@>E57#_8=.5Q;;?NXX?JD#*BKMG;%X(EKACR!U3'0?47^?E J M@T6>?2';/N?6K\]#=DNY\9ITN=T M.,MM#!H!LZSYO%*"JVU>I94RDW^B#1LN3-5@ QUW8]D'=UN>#$\LY%Y5X)TN M*#*C,+7CZ%@1MBK5*%VY:MRL8IY_+ MS?!+FC*J))UL(;M+(:!L06Q S.6P;2:%9$M&0YM&;+7@0^ MR\XM^V!M6_2LK?@Z2.BYK24^?*TE+\LW]9]5@?XQ74U0('J6$$Q@'E1 #E&3 M^N:&:Y,8#V3.-J^&>(*HD=V)X0!QKTBII71ZA]NKQ9B._-AXIL<51[.M 4?RR6.+TT_S&_EE,01<70&X<5*^P#E+GH%$Q99-2 M*%K?/_>(&+O\;%@U<1S/.] 2?_MI$B.+,="&C?&9/ KK"/!&0<@\9ZVB$7*; M6;R?EOC;3R.'EHX3V.(H[G6@).[;^==F_AOZF]=K_+*:Y*#1$>T@I"6>9,\@ M>EV "<,M[\[!2[:<)_)["* M.7CO0Z&-"0M*ASJ@A-P QTUD+# G6>M[:T?2QDZH:@Z+QQ\!FTFH ZUWO:W- M9FJ)^/V0\HV^/2*9I(V'6*H'FNH3@U!T0]1&*9&I8INW8MJ/PG'UX"EAV%Q> MO3[$[-"8^?#'F=T__%1-I@=\Q-FO'7 PJ>BH+7BZIPFFSM$UK1Q8:04O6(QM M/J_T)*VF[_1F^>5L31]Z.>+F;7F#G\+L Z[7LQM9!#>;93B&.4G0PM2GS=JT M6,@$R>0HK V&ZWW;Y>Q'P7/J*+T/A!YIG3.@>'I5>'=;I=YN8[:X[.)2;O39 M6]]J9/8*UV$Z:]("]N"U!VD:VX830[>954GKC&3X<>0%5#$20B+4*^F*3+$$ M[YIW8!BHS>SU.;R[PNMY62R_;.3PT_?+=GH;]\X+#"PK28>^MI&O50PN60%& M,4'&L=(^#V8SQ;K@$U4M5=D MB 5BT J"49R'DF-*V!IYVPCJY0E[(#C&Q(;&%1\^C,WZG2C!:XH8E0E]=6R&/K][+0^.P-FTC[G>' MGXOCA=(7%50"YVI%K2V.]B *),Y8M#H)5G9RT?=&T)CF;"N9;H7( 0SNP-NY MFN)Q:=E?Z$KTTOI4&(B@ZF,F(UWIF($L$G&E2(ZJ=2NE1TCI"3*'R'C1GN$= MX&:+$KY^[@PFT2UK(W!5NYKHVOZ4"P.>UYF24<;9J=Y1I<7:V0_I<_AC\FN;@B C? 5")-;SB"TX).KD)#-B4FT[PS M] %D=N'#-\3*O5J$806W/S;].3;GN&Y[G])6:$>U >5$*):"DAJBB71=,,'! M!Q9 >&]=<@F3;AU#?(",+OS_X9!U+..?ZY/P V/81GD>/HB.DSP5'\^AH9^- MO95>&2% (I*&XTY =#Q"R;X(8[(HIGD/]1--)]UO2N#&V%$I2^6$!R;K!.#D MR.Q)24*T/K*$*NP8Y-CKHCZ6ZK[N[8.0U7;@X]ZB["YB>\Q1[=0V;KB(VX#EA*>5_],!N'V$T1V<+F('1BKA;8SDP!4Z MD3HIB$4KR,EG6;)V4OVW"L#M)=-= G#[,+@#5_:Q>%!P9+H6G8@E=1!I# %" M*!%LC01DB_3+?]\ W%XRWC$ MP_#.\#-W2O_2EN3!T2<^F6QW*ZO;ZOK:Q^, M*V$*9D9LR(5^"1XX)'!Z?DP:A ,D85 M68#SXDEY% :^. -"2^39,:E+:X0?&HXYF<,P"CQVB>#L(:LNRCE?SPF\N%J? M[^'G/VH_4OP-UQ/EA;7<9T 7)7EB(8*/JB;+>:=+M$G[UO/@'Z.EKTA@#]!K M(K4>U%V=S?G;8KZX?90N-C2),2-WL?:GY<0GY 9\2 6L9&BYTBHWGX^SG:(N M$H^Z0F)#"8Z=X?9RL23&$FLNB']Q,3OV[_,PV_Q3S"\_A^4G7$U8%$4+'@!C MSF3IR&K99P\E&T0F.,.[3O$CJ6Z[K[D3]-1_!^@-*:PCWN,^;7;6YDZ^M")TA.SF,BZSVZ]M?Z8-O9Z5#H_PZ'HC?L'*[, M%^LP&^]Y\KR5](WWMI,]2.ZX\DF>( _APM"/CEH5XU-.X(1SH!1!T,?,:R - MO2D94WHNCXZ'I%099;6S#"%;3THAV PQU789 ;EE7FFZS%IO_T]3J[H/=EK4 MJNXCK.X>?C;/'+GP9&R=Z,;H^E&N\JZD3 I?:(Y>&69V:M_T#-\1!Q?XTP^' M^W"_._QG? ^!3'&2OY?9R1QQ:TO"/]W#X5XRW>7A>0=2TIED'A2>^P17SB+X'U28&SBY*:A,;&U1_)\'@[WDO&.#X?[,+P# MW%QY^N25W*ZHQ: -1TEW.1>ZEMX9"%Q'8)RERBJ91>L!/8\2,TZ,>C#LM&%Z M!^C9WA$@.1UUKZQM4]$ >VULDG43N:[O2T\QS8<>TGTH#8<^[!W;,QL[QZA M-%/=O1Q,;N3+)99!(+J*BGP,O M2_431<&0@D$N&R/L?.4NS)F&,ETN\S!WD_W4[Y MT"^C@07FC?7@Z@6HLA80O4B;>25DVAKZQM I\&.^C.:G??Q=3I"Q"$RO!L2;,30L;'Q!3X.BUL8[IG9"Q;96QBQ,;XJ(9,SNX6G9R M-PLZ1E#WY"MR29:=XA"2E^!T,)X5HT)J_LK9*MC3U6/G,59,RAK?S#V%V8R<3'X/0TFA@M?N!4H5!3,[4DL?H M'0NRQ-9%@H_1TL5;V7"H:B*"8RNL/@X;D[QH^%@WN(K??PW_OEA>V)"5AT<$ M)G?[X";1R0/VT"A$^42[S*NHDPB>ZS?&D=4L(H&)*X&PH$$36 M+,60F-XI[OU$@OU#:X\\0KN95!<-6=P'1&XF/ETXRCJ)'(+34'@FES9(!Q&) M+0;1%JGK\)(6+0$?)6"\M/KC97H?($.Q(TLV@&.WDE^4T54G\&N;AT\TX M2!"&&YG)D(O1U'>A"-&I0$SSB,JJ@%8\9?+LL^#H(#E6KH]%'ELQN0?@W$RP MO)-#A]('9KV';!WY%9ZFWT5Z\XUJ+>,$G4>TVS13X8EW@3@KE=[MP=EALG%XZ MP^*D&7/'!LLO(=)]64,]MU)S+V&O53)2D;E&ER,I164AL&#!Y<"#M-:5^&0H MYNEEQNDK,Q! VC%T;&AL?;G3PJ-#5V+R(G=S:@8ZAG4 M/!-@-&-G!\\#VTO.2F9D+$D.NJ3:N4@0R'E]]1?6,6>Y+:QYAF2_=9[-XR?M MA= #HF[5E^0H P:C(*%W=!P"!\==IC,1:J*!2)@&&@W70Z960\%N+>C<@F,QFY][599%$;#;>9Z-]OVV11T'HR.=HP<&Q)/UQ\F MIJU3BD%66*>W!K+OK"B Q46G(S="[18\>58%G0=#HRU#.S!$'C'7WESE= CB M2^8A@/7<@U+$KZ@C0B30:YDP!-:Z->!3-(V+I,$,W*:BZ !:AXPWY2*F0/\% MKVL7V,PE>)<2B.+18^(YA__VCE*9Y^H(LK*+)0M8906A%5ZSPD31A(.=-&2GKPV1@?\8L+.T+ M.N0*F#.FOJL9""47J&9AT)X9VSPC^?EG8>V#E;VRL/:11@*,^XCA!X0=# ZVC%R;$@\'1;S3F=2H::.+=S,25)T(XL,VDN4 MS$:?8]X)%L\JSG@P--HRM -#Y-Q%?7OEHKXM?ULL\NWDZ1*-M(P\@!+I'E98 MB%&VDI(:%$,ZDTQ; M\CAE2(Z)S#,[+3471 ;0.>31$R94QHA H:LS? MUT=*:PLDIQT+/G+2R?__2V]+G#1XZ=U':)V_]%XJ\TTCB^.?>1_\N)9OO$_3 M>^('7NM2-D9IB($E4"'5'O;: (L\91&=XZ'U=='# Z]A*B65$%B*]=8/X7S; MKK:W#?7:Q]8=@9[_ ^\^6-GK@7[B9"61UW(Z!LQ[ M:7PFD[6T'CS7*@HVSF/O7A@X( JVCT#ZQ]CE2!/GN^/ N;>0#1?>0ICF4CUWAX!TN$W%SDM"J M$B6''%#76Y084Q4YOYMLL L0+CZ]2^W0&@F'<++SH.!E$./W&T&, MXV.#VSZU98AP9^I/'"D,W'(C.)FIM06X8DS4@5 (65E1(K=1L&<6*;SHB\*2>?%;+;X/UN_7+LV4]P>\7LQE]__>PS'4HA*]! M,$@2R9\4&L$).I;>F1(U5[+XW48RMZ'G>004]X'4G;8T)Q=:!Q;VH[O^#=<3 M:9P4GC.HFP)5@H2HZG1;*[SEPJ$KK2NUMM$S#@!' \=B($D=C+JON)PN\H=U M6*Y;--5ZC*.9^$]QS0+J]6T3#%_7-!7./VV<8RQ%!$TUY!8KOE?M34#:@LL2*FD MES'+UB\K>Q,Y3L;+V! ]C4Q;3P<9Z#X64J?L909O#58MG^LY3!!D=EX:'A2V MGMYX]'W;G9=<>P)@"-X'4,IC.'PK8.VV\EJ#//XG@ [*"K#I/&Z,[#3ENZ.+9D#2P^S:?_A7FBG4ZL MCD]TDM,>JQWK;4"0LA3)BG*V>6W/?A1VYH&<%H+'R6M\Z^UI-KZNE;QA=7Z3 MA-7GC:'Z=;V:9.FU3<1.AK5W:4V%' F%6U\ :MJP5.T"2+/"8Q25FN',31_PCG>E&L^ M0Z&3>W0O:33U.X=Y=7V/-1-J.O_T#I>;J;+DT[^-L^GY^_7Q[Z^[?7[+E]@# M=G3B-]G$HLI!>KKZ)"FIHC-XQ1R4(IAA! +M6K>Q[/K_N@YY&ZLX;RZ2 0LM.F?O[C*Z9Z:5\D MAGZ@[ZY*V(SO.T_=XSS%Z&JG>:YK73%9I=XI#RB$4;6'JV:M.Z"TH?QYQ.\& MAVU;"?\9<+T)!;TB4W53.^'1ABSTIG=^J;OGX SGD(WTPGO'U=UN\^/C^]8. MNE#/)\5@ZV-P."#^#,?AS54.9B@83!$(V1<-RM,M%ZRO,UJ%DS(8*WAWJOY- M']GO?X9CTA_FG*1D/"' >OE@33C?::Z/0Y^4: M+^;Y+B&OIJLT6]0.NE>Q )^23488""G4$>>L9G$Q#BPP&U3*BH?6 <"]"#RZ M\_\%[]]>\?[F\K6X2%6O0' 46!E*UA1253FH^)ZW@X21.1[S679!_^ M]P"F6VW2>?92"%V+U1D9=$7&6D$J(=7W\L"T0-6ZG^FSF4NREV"WSB79A\MC MI[SL/#C#8Y(HD,-F=HM"9R!J@Z S3U:3-ZK=GW?^\5X2/6@NR3[L'1LSV\=I MZ)B=CN0J>FMKVZ8BB%?:@_<>C5.>=L1W LJSF4MR,#K:,7)L2#P]1L-IGI!Y M#U84/!_8ZHK7@$8Y'5))+.]6Z?"LYI(<#(VV#.W $+F\,2K_K. MZZRBX$CG2O,ZUS* 5QC <.US2E$5;)UD]211X]HO342_ YP.E\/85]:_AOF_ M+!8K?+GX>4X?^74Y7>'JS?JRM5MD 2.3Q!F7ZLLEEQ"#JQT!M(]6*B9V[!:R M?9W^4'*$1!?#L+<#%72IDZ_?1HHJ3B16@#1P+4DUB0PS)\ 7QZ6DXV13Z[;Z M]X@8V=(9X,8ZCL\= >56?GIB7G!2MUD(#RH48HBB'9&7EUVQ(OO4NI/Y V3T M$04^4+"/P.10+G<$E E#(MB0'.VF /?JF>3\_LVOSI;G3ZJT"JE4CRD&!:584JD\:*C! 3HUD9OHC8FY M==!_&SWC>DI#X>9HSG>D58@O./TT/^_1\?^U]VW-;=W(NN_GO^!LW"\OI\IV M[&Q7.;;+=F9J/[%PE3FAN+Q)RAG/KS\-DKJ3U%HD%@$YF=0H4B@!C?X^ -V- M1L/_6%=&GJT1^A6LNER^8V(D%Y0X@G BV;*#X6D)YAT'QR!IH8)]>'VQ&*>> MEJZN93,6PPJCTA#?)H):IT442',PZN'_#EFM\V11'!N':8RE7[P?M(L5OQ$[ M^BXV1*,MWSWLG[ORX).SI.OLZ?/,63M]1EXE>8<;8&M0 DEJ3-[^/++"*H25 M]OEQ6B+T6*[+F9-WWDSGTU5\-_T>'W6[<6NYYEHQ+Q!V^1WPR!@R6'L46%O1F M O.1&!Y0?O(3<:,)6("Y6"R,(D3-59*];.HGH-_9>642' -A5U*?#?A6!];$ MES]^L__J%J]RJ=;-?'&$< I^!O,:G(40)2R/^9%:Z833E&,F2@>(!HC7RLGZ M*+O,V'"US<3;@;VWE]>'AIIPQSC&B%H:08TF(6TE_*@2(T2JY(KG* \4L:[= M,QI5^E/R9-P:H.7[;@Z^]K>XBB\N%G&=&W6=.Q="4J TC9@D'G&I++)>YN$( M[X1FB:?29;3V2],LV4XG03<*(@UPZZ-=W1%>1Q%Q8A$YE6/_*E>:RP_!^ZB= M4-Y&IDHGJ=T3H.X&>DX&':_W!DAS70?G4]Q$]9=?I]^NAR(%)EXK @8LD_EB M$_#?1K!LF3#2*I@+LGAAO_WBU#U?.2>A2F'2 +V^+&R(EW;Q1TX(7O^0=70] M&'",K >7"&G#*7@W^2U20BWR%#MB:& 1ER[)?%"@NL_]1*L3KG2*J0KCE,# MY/N0TF\PC^+JC?W>+;)+_BX7E;Z.WS!/829I1"4!5\C2!*Y0D"@H)16/5@5; MNI+308%ZD4W^#&0KATL#)#N@N'>WI4\T9MR:B'+A-+ \*S1R3=K5S-QB^.9$-ONAT)3=-T6_ZZR'EFF ;II:$H!9$0#U2 9QU\ M#BLJK%2R3I?.9GA*IF:#'&/3[ A(CJ;8][APW?@D>^']U>75++^<\.*R6ZRF M_]E4FPX6.ZO!]$C,Y*0VCY&F22$6$B5<8?A4G8]V>Z1L-C@R.A%+P';J2QMC M4S._)^@,,=ZDA%3*OE$4%IG$,/(:)F!2V"=SQ@.J:F\_MD"YH7"T6N+OJ63/ M]W:Q@$Z^QQ'36A_U<98TUL,CJY*VZJEDQB>, @DY;X0XI+$![P-;$Z23RL32 ML=!6TU:E%A)C\/,=R66-I =5,)Z?,B>4!>*]EZ6O>?R<::M#.'5"VNH0O-IV M-!ZE,A@L!"8FH+1^U55Q&&0">U=%V$>HM\$;WWB24@NIL(,8QS-ZP,\[26D054Y,4AJ"6P.T/) 2 M(X5+8#LGA/.#YMS&@*PP&D5/HTM>,V%+KX<_2Y+2(!+T3U(:@D@#W.KEMV%' M172,(JQ,OH((OKOC#GPMHX-B%C[TI>L0%SO):"$G>*3M]CB VB;=)HY)'5;$ MLXB,B!1QXCER*BADC8.]("DA0NF"%D5"RW5/, :Q8&AH>0@DSS6T;$%#(2<' MYAI#.7P.:[>S'GFI@XB1F*1*7U4=*;1<]XQC)"*6@*W5V!^,K;L"*V+]Z/GW MO&N4B/;U:+5(?&^H](4B>H^[?1'"N@2=G=V&7Y8W\9>8%$^Y#]=Y7HA\=I( ML9RFZ!0R1H"1XC%%&NQ5!%-+<+!H&4RE,:-\@Z2MNQN/R;N#<;_Q$&W *GR; M?:IX4V'_7?Z#ZYJC@@A!,;.@P5P.)3*=#0^'*.>),I<"HZ7S]@Z(TU"<;T1& M=./ TR[3KNN5,A6QL@I)301X\(; L")#- H,1K D(I5V/@X*5)=MQ6#O1Z)5OZD/L8.1L*])UOOQT=T 9(^W'1?9\N 4<8T"_=E5NE MJ]FU<3U1U!#OJ412*+":DX_(:.%RB5\9<2)>\]+D/"1/]0#@R&QX>(NV%#0% M@X&CQUQN5)KNJ[1H".:I3D:*R P:6Z4 #9 SQ9RPC)W)!;W!1]9),L1BU-02 MCU4H'8 ]Z>'[!_7BT:TDM,G(05BV7Y7\[_P[-=(L?)[C'C]HHXOT>EJR0.; M'E)PHE7D"#:\7#F%!:1M2(A)):P"+C%?.G9U0)S3S\NV3>?DG.77&/*UEWSM M[D/Z!! MOL?E) 7L7 H!$25@=14^)^%PC:+"G//(O0BCC7B_6+6/,LHPY/'9 M65D\&C#%;H;TSV[QQ]LY6)D^+A\,R3HO8:NFL&U[@3B%+P8'FP>G.9'@MZ?2 M:<@]Q*IK_(].L4)XM$2Q3_;/W\!(6TSM[,&(*$F:_1+>R\[ N,!H#3(?,RMNW MG?*OK;:_]G8.BKQ:WS@ZP>PNTW$16WT$'10R\'-7.QALDXH$&(*PS\1CX+FY M7*LNB9@PMT0$7;J2\VY)3EVP\D'QA[0Y"YR$_#(<3@9YG)\]308CYP5'B0:M M)!=&%C]FNMM_74.] -(/UZJCE=O 3K9)-M@4:'PWM6XZFZY^3!(/)H5<^%'K MO!V'_) @]BC8(&W@0AH]PMW[QX+4-;A'H,KIZF[BPE76S(MY>&6_3?.FF4?S MPZ8Q?L']7F(=Q<6H7H9!Q!QN23)R8E_22K6\6\ M&M\& =+J7= B'M&$W!_F&?U"Z+H=S_"A'FY\P_\:!9X2MW:'=3"^JL]REW?/ MDN&D%)0R@5)("8P68Y#V^2Q#B4A)4$+BTGEFXSO;;ZQ?V_B;2P(J)8L#(2BY M?$D@)HXA'^U:RB;TEE>V6RS\=/U#_L\?THO+ MN)AZ^_X%&/0O?_OPWV!G3)=[_N+Z.3^J%!64(R^%S(ZD1S98#;N"\U1IA.*=)1&&2Q"LH3%@@N M7]4JV( ,U;#-PLX*QFX0 MR//$G0LI8C[&<=U]*>H>T8VS29VHZ^;8DLE/162D8+,@.6"^#04[$@)AV MC"?-G2V^Y.R3I7X@ZQ2,#U+F2(77=A7?=%>+U5=(1JG#RXL0(#)%*[F!%IP:FTUGYU=[F=SH7 M!E'M"&":)]N'^?4SV2[7HF,A(6?S1I"P1YHECU+"F(HH@G;DK'R[$:UERAW# MB4&D.PZ@YGGWY<]N.ZP8,>&64$1XOCK/E$>&X_Q62HQ<^\0#+9T.IW',@'UZ7!^FYT"?K-_GMZ>77YLELLNC]S:-=^@T]6/R84:TR<"$BH?#K* M-$$Z;_#28&4TT=+3>6,@;C/%D>NE)$K07D3^-:N># MHR7./9A,;^=^D1/IW\Y?=9>7T]4Z?QK,"^UD( G)F/2F>+7SP2(AC&'*9>,# M#^9:GY[;"Y 5YEAQ]=?FUH/(]57V26[*I=O9J^Y[A&]A4$%1B0F.2.5W(KCQ M^0:(B@A;34Q4A"M+>G&J;X_MV>X%N#2*NMOBT/48WD5P$^Q%_)0QV\Z7B7(Z M!!(=,D'B7$#-(9T?U11).7"M-;K&$ZX5%BFXR*7#4?00:%+ MB ^[OKF"QA3&5!J/#'4&MC]&D$Y8(T4HIU%%J8O?\]XGRZD+U_NXVCRQE9__ MN!D@MQ+\B<11E-0C[C1'%CN*HDF6,^.2*E[/?Z<@=0.F1?!_N(J=KO &MKO; M$;P!K;WJYJOI_ I4]>%;7&RNWL-OS*Y"GM?Y:6; :[5:3-W5*A]5?.G>=]# M? 5200\7UX; A% 5-/$482H(XBI%9'.%",]H<,%BSD/IC7. ML2K>#;#^GW%Z\34_-[ZQ5Z\][?7:L/QPM5KFR_(POO46=:/W%*)D4G(4E XY M)B[>#*ICQ*T[K%!>M:R5ADP61'/BFK#-91L;,2\J& =9?#QEAY$GH-5(_;.;BM!_EHA"_"OZZ6 MZV.7&\7Z'*E@3B*;+T5SIC'23EA$(N.>"P=:*'U']T21ZY[,-D+?D1!N8*U= M'Q+F >3SG9NHR?*1U?T=S.QK!?QSNOKZIEND.%U__LOT^S3$>5A.N*,Q!<.1 MD@'TKAR8X=@[Y!TVD>)H8BS] GE)^1NT'\8BWF.WK X+&I@!1^I](J46@H+/ M&4A.3*/!(X,C08Y'$J@UA)#2B8!'BMJ@!7(F7I\#VU:MD@]IWT G^3T$I:Q$ M,< 7G@_Q'6,*89=(<@&\85WZQ9N!(C9H==2D;"$L&Z#JSE.82<22"DP4 J^4 M(AYURKZI1I;Z2"33AJ?2:^E.0>JFB)W?V#T=C08V\(>#V$Z5B=;$F4@$PI2 M8FR 69CR<\44?$YNK-.R= ',/:+4S1:K3ZMC$&FUBO(FN/S%_CN>\E#.CE8* MO5!Y6+IB;U1NN]E15A7VM@ +A49!DI3OC FD5;Y-!"X!L]8':4J7S#\@3ID# M2FCZ];^_Q?DROHSSF*:KB0F><1@HPM@!E1W8BMIXCIC DFAJL"A^97:/*+7? MHBS#A-T'A:?IO8DK9$^?>+Z,J5O$.S/W];]!?_FVP-PN?JS3G?8<>Z:DN1#6 M(^'R2XE>.V0$[OGV4A=$(3H- 5#D+ M3F0N468,1QBVZ,@BX:QX-=K#$IVZ>EUGDFX]I\?]@,[G%^LH^O+EC]O?^6A_ MK(-#?]I%V%RP%Q2OBS4BK'*!8= (TB)&F$-1)AJD(*QT^*V8\'6MS8*<>[C\ MU8&W@5UY(SG\\J8$?< V*@["4V5@:1?()"VR1IQ+L<3T2I&\%ICG4E &N =_^ R9//N?.N(5FPSN6W M$41TV?-GR E,$"52)AY@ZPBES<,[W5?F5Q/&X;%HM$.D[^_31 O";(= P)^EGV)R/R+,AV6_>4Y"=! M4\#(J/P8F%:YWJXU"#OMK!'@&Q5/D!L@7MUM\)QD.PZ1BF1;+E:33]D*6"_L MU@0F8(Z@2#"8=Q:L/9O WR#2.$R)9JE?, U:O4,A^.F6/OM%\A&NPY@)P1^J$%<"LPX,Y;R7O?6^Q"FYL9U E@/X3Y"(,#.SNOF M.]??,$Y'I#5*Y5M9G^)LDZCQ=?KM2_=ZOKI]FE!)XGC$#,D8!9A1A".#60!7 M$SXAEGIO\!AD.RQ6O?6H $.T:D@&I6)]LMT$3U\O%UUF5?!@^@H,>'2_UX9H4A+8KHB6V_6P;U?Q?8OXNYNR?HG#C*.4 M(NDX1IQY&+' "3&FO?0L4HT016 M+8%9;P08I2Y@)V#?X(:7OLJV6Y+&CX +\Z$7'0>!TP#%7E]^FW4_8OP<%]^G MVT/$Q\F>U]?RU^I;?NDVE_AO/G_5+5?ON]7_Q-6GZ+N+^?0_,4QBT*!=*E'T M,B!NN?6L(ZP<2_Y)9]7I9&I@JAT-SOK+ M]OQHHPDR$4X3+RWLP>-AL34(J66(5+ /)/;#' M]CP445:NRIYM'7;7QO=YW9A[D%IKY^%AVN/OL,V=4BNA2+\CWK8[10/GN8L7 MK,QEY3$B>IVZRA.RWCC$?(PJ),* E>?98]N[BY<4YPSG#8=:Q*U1R"6ID>(D M&(QI<*)TPOY?XR[>$,Z->!=O +P-6-;WK^C QI4TJ I))3SBTBNDC0J(FJBM M\X$)WNNP[B]_%V\("0[>Q1N"2 -T&N5&A(0)G*RVR,I\2N"3SH^3!F2LU\P) MI[@XTV;RT]S%&T2K<]S%&X)Q SS??;TK>>T8!JFCQ[FT.,QXS<$5H$E@ @N M,*QTB.ZO*$N41"Y#SXZ/);]>!R M"J6U9DG%\##?=^]SC[M[:/RHXUQ4*H=" XO7OEN"2CBI*);Y902P6C#GR 4: MD;;:2VN<2K:T9W+*M=2\=)6N,V7K/(=+I"=X-6?&_CFS_?7_7DU7/VX?'5Y^6'V-BR]?[?S# MMW7VW\TQX*=N-GO3+?(?3:(U!N>ZW[ "@#GC34#.8H9T(/E16:^#.$\6T%@C M;-RH+<-!'B1=0H,NS! M'B%@^2KE4>!>1J^<":9T,>)SC:UQM_NO,!=/(-M/O27^8XW?C5XTD4$YIQ%H M 9P"\'+!JI$)I>25L 1+Y\X>G"\TML:C$'^%27@"V89/0K.9A/-X85?;WZV3 ML?6D6FY?@ +XWLX]?#/]'C=9H?GY@ASK_M)EY4T,=D(:G\M8D!PCBH KU18% M&3FF,F""']QO*IWG57 TSS3W\7PSLAFD!O&NB6?ES.Y'MY6_^3'OF*70[T8E\/3]MVSRC,)@:,@\S->#AE"8RZP"UX#B4'3TKDY+8S[IP_JCC=Q M&EP$!K'X+Q<0?EI]T05+/=&(J/Q0O$T&6S[D<*G5<>3IS'B *I;EW?%%FGB HJ*L42D,%Z>Z;6P\P_^IP]L M_P1+P9A\KIW.W$* \FF-*FIC)%X@[#,OA#+(!1WRL9\CSC@?_8/+4 U'SLNL M"<\YM#[ZFO!\L!Y$[;\#"!N=&<V3WEY+&FQ$(MN%VSN%C'E,HI0H>)EK/&&- M\L4_9(GBW@HLA"]]Y^>0/'5I50[UO70Z$8(&Z/3Y3_MM>WF4>A*)3 &!H!YQ MY0.R3G*4;$A82IAMQ6_[WO;>"E5.1?2AB7^<>JO'XT!L>OW&GE.!KI.8+)/@ M(!B/C(7I(N!O$DV4$&:>LJ$?-EKWZ*DXVB?IK(%%X'8#WK']OIG.X;]-[>PS M(+1V25[9C9=YFTO#,H,#>,$L&A@OY^!$NI2?0?*YO&"R7I1.ASI5YKH4'-WD M.2ND#5#X=DZ_[_)([.S%97\PZ4Q]'6.(RE&@DHF)RC(E(,IBB#+F$ N2N^9 MH<3HTH'.ZD=20=#$8W(H:!P1I]H@2VP^8#&.11)@R+V>:?[K'$D-8Z60MRI7MK <=AI*D'(V!0T: M-;9T&95^DC5"M6*,V$^Y4O"T1+J[^\[C\6W#K\GG=]>E0E$0A[C6!.D$-DH$ METH%L'P-+IV%/4C 9BA8C"'[2%@1+LH]N)B#1*KNL#(8>=2AX'Q+BP8(DP MB8S1,$&I$X0++ DM'84^($XCX94JY#H&D4;)Q:[?:"?12$<= GUD;Y["/&'P MH\!*P&=:&E4ZGGQ G$;"+%7(=0PB+9'KV-B4=CJ&:!(RGFO$\Z"U#00E&AC8 MP<*&XN4P_@+GOV5\B3- V@"%7]GEUQ?SD/^5L^._V]F]B7\;'9A8%Y1E,,DQ MH1QQ+C5HU6D$VP$-$A0N2.DP2F_A&K'ZSL*9[AP GE#SKTRI@]L3QDU<=2(E M3UB R:&]LEE'#AD68?5+_O M5MMI%,.;F;W(-K!C.$6D8RX>8A)!%F.+I/1>^*BIH_TNM):6K!$;\IP,K8]P M [OX9E+N6O05F,Y2@0GM/*.(2TORC.5(:(6)U*9U*SL;[TCY4UQ--RYC?JNIR.W!IYHL M%K^Z6F0>@S'WOIO[[0_71W*41A>(3(CC_&Z0= $\;F^0T\PDG*2/7A>>Q\=) M6NY]Z%]B@KD77L8Y?+-!Z,YAY<;5HU(%&B)%1GJ,N-4PCY).2(>$IL@SDA^G MRV7E..P67BE)J0S"%G^3_$FA6GD+NC@A'KU.6A*=UNFVC<0&8[D/-*$H67Y_ M6'ADC3&(.D63!.,5%T]NZ2%674#7C_HF*I@P M <4D8"(JC9$1S,!$E E[Y;W1Q<,MCZ1HF$;' /TPIG*:UBORQN<+!(L?D]\_ M3UA(WI.DD/4I($ZX0-IPBYR31(,&G+"'SM"6T?_?B^[[?VU;W-!D^\,M0V[[ MJWR7XD3$NI/4U\!"\:9;Q.G%_,[X;4C$\1!02/FNG0D*.K%))G@O< 281[R51^93^3R16X<7(Q2*<=>BP#NH[3<'LI&'(;W MKR\K'\P4Q7N@]AK8%.XO@.M'V[.-S;0U3,C\,+M@B#,!-K94%L&69P.5WCA? M.B-UMR2MO!I^7O_W*!R:9--V#\5$,^NL1@YV2\2YH: 5GY"(SF ON/-IW-!* M*_5Y2N#\)'6.4'H#Y/F8C_:Z^69NW9MNUP5&@E4N4G^V_:\\2E5?>E@G-FQ>GON0'IQ43JQ67BE"D0M! MP%#R*+@U2& J,/SC@WNPCNW)0-G30>V:%<61[ HKM3XU'BOI^JU[*15Q(J($ MFS[B5(#CX5Q"1!I)#2SB_F$]NKW92;M[J%V%;%1R%%%K?79<4S'97= CYD5(2 MD,8Y:\^%Q%(@U.#2QQ)E)*_[2D0-XHZ.;ZN%>!Z8G[1540C192-B0OE4^G=_:?*LAQ$B,%9ED/0:9UNU\%P,&T"=(YXS*\> M&)GK_A$/7X)EVELL;>EC@Y\@RW(0$8[(LAR"2@-$VY$]9K2.*2F"DK/Y[7%, MD?&:K[,%G"0INN+E39YCEN4@H)_.LARB]0;R:7[_/-&88<' B1LDR5"(!^61R6_3"G G MX'\ZI(.7CT;)NCMCEN4@P!YGW0W17@.+1+]0'?5*@CDOD./!9$O?(FN<1U[! M[& "OL6EDZ;*Y20TDI-WBK=4'J5N*Z7GR-[$PF[MB1#Y JE$7!J'- &- M8>,5;..24U7^[9A#$CV'=(9!)'B29D?CT>32=GU& %; U6+^8;WJ;PO1<"DE M5M@@8;G()P$2:; #D(#U/NE(K7?G.^EY+-]SR)4HR[Q"6)U0@>IB'88=AXDO M+KO%:OJ?-8(?TL?%M%M\CHOO4Q_S3'L%0DYAOG$OM+(!P; \*#12&"?,O(2M M(=%;@\WXF8!])'T.N1EEV5DKO'/Q.0HR8 M:1V02S H3J,!1PT3E+@,GD5J*!D_<6BW;,\A_:(L 0M@]$S*4MTF(JS3#[J' M^;]CY%D<[FG<=(L!HZR;=0$^-.#HX M#5B$3Y_-2B(]L1(C;SRL[YPEI$F.FFL&SIC@(8E#-_)_PA2*$&Y)J =I$3,9__1(H.5090SFR@HC1VL"_,7S9@81(1CZE(-0*4!HNTX M":9*>R<2V+WYOBBGBB)CF$%1.J8D"R*PTB\F/,>,B4% /YTQ,43K#9R%YL)* M/EC*/$$F*5BPL>+(V>PI248%<2;9="AE]=EG3 Q";$==J@'J:V"A>'P8+*F) MFJE\>5-D2S"%7,I;($]A*S=>Q>"*OX?W_#(F3EDF3M-Y ZO$JQ>38'0R6@D4 M4J[+935'F@J)6. QYA-_;P\=5#[WNE2# 'M7$\5Q"M(9Q%@> M<, 4.8TM8CZ7HP!-&'^H&OYSKTMU"MX#M=? IK#'H=L54O6**DF21B97G. 4 M3&[C$T.!"&NB2/D\F[Q2/"T2[P.%W?D\-#_+7EO M6.P++) M$T$R1@G^%:5(&_"T(G.$XD2D=J43N@<)>'(AMD47KOP-"#]NN_NQV3F4X)$S M)Q#L'S$?8H(I0L$R2 MV-EKD'_U8QU #8P0$FFNC0O+-L_&K?/!(Q&,H,38(.BA;,!K Q^:WC *OKDE MTHX.ZW*F+))=&;569L1&ZFU\@V-.$RIUFP6:OV,PP$^WDWIWSW5=\%&6^0(JKDR0]_8R?DCWQG#] M/+T4, QJD(CY%;.$"0*#2<%R&*-/P@MI#UV7['C MIT_;M8_!1TP;#LL>];D4'T?@P!L4F!21$2]5ZKDSW+19#^A"Z'2GJZJ!@-N! M!?(V7&2HB8$9A9@2, \,=\@(8U&,1"7C(G6BM,O=1ZZZ5S!&V5I&@Z4!JKV; MKJ87:W@^Q]5JMCY??7&9STA>_&D!K/"E^[#Z&A$C()JF#9SC94#K+;I" S;JO1_*C.Q=8M;>U02/;ILQ.\B50S95$ N=W MA'A>U96-2$L%VM1"<,QZ;8#']-ZL"7T:U,+-$:"?!C$[,^>>S*,^Y6@&8WUW.3[DA,6N3=V_ER96>S=6*3_9'_]24N M+B?">EB^(T4X!@EFKR1()Z=1Q-$;2Z76#VL.#*#:[C[KWE8\/[L*:+X%"ZZ; M7V2Y/UXM_%>[C+<'+YO9,Q%"$*-L0I$8AW@$8T!;+!&Q@=/ C<:\=,V4IV2J M>RUQ?#NM)"35URP8S&KW8.;S*SM[-#AB,/,&>Z0X-X@[SQ#X6AZ^F,0I9D%I MV6_E&MAS+U;)9\>J\5&H3;'K5R=@$-_L?!J7GZ*/T^^@O5_C/"[L['VWFOKX M#E;NN)AP[JTGL#2+G ">YPNRFCJ4+%?.$IR$2[WX-:C;7N12SY-H_O6+7,IE\L8IG;VSV[Q1\[Y8U83AE2PN5HU9_D=G)Q.2@AA M6 7>DTY/]]6+0_IY^H4]\?/D3'%UU^;/]6[[L5N! M?5Z_GVZ MZ.9Y/MA9+OAU1V^? ;[U3/F0WDSG=NYA@!^[Y31C^CHGJZ\GV.OYU652(2+!S^ &3 07C4",&J:%%]P*T8N(HXK9C[G/-#K? M#L -A%Q?>+^XLK,WW>* 6J:YYIWT!D>ID(T4U*V$1SHGGQCAE11,2V9*5X+J M*UL_MCZ_:/^H&#WC2U&;YPBWYQRGU(8[NJ]S78_J,=(J=Z0")HS1J)#4$A:Y M('/07P0DUQ4PK8[:ERZ(=I8[4L-/;Z]K^H4M2&#VV"G@ 9;1^C5,J56@8. @ M)G+*'U<..,/X4O"6-N /6G@>;0?YG%" M,+68VX0(EQAQ E^I,]%+J1&)D=6\_/9.IEDO"E],;5\RN9H3M/X-!T?M?KEBN]=+HP^;)I? MC^O+]!(T>JO+IRW.G3<6;J#9?? MP%G>DG]A@8EK9K[\_SZ6KG_-]C7N_]XZH)9.> M9?NZL * M6^]D,Y#+]99[$P8\VCS8WV(!$7^;?YOF1K^ &? 2/ORCB)B/6ZT2=7@2BVL^ M]=)(19_IGGQQ];4+A?%ZT&85G_LXM'9KHQ&L/D*WJ\7E?'.P5@*I^RU6<3J/ MPFFG)AI!*<_X5_-E6)2#Z4&35>SLHU>_Q[IH!*C_[OZ\E:_L"KBGZ2H&\E' M'=9-90!O]M3I90QOND6V#/]A9R=/MT/M5C&"!T'70RLM3+SEJYSA\*6[$3=7 M("@X^YYHO\J%A>%3L)^6FL5S)!CK7!4HA%XCH+V=A^GW:;BRLW7-JU. >M!4 M7:?LL,Z[IQ10>RK-9K=R/1VU[3&)=C58#:$].N_Z*:"!X\7;8-+A27-4N&J]P*/=T?>*"7%J#[?1X6LQ\7GZ._6JP3AE]K M=>YE#D?MD$I:@.SUOQ?^XV+J"\ROVZ;J7&8<#LZCP;> R*^P ZQ^L:OXQDX7 MZTO_IT.SH\TZEP&'8[1?'97!NC^S?_SVQVI-I5=?YQ9'-27+;*[!Y#S@YVKRKO6IX M'=1[UTL)?^ES@%&LD[Z@_'T"\/<)P"!LWG?S][$K U8RZ"/FFHO>1<7J^V@3HXVW6^J6B;CL6CM M5D5E?*X%FMO9C^5T629)9V^CU;(:3[2]]ZJG,GJ?5W]\7/@/BR_+Q>OE:GII M-T=+Y=*]>W50+>7Q6%2'J*TRPA^N5K#&PSX^ORBXE.YOM5H.Y+%8/JF@=C; M]]WJ?^+-3AU+Y2/WZ:!:2F2!S?))M55&^ TTVLWC]4A+'(CN:;)::N2Q*!Y6 M35NX_7(5OW2O_YW/^B.,VZ($+&,S.]\*_/;R6ZZ$ P/8E&TL8[L=UV.] MW(!"I!BFV78\L)(FWH%FZR40%'#"VK3U=@A8V(]^V&R=*K.%06S+E;X;[N[B M$OS";1WQF]/ (HOR@&YZ@=Q4Z&NX#EO- OKX?:P,H/LM%\G^.2!L@RA>-,>Q?]Z)9'L;[A>]M5!*+IA>JD, MWMKY3W5V? ML=]Q:O6W[-#^^M?.+5]WG M.(NYD/660RQNL=Y&!_52VT\!4<*-4?\AI:F'=M_,R\RUIUNOMP0> MAV5O?=5>,V-<_+KHKKZ]72ZO"B)ZJ-UJV;G'KJ-/ZZCVBOHU%X$)-X*60O%0 MN]7R4'R3_::2@$ MU*XFJR76'H_7 1T9?O']HMC: MN+?1>JFNQUJ93ZBG(?36DMU9(4J"N*OM>GFJ!; \H*P6EM(;48LOJ'M;KI=A M>LJZ^I2B:F=6_._5=/4CU\C:J!+PNF12RD#W34"_&F8D='J+$R\CN6GSSR;?"K#.A] M^^B%=TO1IX'*:VZ2KY\O'WE^[^ZC%]0M!:X&*J_VK+;N:F87[Z;+5<&C[OVM M]H*SI7#6DPJJ#>#CE>742,B>)GME*[04S#JLFNJ1_^O%OSR 3[7="\F60ED] ME=7 &R,WAON[;EGZA:7[;?<"L94 UD'U5+=V'EC>ITZ_G0WV@JNE -0AM=2^ MZIP-JCRB0H#M:J\77BT%C XHI840?Y'RF'<;Z@502U&>76JH;H1T)Z=*7K?1 M"X^68C /!M]&FO?)< S-5Z4MA4D:3%/MYK^"X;(5[)>X](OI^ABF4)[JT\WW M K&E $A_E57?E\(TRV5G'-/OMZ,K=?S\5.N]D&TI%M);8:T6U'@[7TY!K5\6 M=EU,]BG7RK[4%3U; YJ.V=J#1TS^W%;+9C+2ES M W1_PPU@=> RZ),*^;N80*TY]'=A@;\+"PSSK5>+V9>XN%Q^2%\6 ?A5QL(_ MT&RU.33,1GA:,=4MA2Q5B6*D]UNJ=I-WJ VW8_BM0/)ENCK9O+[75+4KN4>" MW$2//O:K';==AA.3ZBD?F!Q#,P.-%OM M?NTPV)Y63!,+X%JN$N_U[6BNVMW:8Q;"78IH:#'\LKB:K':K]OBE M\+%"VEH)"P&VO]5J%VI/6@>;@^W:82CW*WS8>[ M39=RZ9YNO9$3R8.XW0_@]]17]3.677*^[U9;4"TS,7$R,C R,RYH=&U02P$"% ,4 " #$;@A7/FD33LX$ "-' M$ @ $#<0 97@M,S(P<3(R,#(S+FAT;5!+ 0(4 Q0 ( M ,1N"%>DC.M4,T0! -J$%0 1 " ?]U !F&UL4$L! A0#% @ Q&X(5U D;F"" M+ L2P !0 ( !A$R0,$8@ M )A8!@ 5 " 9E( P!F

XAYU*1EE;_=\821Y MY58OKP*2>_/0V7@?D$79/<_L$=5LI#D%PNUEZ0X[I6-PX,8O<*=37=N0T:F% M]6!NP,^E\_S^V\>[F])7_F4:F5B>P1@<9O^Y-/XKTUQZF$0!1>60(ZW@"E(2 MDQ)@I9G)RZ:PGC3E@WG$8SIMBAU(8TIR'OX DRD:34:LI[T/FW_ @@+3^$8( M9@ V*LT+&!\!?L$)LWDU[Y&?)/?^U<*(J$1 MUQ2I\#)CY=._W0V %]VID4:4A*ISLAZ) H'NIQN-1N-!+#)HHS2B!)W+05 ^ M-.6'CZN-9A7X=\UBU,N9OZ M_-/H-ZZB\5L(T6-:N"P&X[W6?'!=RZ 1!F-,X:>A"T*8BA4(" /&1::^$%4M M(ES^)O,.>4J2@K7M4EW&(\\A7ZP\.A)W,'ZE3SCK\(COD>/2/-M M=O_\'JZP/E')W,%,L9U?7_R;H+;YN+I2Y6-!M5>0*4+ M\H[^Y-E?BIY5Y^!*KU:7HE_0B84+.I/0V#@]^SJJ^7VP8)[]7YEX@G:108:@_P"6S-ETUZ_NK 2RJE ML"^DKT]4&:$8T1L+37FC/_3.!3>?U0#3X#@$]7P^=LX5,Y6*X$ MGSXRQ-B+9W8T?LX%/Y4CPVKXL0 _+;L>^#G[W80O^55XTR%AI*ZV+"PT"I!5#:%Z.ZAE(]H;00'QX&2NVK=ZU];0-J*-432@NA MXF&@U $H[>M6)9U W (%*X\>'")WN.EW:_D'F^LH",]]]V+_ CHGYU0Y"PNH M_RQ!7SA%M,PAX=TS3]X]W+OVCIQ%T7:L[;@6Y33;VW$/ECO:C+49:S.N80W/ M]F;YT2( M.D^ -6$N7^3Y0?:2#90&6,94G3ZS\MQ3I"F)?YI)YJ!H"3@'N!_>6YQ]##>- MD&5G2U)105E,4IBP;\@*E#!_3D*5Q]W=0/NZ>BOW0YJD$5?#+DGC-HTB'B0? M/!3%_\?94J%8,",O(XR60L%AGS39$+58F0!%TNX\F0&E^U0&E(%]9@PH2K*: M D53H.C.7EQG-06*ID YK&0T![&R[PJ'L<=?95%%R;+0]M6MJT*IO6AKN3JIM6^^K=X;D# MM&EITZJ[:969W_=A6IVK=Y:U>#A,VY:VK0NSK>Z&R_6JVU;WZEW_9"+"LR^Q MUQP=1SWE7'W!5>F4\Z 'QJ8Y.LX7/I47%=7@T[]ZMZ2F1,/G3.!3/7"N!I\! MG@C7'!UGBY_JP6$5_ R:6-/6T1P=SZ/ZXE%8K/&;1EX8&=#8@^=P6>Y$%PU& M\!*Z"=I@$QCP078G]/'FI\2(Y5/-GU&1=T*/N"B[C;CK+5F:#9K6U3M-X''> M6*H<,.Z*)5MCZSKVRL!E,MP50]E-P53.V:@>GL4XS[)W^[ M[#7:$X/'0W#C#)K(C;.G4W%ZM5]/)"V$CH=!4A?/;&DHG3.4%B/'PT"IMX!DG]JW?].CFEL\]&+CUS^O9MM\LV;L*3Z.>31OSQ1OS@5/H6YNPA1N>>R[IUG:L M[?A2[/BIU2_[GY0MZ^I=ZRD5,-J8M3%?IC$?>/MH>Q.VK][9>RY8UXQOSX"B M9917$;]/?29XS"+^G]2+N)%$T$/.B?2,N2'(E1G3*'5Y /^:3J.0.6/\;@3J M1-8P^3MWD3AN'>U3W# ^2.*G]71/)CVC6.JR=\!CU)GO@/&$^[.JW'.5-^NW MYIX;6+@_WUM"LP8BP;'@\!M&D7N/!0!0;TK<>BLHYIXRV.[.=\\]C7!N8.%M M(TMV+Y0DYM!8H@6[4$XZ14)7E#4QT<7U=RY%2,=3P$@8Q<9*I**6%Z':*4+U MXV\?%%9'<1*] 9<\Y-&GD112448DHA)[*8S">1.DDT>80F(>9/!LYO#L7+T; M>0]\"2&BU$+1#(7;(KJZ<9A&_DQPU3&?11X\RH61@#29$X5Q3+29@&H.&G'H M40]/@@7D;<'"1\SQ?"_Q.'C"M<2"UFI:02(3_#3ZPA-PP!.P1I+"C1#U*[CVB$)3 M\.>E$S F $E,%HV$F4&,K'QQZ'@,K?O12\;T7=FG$=>H\ ,Q+\B6/"1%(C%, M._ =R,)]LS I5S(&^*T["& )+-Q1HAD#- M!U.GZPSG,Q6X<,_/ 2S+G/6NWO4&FLY,FY@VL>UN&JQN8OVK=ZW!DZM8M8EI M$SMY$]MN@VB3B16O#@O2R;4;)M>RV67VAP6:9KO9TQ:H+?#B+7"[^_LJ3W)V M\^I==] Y%1,[^\._MRQ@+M.G? ]<_K1==4=U:\+RQ2Z TAXT$+\TZ.9Y+V8J098V: M#[ 6?(#5#0K$Z>+H GM[B\6,-GC,"SY:'"*J#IW?U MKK.$:%R#YXS L^41K>K@Z=?-\SPUJ;=-X4[5-C;]3I^[?#X!G8]16_NQZ6K[ M:#;MHUE[(XD[_IE,;>/:QNMKX_O9*U\P8SQPU+?VE>331JR-6!OQ:B,^PCS= MLJ[>V6:S]^1Z%VWBVL2UB6\T\?WLQ56T<9MB\:Y'8,M(+ M@4@PJC B]+P!.^ 1/@7=8;7IBS&.T+/\:0O57;TC#@;D;4'_ F",?_R!O5L& MBY6D)*@X^0E:]^"0'"5K&4E^"Q-N6*VJ+!6WX63B)4A*$=\$Y&;!%?' \7C\ MLQ<[?ABGT1*6BE9KGJ6B;;/!L& M3+0;V:L3XQ>/#27IQGI"B:6$$9L[4NYXDSG6D#M-QQXX[2X\;W=&'6O8Z;L] M=S!BSM6)4-)\CD(W=7+IS8Q;GWF3$R.D\6(C3H=_?PV9AHM>9ZP1PG2IEO&H]CSQECGYF+(H36\'Y!09/E MSXPAB_$[:H-'.-O!Q(!=0R9P_&\,@0GT[2/\"&( Q+#HQ:HWEEZEB,:9+UXE MWHX_]Y %S!O!5^):Q,B(.,W*\I+$;T'X"-82 !@\%YM=(>?S9'1:!L)UD]OO M 9$[,0_<^?^K;=?/O[YR]?Z)_6V]?HQ9R(@R?^ZG'C5Y; MY%]_^_L40%2P.^ M4,(P#0KO.%$JA6 #=SQ)?") ,F[N(R[^]0I?)7^\[(%,M$10A,)&QT!X?N#4 M3_C_X'K*!+RI@7 M_H''M784 7P/,9O8<.X_6A8G>M.MVTJT4,$ :LV\"NWX)03XHWZ.4SO??"( MMW@'*P#I-SZ,6/R-[=_5U,:\?D=70O)8AN]%6T/U/GH^>&4VDX"')]@]_ *0 MS>7]M0CHBOR"&PZO_)*93M[/&WK7#_AI^@)]%G%B6SRDON]M6[3M,$ M22_2N*%EAVF"/&+7?Z3N/0F(:-AXG*A)=@B##X038!4'WFLN'SB1U54:M613 MK#SX#N44EXW=FTRXBPQLJ&V!!\1 QL86<8Q$T+,=:\R_A<&NP\9+L?K+QSUE M'LX+\'\Q.$Q?K /"!S 4MGX%0S#>,):/>:.?A52_\FBR2#OHIE%&.ZCZ#*O" MV/M^/>,LFE]\R(@+.@1*@R42*$4&7'PT@HC5@PG)156"::XR=_@B A:1*3.;!M3"%I3%E#0RPP(Y2=>'(<0SN*RKF'K1XIHW=D"(D1]P8:!#IA M+R!O-!\PXB,^QTB+>' ]2J<8Z=JIKV'\+-AC113G1:[Q'X"RC-8 M19%$B"X M@ N)9FY18A*#0ZOW-C9@WD<&3US1J:7?9\ DM/U9J0T7.W&VPA)J0WKBE8,= M,X P607$L*DCS*:BDE?4K3Z+DMMXJ'2YDC$20_EFO@)=A" [7NJTH/LAJ,+Q M4Q=MWIBD"0HMXCYG8K$-GDDMSM$^_"P)@4%+1*$Y+4/1,Z#&0_H%ACHXZX,X M8)$NF%S%^BE2\3!F@83> R2Z1K\H5['Y._"-KA?C=] KZ7T+*P'Z.;P'@@LP MVCV%FENEV4C1.1.L(&J6H9>^30_2H^\/SU&X+Z5A2 M*7*M(Y=E$;D&@':_'()+'WVFDUM'W6/^4O04V_(/[IL#Y)R+%I8-\8S*#O:U M.E9SNRLG]0R7GT;BMH6*,9N]*F8[W8,!IV 7&/]JNH_3-#FTLT^X\U_1U%JK MUL"U/7.M D_H+%\?%SSM2=V-T^O&641U7S%A6+LKLE>7[UU"!+@7T9S]-/8L MFVAM) EI[S$\W(=NZWVE7QT*3I;7:[T/'KPH#! @N$D2N 9E S%A#/R?8=YREB6 M1B5R-T#F"'DNR-)]?=GF " ]C!*ZZ]"!K_R92 CSD@**[YRPF'N[P_94'/ *1_1:" M=7. +178/#)4EL.]!^[FFX187A?B?I-'I7 1IUOM//1C4W2S6;.?OWS.FLWW);#!SP 0'Z'W M-Q:!VS/NTBF/\.I,XP[Z;S@^9T$Z-9@?P@_$;@0ZJ3"-C1#=.0&+!71-W*\A M7L\Y!E6MG%?$T[/%_:+RR61KZ;5ZM^I57TC:, 2I$*$/H8XE]^BU.SA[+-OR M*X\@UV*<.EAM$5"[\W=ANE09R:&['+>JC? QH.TTUPA!=E04QM3U>3,CP'0H M2GHL!!RC6#'MS]2N^A3^-T(;M09]6[PLX(FZ7,YX8'XJ-JOQ0M/8P2F5-HSB M)%:>(.:^V'S :_;PJ2FQO M_?]=B/X!J_J>U.L>]GKQB)WJM4E&+$HJL.)![O$(O<([C4=X*4XXV783S@[L M&VW]D(VR>,M">!I7<2PWV2VO[BV:_>]3<>/RTO*1&>7XU*CZ,*K60M4(/I-/ M/CP1EA1SB5WT81[N>N).ZCT,.,C]G,0Q58.!%2(R/5"=N+$QC+(673*EF#^0 M7Z87ELW50ZM^\/BCG(0H5&'JV>VW MV?N*CB$S?32\^5J6HC?GW[DCK@PVP%.+6A7:'A058!0WX/ZS=!N1]T#E<#Y& M#^+J3PR=XA@K3A "_@3+K%??;)K/&?\NS!G_GHK0?)U5V$L=\^>\P2]Y>QCI M@U?]*';/W8]!MNVYS$S87*YY(WA?<],+"2 ME&+ :X9H+B/0#:$KB&$96,V*]>>1%W\S8O#/U'DE'QKPU&<08]"4*WV"B@3Q MS;):CN'0\:K7)?>9BID&XQ%KT.OBCQ_''*.XK.9#(!P0[7P3*);3LQ0N-,JQ M+[0"HJ(UG*'$BPF8^'H7Z[7\!RZ_'[0;1E96;7=IJ[II9E8%#Z>$^^9K> M3O/J7?(8+BOUHW?)&\BE YI0#9IX:>[6P;HAXA5P%C4! -@IQ&:%<']YA$9/ M9A4J5# +P !-,\PHR*AQY6_([J#]$)L/(QYMZ7%2K)>#E-BFHC'&'!=@. M.C^L>L9W*$,S/'C$D>W25;KY,@_^( M_-%M0,LN2YA8R\G)NJ -L%TP\2QJE+//RDC3S*-]8:E2(;F;&O+DD7-1FEF< M'B00Y1)3AO^ U6OZ!B?] ,\!J3D/O8TJ92S/?Q*PU"K-X@WC)W(DZ90.'@C# MH6]%Z2SZI@<&4(()P<3S1^Q>3&V96QQRW^,/?&&-DZUB82#\'EZ!4R,NJ=.X MVAH&0_0LT =9!-WR.^:8I]3XLQ$CBL@>2Y1>Y^\-E] M[IXLO$5<-H']$5'(?+1&D2<8+<4S>71C@FW'8V.$-454@#OEB4? 4 >?38K' MV!3S/^)^;9?*$;/%B=0G!$ 0\^$2L0@3%U3OA],XP]Z2J :\41;O"9"J:)'/ MG>_"LVUXJ;OO?4- X20&7M&)O"%..D.(W_'W,).,V$,84_D).[R4?2X3@]6U:*?9(JQR>>T&AJ\;<9SN0QBM M 1^XBJH)VHZ-A?[M]I*53>5UV 8"HX,-H45#Z"W>GU!>E,VEO-9R"^R:!+L\ M3H+^:DX"32]0A[X-X4@BK80A#%79" )"G%/-3+WFT"E$)GC"@Q:@ZL$JK'+!E> 9^Y1?'H8)* MS.*IX+$8-9BX)O7$:B><>H&<_0O1919,9LN0,UY[FB4(/&*TRX96F[N2]! MS?P[!:AT="CC*G@M $$I2UH%N0RV2L.8T\^ML;R:V/PCMA;8]CF3"74ZB?]TR( MK/RH3-;BTP4K7KJLRUW**CB;>/2%.N1FE"RP& .?AN*,/9<.V0>T/ 8G624R MN[P(:[ 7UJ>N9GVZ@+!L71W)VR-,"D0"U9I@<5)&8=>N9+GIGYE&5FMJ_\J8_&7OV,1\FB6$Q% M80IMN3A?P32*=59CC%\Q8?KZ% ?W(8RPTNWZES"D?:HLA5>/5D^D&]@EU>#63BM>,,@5DLG4[G&I#60W#D%Z64O%O%@ MEM=WO0A>065)N/E!)Y_A<;6#CN>5HZP_F+AM@,9P6H)H3D$+!T8;;S(LS: F MXW]3R4E^3*?OW?E/ISX+YC^;L-G\1T(F\Y_&8UP:SW_J+/N09044"TW+"'FA M9V+#;/'C\(]B5\0A80\K"NXI0(W-?% MSKVHG@(5B4%BX%Z(JU?;PUKTD7UO]!UH41G,M@4J[8@5H3C$+;@R=N5^*.T9 MY@D0W&>/91%5(15"GV ="M8"\ A6BJ*"0D@6?=5]>5V6EU86^U4LU0Q3C(MQ M0^]^9AKW(?-CJOS\@ZME'KX3(5G+'L7_$]LG>>@Y44CY3BH,H:@2N88+]A]5G6!>JNI,F3NS6BXO1?8\_G MI46K D\LMWK7*D_4FV5+<;%U.B-@*+4A,O-L%NZ04ZD.KO]E @QB!WAI./&< MTN:4J:I:PT@640F-KH !C%KR$HJZ!@I#O!&\"],Y1,Y(ZHE,WT710R>QQS!& ME:0 X-0TO$>BY3 CGA,O9$>@G;YJ3 %@MP4U2')WG%Y)4MD@A>V'+<..#9/\*C^1;^"_H5E, M^IQ[/QQ";\:<^6!'#F9NXV+1GO@1E>;XBYA4T,WJ"O(?4A$5%_0.:"BER@"3 MS)A/IGXXXS07I#B3@J(F@";1]D(5>E9L?H]5C+1I%K^EDI]"^AT>@NDVYBHR M(XFKC*7J;;:%'.=,@^@S,#-#_$"82*( 5N)*#N3T<]D%+0&>&AX*>6/93/3 M")F%J/XE],3)@'L6FX4>0_?!>8$/0A$1PYYPJ=*_@G_RV4Q*8)BZ]QP7%3#W MC 7A3GS$?3T=DD'I#J5IY7#*HY&D;,9Z$*-D9\B'&4GA$,0@)5"PY2Q3/2" MBE2Z'",A1]:E\?FW4;J,1_EN !J$VJR&7Z:@M>+@\?FYQMV(/:J/'32Z)"\M M*PZ&K%+FK&4*4^(:9J*\N>+1@>S-#ZA*F'&9V#U0&]H$6"] 8,'T(TH[0;BC MB)86%,A$,/-Y"?'ZX3?%LA3RT2%,:6$D M44RQHVQ3%$!1V1T6YU#1H)I,!"T;/*6,9QD"YHM(,.B[!I<9I=/L]4,L.(AF M5#N2G?^0(8TS*\%&AM,CG^6S+4C%Y7-*1GL?PMH7HNNW\_H6>PDI)8A+T4>Q MUY3VQDFS"GSE4 M\N/%*JS(YJ^O$7.^D6,+ TY%2+=C/DFX(_KU%9UOL5F*(K ?<^W'F&XA;Z7Q:I&#:SGW@LR\U&_S!6;33@RV%$QM K+X<^1CT'3 MQ*-E!L@)1B4V$*9I@CAV9F F6&")Z_29G'Q5^U0XEWV'Z65G+ )4'V9P#/' MD803\6^Y6!W,3"YU4EM8<% M5^2/LX@M$+S&9%W9,H26,A0OB*Z^E;O(Y$W5*@X0B)O"]%*Y%,ZB'5C69INT M@!OPKUQZ:?""_TF9,U.\>E$@SPMB@2?](5="(H,1N 3>"8=97ZZE<*W+N5MR MX'.N#I;4(9TK$%MX^69?MJTDLD4B1I1"G9]5Y0I=3MQR+@WXXY+I5ZS9$!7S M98RR$/;NTX6SY> ML=:F*@)54)^O+,F_YU<3()_+$!P8XN,M3)835)XCORK.DPG[SDM"SK5,40P= M]1 ^B1Z=:TS-D'F@5SR56&P7C K"??C]LFBT<((2&405#FGQD%77RG-Y?X?6 MH ^%]3RH*3N\]SX%&^8 >.*J?FO<\W :(J^>4RRA+/=,V)9P>0#]WV%" G^" MD9#/1'T]1>*4C^$N%58C9HEQE Z+/**WB& .BE)BZ%=1+8;I07Y2ID3C+VL8 MLHUI\@T" V)O.$OM19@?2541AC+,S(D+7RD\<)8UP4*&G$Q0K4ZDD8H#$J5O M5['I&W=B]0A3//4VS J*8[7D@H_+*RXU))AUR<')!2CYA4(60>RUS)0&UBSO M,"M*6_(0JV%R32TEE<^1KADKOSVV> M>X>I\B[-6LRK7&PD5(-@P,H,67!!L4=65E)X# _X2#-#]!@AS#O2S'$%.G6E M'\.3=;&8.%=V @,N3FJ;6VY*AY>'1])1%7*,P>4WQE/&O\)S8R3^@>4+Q9!$)M1J'H@'^R0D\UGQ%)/E50](PV6:"BK'"U<[TUL2V+^C8#OC3! MV?MU9V8>WO& M<-=J/XDM^$!\P!K#&L/;8;AEF1VK<\88WNK6D*?CN8:JM1O=9]=K[FNIU6]471AMJZ.UDX]6T?:&9#7Z M6D6U5I'5:_2.IJ*S3V&_1W+DF!?N9C_$BD2WH=LX1!M[6N0(1]BLLYW>X7E1 M>9D(*]]]P*4)Z]5.]>F_;7;L0P4 .H[>5P0P,%N#JMMD6DO/;4M=O=JIN8JL M;N4=':VBYZX)./W5S@F$4S<3O,?JO^+\H R@CKTG@6*O3K5QRIA5[ HIM-W8LJ]%J MK;-:K3@#K%\%Q*:O7/2$5/JV*KGW+^_&?M=DXK::95M%WJN>J*Y/GRFO4+ MO?23>PA0Z]=A_>1!UATG6P[[B=B;U:+C%3*H3_CK)ZP^+KOJJ%>Y0$"75SYW M@4"O6:% 0*OGN7=ZFM79,K22GCV4/E2%LE;1OMPG&) MZCU%W;8[=2.(TFK=A\E6/BNEM7H*6MUQ3^J@6KVH-K_\0 M";?:IMI.$;,MLUV9VU1?*' "BK7,0>_Y;Q0X,<6>J&Y[W$VZ#FE\>A:&DCQ<7L"2)O&$JKD%/0B,((< , MDB@4])^>/&^E,W([Y!+ZNGZNQMHY0)Y':V=?D\3A:/*UCO97.=?4)J35<\%I MN(7HZ9?&3PWC0QA#T&3OY M:^!.+/EZBH%%KU.W*KAC2$'?J%KOA*^&U(5#:O]YYI.'U#.1!A]UQ#][?IIP MU^ L"J#/L3&%I1BLU28A=&7,HH/4EF[ZG824$,R;%D#'#5-<,A*L"H";_^J< M@]V]RJ;>OJC9:.UXQ?%>I'/D1)NV#FT=ZZW#VC'9?P[6H=O8U5=#Q'VF<>*/9OE'?5Z"G!M]X";S-66\&MN 3-+[P./63V A' M1C+F!B#/27UQ9Q1$+D80)B">(/8 UA#B3#C#$&>4^L8HC(QIQ&,>).+Q:1I- MPYC'C$#QH8AY< ^-HBA- WJ3CIB3I"A8>,A-'= #7GX*O7OP'.AV,F:) M,4P]WY5?I--I&,%37C"*6)Q$*?V\87P%UXO/!.&#O#Y5OM:3 MMZO*MQDN?^!^.)V #@L=!H2#7F/"0\Q&/)F91L1]CPT]W\,_J D> 0)@# Z MA'.7$.1!UQS04#CA42P[8DQ 7H8S9KY/W;B'MOZ3>A''M\:EKH-(/$"3!WWP M0X>)WGB!\1N,>6S<0*/@&4WC+DR+?[Y/HW#*1:]N8H^5FP3UA-$]H/:_(&5\ M)*1;/C@UG(PCSJ$_*%3L6TF-/\X]N"G'F+-\=,831&:=/F(1V3T;$9P,QZ]9#SFOFL,9Z4NP<,O M+-.V^R;N] TY_,(#!$.,0(\%(%AX7QH9,UA[(M -,&&?H [/QV!!\6AF@%=. MKAT_C!'BCV'T#?_KL"E.$V#LJ!/1#?B]%[A\$H"5&X[/O$ELP PHWP;^':PX MY@:[!ZLA%&?202<8X(^AK6AF^)SAK\#"7.^>7A//P&E.J+;K/A+S!0Z:3E^" M[<5(ZP%]>4!_XF:_DFPGN5\%.R3X0>^%-\(/G!2D&23^3#A.\C#@17QP)]$W MGDA+Y\;OC;^7>BSL'EZ'/9'/?,T]N#)U89#/)UPB",&H@ M# B?2O0-XY;%8YS%')IY1E$XH9:2" 8 4RK!"V99-,3>H&/BB__@,.&!54B$ MCSPQP1CA$(0GYQI4V3H#H9O)11$CYG:83_;\HMWM&8\, >5@_.\B*J1W6$?B MV) ^@^:KE8.5+4NH%O"63RYE2!;0K&%9A*6]T>LO0^(_6?"W$.+:VU!-^:;Q MRR^WF?_/OU=3 ,@X5TD\Y0[ W?NO*&W%D)G"!D>%#8]@!J"61X9!)0R7W9-O MS2)"H3&,M6*:6RA*#R<0_6"[]"5$:Q!@DEG-18:9"Z19J6.;5KN+T,.!.6A# M:OB-XCC!R\-DPP,Q;;DY[.9#S)4QT&4 ZU<&,Z+1:A*N6D_V=[=C/H&9#D(- M'A7GGR+:Y#-9M)'A3"C8;+7; F7"-98\W\@+ "!K_)MIW/,@ZYOQPC:;W4[) MW9E/\G%J@&M=VVU([U\(F5=[N?6A]F5 D>+:O2"10CVLO\O&%/BVS5:WOS]\6V:S.F+,8[XZ"]7?_+:?6ZQ M+NNU[6&[;3N]86?8Z?:&;K/9<89.G_V[=_7N*Q77@C.$P"9!S_'C#^S=,@T? M=S98GJI1&=V=TS*G,NUA430Z[%CD2=I]L]EJ9S&RR.U-H)5Q;/ G7AIDL3@ M%DPQ%E/7"ZMK=JR!B3D0RVYT7YIYFF4:>:%(L1C_21DX\$@X>&?,@GM*7(A> M>+'AIO3W%)["&0E_S?+,65Q,**$'+\3$^I#VX$(X/ISVHU6B_IZVZC^3(31SZ>-0+ .!!7-NC/ M?9C<*9<#"!"CH/FUV^B_-, 446]BA5X8U#EO$OPUPH!"7"&]-1I-"A!>M&S3 MAE6:2*9)?2"X^^:@,UBO$/B@U6]T7HK8X+[8"9%!CC%H8?1J0%G;:AI#%@-F MIZ&'< *XVA;H3&#;F^"VA0B@ 1"EYB3.);XQI!F%OA=*>Y"[%KAYQ(0A2 #/ M+QXAPH1([QZ02FD;VDT0&TD^#)_Y(68K$5>YH0I334&*X(X# )8DSEAC(X*HE_H-OY79*T3A!<#Q=$;LK@W1Y)(X8$O MVV:X##?@X)T8 "+6@FQ:H!2@U05O;H#EQ&EL6.U&[Z4*OY?X]?,%3GG90JN5 M[8%"OJEG#7!EA($1M27/(XFFQ!--:XULC2=WH>!U<.W6MDIKM^+T@CCXJC8+ MY"0I7,22OF_9![O8!U@]MON#TCQ]SSRQ-_:B9=$B%5QN&M$&J5JNGC&^ENU M\]%(A @%SG8#G?XFD8O2G)+N(5H9@$]R\!61V-^R!XWV.F->NBN^ MM(%]R!SDB,,R W>Y$I:D21C1SIUMO2QXR )VP4WZWG_E[L,(G1=N/XL_,(7R M>^.ND6\28O]D=F8:\0-B$HAH[4$A)$"2-EG *3^ "&3Q@ H& M*E+MYI,HSMI?"BCT$EC+%<:PTO4FG)NDVFQULG$J(SC/VD_7ZYJ@W0R%'50$:=H M;2'B V_PC0>FW'A"/:NLK)K1E=L9I1'-Y."44E$JM>CKJ0;?A64O%D2$Z+2I MQ5!X.D)L'K720!$H5,2$%XW(P<)R)*'M-U,D;+_.%R/,[X*9Q8@W+*_&(8)- M/ I@H3F7#Q,Q !R\B$_$PHN*D=#^QJ&/E13HI,&I;ZH:PAJA;KD>N>XH7I_# M J5_$BX P7$-ZP'*=!LW ?-GL'C=NQV7RZ]:ZV3YO):]+LUZ!Y\"=/XAO++P MLK>%0&GQ>_L<'/2F?91J8Q.S<+9U077?,$:?36/^1OWCK;JOR0NHI_2C MMV60=::+1!/X0O%UGOYO-,46@#Q-)=\LOV[05W-%[.*[=KO1[G16?@WS_H[? MM0?MG7ZYKK/(PF-U=6=U9V$.WZK9#2<,*]3\;WQTL/#HD@- 8A_R>4Z[]+,A;AA:2+L(Z2*HXFC[JU8LSTY7'7^_ST0/+[%IG?A&LQO)E8+EOG?^MMQK+EX'E@=FW!N<-Y;VPAVT% MZ_JIU[+W?H?S5MJMG8$?A43L>#%[L63T&&1AYSP#+!MBS;T >/EVU8"E?F3W M&G0G!;J.V>V>_F7!&G2G!+JV:?4/=7FKOM5C7T3)W.OKV>H1@*JS%&RKG=&#KN].T5JL7:GJ3]U:-#ZV"^X;.UZRHO%Q"?BP*]]F MK^%Q0?"P6I?J/LX^":AJV^?/O.B$X*4OD[MFU];Y0(VYYQQ;RQP,3O\^7(VY M4\*<#7ZNZNYV_3!WYNG ;N=@]V37SM@N-1VX*A35J<$GW6+9J'HCTYDLW30\ MMMH,:^Q8V:7A<0GPL!LM#0\-CY7>HWNI[F/'R[?JQV>P,%C+EH0NVS) 2]Z[ M'0D J;A8,: VY\BVUC$ 2?K38F-6#SE%)?F)X!P/Z(LFTH)FG$(%8M("-ZI9 MHK?J2")1P8:9_72.(G6>'E4P8)49MK$+?Q4W=7V(/'%-R*_YC0LE NYX"2$J M,A?E/1.?J8YEM\Q4O$%FAWZ6Q2U8Z8HL2CRX)Z89PPTG*"(GNP4"[\?!NQZ^ M2E*=O/L[]G[NY8^>7D,Z+6 VP42Q33&TG*=:D9OE"3:B M<:3]/E/O9_@&Y * M$1>.5E'QOK!:MMGN6(LT]6U)(-YLM$ :DG-[)5[S3G?- 80@Q)W<;]DY)6*Q M^QF=\T+WB\R>Y8L)S@+G56>PE9>R:7Z[>A";G10+F^ZLYK>K.=F/YK?3_':: MW^X(TM7\=IK?3O/;U4M(FM].\RAI'J6-U1DL;R96#9;IE=:\=# M81K+&LMU&KC5-.U.^[RQ7*40[=P([MJMQE&T6SL+O["SK9K@3I_S*AR$,+N] MTZ=]TI@[)]YHQVSI\ZQU#TDM>U#Y9(T^T'IB!UHUO]W>LDVV MYK?3^%CC3MOZE+/&QVJ9]1L[;KMH>%P"/#J#BS[&>LXYP)6D(J]\",Y>Z[3@ MI2^7+=,>Z+2@QMQSCNV597<67(]&FT;;@3Q4$IDMV7>90.DK9G?]@./IQV#J!\P MEL4KU8G0]G]TA1I\XR7P-F?],&PQ#.,+CU,_B15A!\C727W)R1%Q(P@39).* M/9GZ;1-#Q_%JF5A_SW0P4GZG")RP%+-K?D M@L.._9,%?PM! ;=AB=P-M)=$WC!%_HD7/=/&]\+O6\U&]Z6IU+[(N+:&\*1A M?!+L\7$$?NIJ\AKH)O,(0:C+5B#E%1CY-YS ME87@CPND+9A=)5(ARD*4Y+"15V@MFY R+GS- @D;4CB6671B$![V'<7$W(D7 M>,3'Y#UP5",/D%\ND]9R'9A%)>1( ;'$81!P/VOHC,VO0'14(CC:/#.L9S8B MGDY) P0 ZG:0R!,_M/L-^V697V?[:6&+ETGC*U%8K8; 66BV*K7/7<+Y'.GB MKR#5-"(SUOP^]2!V.2D6&MU9S>]3<[(#S>^C^7TTO\\1I*OY?32_C^;WJ9>0 M-+^/YI'0/!*;3ZF8GQQV#//@NXZOBXS@A>^DK9 M,ML=3>FC,?><8^MUJQ)0:L1IQ#UE;-V!S@?6//P<6(WC$"^=8/AYLOG E31& M.C?X%.]V,'J:^HU5K^QW6-D?C+&W?F/5^*@NLY;.#&I\K,L1V.W*L=FY(&1' MRJ;Z,1FLIHA9SUFP*UV1R\ML/QW)5H1%J!78BE0S.>/0%E0J+!%41D2@(%_P MHFU:O6[>7H%&!A3#00D)C%BQ#-V.^23A3D;^ H]G9!XC+XJ3A?<260HVCT)6 M7$0?V# "7 O6H9*4^Y<0__P8:_$;7,US'2 M<,C7X&!S&I><9X4A_8>7X$<&&-/82"+F$BL'\R6MRQ\, V[)@F2PZ=3'CL(3 ML>H\]#41/"+&;4C1>MYM(PT@:G_TDC$\G'T[!YV&<0X4( N&8]DO-Q%][(=2 MJ=U>0ZB4/]ON+J%30NZ#16*7>2ZEG,I%FL,"*](:+(!:O)CXEN;,31(12;8E MT8MXU10 M:>8_8<,81I:L_LG"P=4C.??"V7"21?%_QY'JS106W==#T,&W:S:"SKYA_B.; MQ5<_E,8T\8+KH@"W&/M& QV-]C+XJAP]/[+:],4 CS#ZR]6?O':?6ZS+>FU[ MV&[;3F_8&7:ZO:';;':0XC(A0LT0?1[V2 M;FPKQUMRVBIRV&G*S_GA"JQPX(Y-&Y ME _7;&A5R, N"R12&!@!?@T3"-*05^>.>'50/D_%T,G8^+FR0VE>-LW+IGG9 MM.6=CN"V =5!IQ7-C7<8#J:SKD:M-OAZ[SW;W9;9L:M61U>2P*GRB&D,GPJ& M87W2:NY8<782&*Y2[O,$/-=/M59[US/&3]!K[>4&WY^VJ;E1KZ=FU5)FW8UL=K9W0M(JJD'<=ZFRK5M&>(L9>Y3O<#ZTBG6I? MJ['W\@;9-W6YD5ZWH=MX8ANU6(P)A]VLL^W?;;ZA6J_**DNUW3$'G>.0<&@M M;1_O=\WNX/0)E,Y<2W:G<2@=Z9!_;R'_H5BAM(KVI*).9>J2BUB5G4"(=C,) MH2?_I?-E*B@[]A[7"5J O4,*=C_<&UI)%934[QR'@DLK:?OK[]J-9N7;[[1Z MGFVJ/]+]%EI%%52T8V7JX514BX19?8.P3\_ ]UYE"7)6149=F/5W7./7H\Q5 M*W:%GQOLN!5X6FK=HHVM!U1OA?[YS]KQ[95/=L<;(T[+/BY-K4Y/7D[&]B,>2>9QHK*UQK41\-V6#)>]3K;-0>4;;G0RXYF5U.L< MY[K,8U+ZJ>;X&R4GB.?JE2LU1O1YJNA5L]&ID<.I44:ZUM?%?J1PR!CR41C1 M_1GX5\*^UXQ><:O]OMJ1P^R/G6YA_/5V!I;9:N^;QNRY][ UE#64<1.CN6,^ M\52 7"4?_#10UT^Y@YWK;0^IW6-(HK[D>"<*K>:N-\9K9&ED'6:'ZQ*158LL M>>V7?[#@>](!TN>H]SQ1:ZU,-5]5#B>4UCHWW;:L?9]B.$?EGJ)F7PU:58ZR M/KU*NY9T%F>ETO_Y4]^V[+?/7G^O-7OX@/CY3U5H;I/#ZA1O>1*[$<=>/IZ@ M05AF:]<;CDXT,7F"2FH--!M#S55DMP8'H\S87UAPV3K:.<^J-?1L&CK47'0B M0=BI)04Q]O+Q\A66))$W3!,V]+F1A 9(P8%?1Z&@!O;D:<;:I@Q/T5I>=7K/ MF7?0N:1GT&CU2MS+T>B)*K6S=X*.,TPFG:AN#Y,IU/K5^CV5B/6)Y M.5R(7W]I_-0P/H0QA*W&;3B!SLUT=G&7[&)OQ[NG=>KJN934WK7^6JOHV;*+ M5K-R$*F5=#;I1:VBVN<73^7TV:DE&'_V_#3AKL%9%$"'8V,* 1E$;),0NC)F MT4&*$+<,[(5ZW[0 #VZ88N!(:9(G7&9A&E38V#V@?+!>ZAQM;URQ:^LGG8]'Z@?*+\%_7>WCW M(_R/^D7!8?V1QHDWFNW;@_>5 Z<&WW@)O,U9[])M04)C?.%QZB>Q$8Z,9,P- M<*-.ZHNKY" -X(P 2$$L0?6")'ZA#.,U$>I;XS"R)A&/.9!(AZ?IM$TC'G< MR*:'K07Q[L=A],.[ZK\[W!386RHO):R[=#)AT>P/8X($+L/B_-.!&JVD:=M-N8=8]XBR&SXK&%VS&?)-PQAFD,THF+N-ZO0NRM%&(%3= ]F[Q@P4S\F0L EX;L1J-1@AM5L]%_2USU0=(:#7)%K-&\:H)$I=_!F M<7]F&H\>O4FJCRY6:C5Z+PV7.]A!8Q2%DY(VS\+M+)?_7R.LPA+W2FUKA(\L M-EYT.F:G#;8'7'?!!:P#Z-$FA]\4N@.^[]T#O_#L(PQ5V MWNHWC2&+P52GH8=&!%9J6PWKI3!I;S)%D$S OA .I>:D>4NSGH91,H)P+Y1N M %H:LX0F(R;L7YJMW+FC7=S>V]B@>^GY/> 4_A'$(*>)G)A\&#_S0X 0H6H, MHH6!"T@^A'XZX:;JH(N=P>,9@N^.BJH^L MW)UX@4>"!4M31X/CW2:"@6EW!H0KO+$;<$4FO I^6SC\@I/'SDK_#WJ*C4<8 M!/Y7JGK*HS@, NYG0V@8VXP36F#X8P=A"V\,LFGQ$<(A Z^U-EX:8$5Q&AMX M@[*!7F_EF,!#=DI6DDGHC/%4YETENM5*/HR(1HW'L>>#[Z*VY*Z^:(J>(9K+ MU9)O&$_L!((1F@6_!_)1<'S1,IN]MJB0#8.ET<57CY>B">%#EHQBJ[[865^@ M!\QXT>X/BF\T[AE( %_PHC=HHC3 1Z?@"AWL?.AP[I[S)/EUR93 1R,14108 M[0R<):HHWVITP5DYV#0N@4#V[7:CL\;0Q8RWNB]5.^%Z\%-\=>8P1QR68\P' M$;,D3<)H)MH#Q-G6RP)2"],JN!E?W1$.SS&:9^4?'DS7OS?N&A!44"4P F@G!TX"U MH[_LUP9#_,;)VMZ8Z @@Q@<'ZGO?N##&B%9E%&4"#+V1YS!PK0\@ C;T?"^9 MJ8AAB0JD$IT47@0_0C6>L8T4:J*VQ-Y\Z50A\%*NM]43L_H+W#NA+3Q7[NO1 M'A[,\^PAC*@!"@-:'?5XL[_T\=5A0<,HC !?7X!Z!'I%@480YT&CX=Q]K/ - MGTSP[Y5JDJ)J=4&6TU $&F\B[E-0\/;1MMNVTQMVAIUN;^@VFQUGZ/39OWLP Y*-@:^[A1=B(N/'']B[91JNHVLB MJQ<+2[&NC'%V<-,(37:SHU(3 SJ%XC2U19!&+DUF>S!ZPJ#MC.> E7,T_\Z= M%*?$9,U:&J9QC#U!5N, .GP_NQZ%3@I+/)/66BI%Y 6CB$$CL)#&R)3\(2W; M<)&-N61:I7'\)TS]KLK.!>EDB+Y[!',ZK;GR9 !S1 ,)^\8#7)@[?NIFV& " M^*@ZA811&E&<#0%$ZE 683$FHUH3%[SV?Z$/(499U&(HHA*:(_,U+ T4080" M_85YOO%5"4=%_Y]A-" -M$MH+.&E)6I83J[!.C3Q:,:! MYEP^3,0 C>Q MZGN>ZJ[^5L5=!=?_'J-K,A;AA:2+L(:4^GI.M[["8K M[JK5U4YG?4J@VN#K?0[ ZG1->,.>[QZHTT%)C>&SQW"[8W::/8UAC>'3Q7#3 M; _V?05,G2!QSCW?LYN?]D0ZPW^5MNT M6CM>9U"C8[,:=*<$.KMO6OV^!IT&W3..K6,.VCM>GU4CS&T5JVZ+O_HI"4]R M'45')QAX/I$TLQX1J#KUQ+;:_-149 OF,XO)P:(*!#\N^V!GF[#.!JHA]_@B;S@I>^EIY8#:MJO-"_=;*&G.GA+F. MV6Q5W2C7F-.8>]+NASGHG7X>^LQS@KWJEZ+JG."IY017Q:(Z/_BT6^.J>K=S M6;QI?&PU_^GLC\;'VNS@CG5_&A\7@8]N]]*S@ZH3ZLD.J?\Y#RGJ1Y<^NB-5 M>OV8)1; :-F276<3AX01RZ!:4(GN1*8JBK^)2*U'9*I%?L)UY&F24;O8F&4W MK)>*AX;Y_HQZBU\TFB]S.K8"_6J!;MLLT2UU&@.B:!94P]E/BRR52-,S1[@M MB .).^>S8-\5O#E_]<,A\XT/D4?\-\:O+(#U!HE.T7(;:> E2YBFB9\U[YGX M4'4L5K1_F8YFN7)(4QE?4>D]._2S+&[9+\E5A_U*(A[<$^V/X883%)*#+%C? MD'D1(/C 7?'2\@!V[+_@#\U>3L2'H 2?*YWB)Y/43[QK LXM%H1$.%Q8]/W! M'>)8])$VD=A(\4V/G'TSN!,&X01Z#O]U)3^O[.'O\%I V=_!#\#XSIQ6:VO# M+]-?EPR;RN$$2[)%9KF.HWLS,[?=64K+/7C9,/ZZK!.DN$H()T0CD18GMED MQR+)ML\?N"^8N7Q.F,F^@M=M1C&R0'ODF:1)HT"* S\^R7B!7SQ7:#9$;$I* M1'+<;>/;BFWF].2"@%SQ7N49&:+CI!TB4Q#?#7K] NW[.APM\!O+OI8D*)1X MQB;\PH2#^.^: M@VY3T&'W6W;.HE?JN&+H6Q@!66[Y3HJS0'Y5/K1YZL)L6M!$:/5@P#HINB[= M64V$5G->&$V$IHG0-!&:)D([(<%ICB]-A*:)T#01VBG4(IX3 4^G;UJ=C63*^UJ6\ZW]./ MF@=-GP0J>/>6:0WT\3,-NF>=>,S>H&I$H3&G,?>DTW1FNWGZ1[NWBE5/]\BC M9?Q1V+//!*[DGGCE0X#V6B<'+WW-/&B?/DF01MPI(>[5P.HN.!Z--HVV MPZR.S'ZW*DUT_3!WYCE!NUF=K4?G!$\M)[@A%M5IPB?YN5WK/$[>@#0^MHJZ M[$9[^ZA+8^.2L-'6"62-CW5S2[=_L2GD\^7:RBAW5O(3[(5DBTJ+B7T":U&W M9-G";OV3!7\+PYC?AB7:+ ?>''G#%"F17E@=:+U)K;>;#?NEHIQ9)+-:P]W2 M,%;J21,"7@VO/ KR;/0S'_"AC$2\:S^R<+QMB/A MP>Z495'\WW'&"#B%&/UZ"!+^=LU&T-DWS']DL_CJA]*8)EYP713@%F/?: RC MT5X&7Y7"XT=6F[X8XXB/_G+U)Z_=YQ;KLE[;'K;;MM,;=H:=;F_H-IL=9^CT MV;][8-[$&0)& ;:=("G+CS^P=\LT7$??]$FPZ2VCVWO1-IM-X56L9J/]4M'O M>+'!R$-X00I/@J1\[A29V>(D0CXHET^0LH8'#Q[\K+C76T+&9C=Z M+ZO2EZV87ACR"_H^,2W!E,'@GP)_#^# )Y+J2* H(R*+5%(GQ7NE.ZL9Q6I.L*(9Q32C MV%(!:$:Q0_,::48QS2BF&<7J(Z2+8!2[TXQBFLMFQ\WL@=GJ[GASTTEPV6@( MGSV$NZ;5UXQB&L*G"^$6('C'^UE/ L%5*G[.BE!LYUL1-9_8Z9XBU'QB^DA- M/K:^:5NG3[.C,7=*F.N8O6[5(F6-.8VY)YU*,]N=T_=S9WYTL&U7/OBD3PZ> MVLE!S2:VOZ,<^IR@!L@Z@-B53V)K@%P20-J-'3/3&A\7@8]6JU&5;^-< '+V M>4#-)J:7S!O8=MJ:3TQC[EG']LHR6WW-*%8KG9PSWFRSW]*,8C6/0NUF6S.* MG7U>4#.*'=*$=JWT.'D#TOC8*NYJ-9J:44QC8^EVO?8=&A_K\@2#R[V4X@(8 MQ=:3%.R#5HSJBXG_I]L85" 56R0&RU[/G1#Z*9]&6HR,584E@G&,Z!+D"XH- MW884?"X9Z";JL8QY)1\=0]X-+YEAPX#:L9%$S"5B#.9+/I4_&$:UDH+(8-.I M#TC')V(+H0#E",^X]-^[A/_B";\AG*; MUK!=[FH;93*@5CGX/":1TM6[7[S_I)Z+TREJ\)9-O02T^87'81HYA2/&M35W MQ,(MVE,P^Y\_]6VK]Y9<=N!X4QB(' :BQ\]'"G#R$J3-\V)RLPZ+QS1^^@>' MYQY@)H=IPA2?W/, /;+PO]([ Z;-S(;8 _-\)'XK!FX& MIBHG"Y>6BA<0/0._R%W1Z5RVQ/U*YO481M^$< 6F(I2K<+;B1T5!JH>(L\XE M.\1 B@_1,4=+? _1:GT' (\\QOH \HA <^AU/ M$I]>+7168%-;,4:A!.Q D9IPY(&('"1: S^"G'](*=@'#30[PO,/++/?&ZR4 M.#WT,W?X9,@C^95%7]GS0L3>MU0N9(V<.-WHCO?I&NLB8'64K_5C1Q7ZL M:DVU9^VMZE.:Q D3J]A"IBP,5J?(#NJ2S[.&^%5_8-K]"C5N-:[RUI/5%@K_ MA2<)[H*&(V4]86YH>G+:Y62.U6L]=XWHV4Y+K5[-[0>9FU>$>L>9E[9HXT"I MBLN>.<6F[?'.2%U"\J^TLEJRJW'L'. AV]@RI9,7I!ANF**0R+!UMN^IHJFW M]VFWS+:]8W7Y/L3S)*]UWH7A\V4HM'$Q\L/'6%0MT;68W!75GU-X3TBE+_)? MPQD\FSI)*FONO&"^"J=\:622W^$IJD-E7-(P_C7VL$XU[Y$Q]9E#MWL:?#(= M4REMN-"\ 4)@]]GMHO2"0I4/Q#1)".N'.'7&J@-T737>]3GQOE-EY(1'C@=- MP4IC@C5 ;!:K.O'"JOX5BLANOOWY[A/]RWK[6M3,R-I#K%47]3W%$<>QN'> ^)15(9F8\&G9)43 M;EIS1TF6'HLX]."_3%[B&;AY 1C#O7FL,)*_%:$@GM7D6$') 0)L"D]/(X\E MO-S'(?<]_@#/)6.6R.YA[=32MEBYI34E8L,4AN,"2F)N.'2!5%9IB@<"PHGG ME*X)%H6@XGE1+N51-5NF#JQ?1;V#K8437$T6%.& ^3,O6'A&VH.AI)C@A9@. MEK(JX)$8H:$B9''8V,RT6/,KR\GBLB6(UQPI=P/NY6+ DQ/9!=[E1M-KBG7=&/ED9[_D.4>O9O>\758:8(OQUWNM_ZIE MMEK5MQBJ7!1YDA=E:1B?%HPMP''?KA^.SY[2-)NA9)*"LDROY'3U&OZ?#DX^ M?;ZZ[ VAGMFSCG--@U;2]DZH9[;L_E'*72XG$,Y=2]'AR$SBPX=YP*2RPAGWH]&>) Q'!G\N\AU&WBR/\M[AVORWCJNJ8[G MWNFSG9^YBEZU>[TZQC1J+R<(Z;SX&HW6[\F+"-%$64#>/#5E2DHL,0 X43KM@/0=2"E0PZ%&%UG(-5 ME(7G2)-+>YB9=J^GZNZ6]/E? MJ)_#]Y&H7E@=TQIT5+M.&D58PB<:+?< J2/OC1=VT^QV!FLZ4JZ:Q/)(?(]M M#GJMHM@WT+Q"IT/'(V*W1R\94S7>B+M8JJI$F;#OR%V48J#I,P]+104CWI@] M@,S!;(:Z76?@$G,MF47YKSLZ7$Q\*MD@?*Z9E/6Q6 XWP%=RMTD^,89:] M'X=I4BQ<+3(..F$T#2E#%<_BA$^H/74VK-P8O2FZ9X'G(.7O(]I- "HE:KVX M8;RO+"Y[87SNG@98J+U=U^4*TT>Q\%>PN7+)S2D3W+-8D;Q BR^I[FC9_::W0I=*O4H9YTO#%NY73#DX1G%(6#& J\.,"RYC0]P'+XV( M]'P&T N=;R4/(GP2Q)DT'[:;5M5)=9[#-N)3/(."[.KT,O@[C9PQAH#CT'>)PP-]5!@$G(@G172(/51Q# Q!#NR1 M1>XYG]8HV/+(B^)D_F:.DN5F!\I^"D$L^,C/'M@%G<9B:3(.(WBS*T&FE%0D MGNX@BPY^L*Q1/+45!E+PHH@U4 >QD@C&R 1-J H'C ]\&*5((0T=A3GU2P$7 M>#+)]R:>G.SD^\7KH6GT0M DP!G&;MG7A,K<4!$.:4!&RB9ABC.GPZ)HAD\# MF!$3V-XH)5,7/\N[18>: E<-4PF&(IN&<4/S>-[31P\"F"'/R%$UYW'&>=S3 MG,>:\[@>;E)=]##GLC+&^N)BJ\3-4299%\<[)?4Q)D9@4D4F^"W(U\W"K%R* M )2?44N0!JS'ETYN\[,GQC;W$9N81L?MRDBLIF:8EET]I M(H,)$U 1>5P 6A[ +F(>&Y/]A3#:X:M$(01E9HM_=<<+O"4[!YR?\BUB7KY4 MWG&T LH03,/H@C!1]SR43Y_3@5^Z/X(B JW'3R2K22 E%1%98FCX#,Q/\=3 M@7%0B.O%>$K;"Z2A4..@OPIIP5-?R7[(3F7?*GW5WVQO5AY07\AE$-7MVDJ$ MY5=^T%,% @/*L^!,H !#JQ0$%$2%R34:,#P.@:3(J"O+G(IC]TPE2\1)-B?<-\;=_X!4T\"(AF)P) M -K#A;9(69WO-+/^6J)4SCXD2]JPH,T*6IG@!5MSO!F%=/#2>W**BWAY*5&8 MW9OCD8HPM\!=$644%?[@\4>AX,+]2#%T1R1TR'&B>PT4HT3JBV1JZ?:>G#1@ M::I#] D;R"\E4C1,ZPRA /C_71-@2;,7%R%!4\$G+JS MZWX.D-2L#2@_!<9->@]=$(*V6B1HJ^Q#:>%(^V4J=!;2OE$LQ"H?EN>W\*GY M6ZOB;>*8:1@_S5^FM&S88!,, SJ43IQ0U7",=TI"\^D4[(-[%.U0 M0(^!#6W:@!.\^_3AB_ACZJ>QNA0/NR'OCUQ'XT+;LN%D".ZS.)]L?V%9<<>Y M=&79W$5E:U"BEW(W05D7^@Y'/OWLY?XOH$R\M M@&@J@1^EKKA%4$3+&&$&XM[,?DVX8&? -RS:7Y+791 "/=HCF M]8Z='1(M#4W,(.DL+_I/%OPM#&-^&Y:V2$C&?((;=Y25GH0N&'W&;E.DQ1% MC"6C#4:PKI)*(7,F('(G;N"]P&_L*1(.J>&U\00 7+"8U6H]/,4F=S6U^[C(;Y,?S,13V M:\2*(;FC".%55+@JDW9=Z K=DHTKG4"KR#Z$>B#P__+QIT]?KH6A0B-HCO*O M?'DOBCX8K0[2.):61MU&#R&V,N:2 P6"=FDG'L[%4[H;#DL31*=_"T$ /?4# M_(N4C:$W#[ 7\"^JE")SS6/SNP0^$(X4<G4/#*U=+D)7T3 M/5O\8N4=@8FZ01(O-19Y >6VXOPE='<@&@4B#/PK *: <+'KA):B!$1QJ/>= MNT)2A2Q8(8%$RQ_9!,HA(S_;/_SJNY2^DY<&_R0NHST% TIHW2]C#76'+E+R M37 +];\B(95-R.I69)G=FK\\3OE&$T;W@1N6E\YTT(1@_P[22JK&=XT-=;N-YS99KMC[?EN MQR4>Y@1.,VHPGSJ8FQTL:-%@UF ^ S"#9VY:3[MH0S,7[BS^SQ%W6)Q@@MV) M>,*-SY+/7_/X5&=2L,QN=Z"I?.JMI7[3[#2K3IY:2\^LI9X%6CK_R]^.Y_CO M$L[]S-O30OM7.O2D+]'>3:#=CCGH')&54&MI*^_?!;]2=8[66GIF+;611'C' M!:X.^[<0L-CB5EO;AXCU-_U.4VL=5C3U-G![T#2;E3E\]RB?(T?OVCJT=:RQ MCIYMVI5W*[1U:.NX".OH-,U^NW-ZUG&!5S.K"#,C.1$<+>*JXNPH;48^H^ZR M-7)V#52(K"T/9EG]K&!=$G6]LK82/IC0:7-Y-I:X-"3/72*.CDUXDIWMB/@( MS[L@DP9T#8^.J8,@$7_@>& "R0GO T_R6OC).*._6'T,1797G$43M>A*!/BF MD1=-S+E;?1WLM(^'8"35OJ!VD2U1W;2B^F#N XT0ZZ@=_M88AX]X\H JM(D= M!\NX\5[D_+1D$;/TEU'FGA$HS5]DDC%>^A M0WCV_P3X!(6+W?XD6SYY0V BN(4%GQNZ0O22%!.P7!;RR#R&5))X!&H-JE\$7*J M>)&33F3T \%:WD7I]>/EP\/CO'0(-"YVF8BI&1+2B.[@4_*PZ( Q'MDKC _F\C]2]UZ M4DV>DB\.O\1SH'X8$U-N,> 59'N+?3+N/3HW[5)L?2]9YO!EH&1?L!S((U:S ME4P>RA44M0GFY"ARD;S_7KE7'Y$7N-0D- M##WS)>=X^)2=&S>NC66NZG.Q?^_S_BW']$T0("06CZS^/3M(1JRVXABF*KXO M'X%<$MEX[E^NMI@[!E=;30V%:'90IYD"E2Q%D5-4/']'UL44_T@9P"*A4)(0 M 1_XZN^?"R8E_,NO@D'JBQ=_.X69#HT.#(YDK$E6@_X >\6S09F%-'*=37"AGLU[&HRCR.-Z4 MK4O!Y-'%/$W>[=CC(^/]=^ZDY-(^(>F)9"C)O\_G5?F]J=Z4'2"(\46\27%2-!JL6NK\XJ_IJ>MCBO_RD5V M!V.2/&;OU;V8-X);P1JTVD38+_D17A-I_S+")DS&970XE#3!%=(#TU[M!X1JI!1M"NYW^2K%G@;4=C"]<<0 M(6(^+1=N2:(P?;SR7@O!81HV.D.G0O MEPIYA'KW_C83340 ( JV4#&9O/)4!R#43">IN%E ,)Q.)FD@CO"+"':5+3BD M+9YI,E18%U_D07+V14B7Q,0@4IGZPJ9([B-81RAVHO+B"&=69!R@ 2.].XPT MGHOO<^6?!?')BCQ!SK#V$9-I@0C;$>K&IP? 66XW7U0 4J=1K4P?@%62:09A M1MN"?$MI9""$[>9;3PU76K81XG!S?&7Q%CUOO24/*,P9&4J\U>YP5'*'H]F"\GY]U3S8@^AC(:('(O# C M(*?7DA=<.042!^.VB"EE6>1VX7_5=F"V7;GX%A,M&>"*0=L8'#?=\B-Z+><8 M2?R&]XNQ(&.("P.Z8TABGV[M22.Q.3*2>W%JZL'6T!"S(1#]OK@PZ&-.'&86 MPRMH9-\2,B;()Q?Q$28!16:(T3]$$"$W8#%SED:.V)'$BPM4BHF>*\C8BTNA M!BXO9UF2"GU70=DBI16 7Q-YFFD8QYX@-EP^,+7!(UG4/(RJXF09_^J62]/. M=DO37;W+Y>U2#?0NE=ZEJNN,^OGFRU?CX\>Z9G$^??W;^R_&Q]\^?/KRZ\W7 MCY]^.\6HY=7/2',6R>1YF$);2)S,O^/&DV#?QZ4J>[VSS^Z?2SK1JBL0?X%% MJ2]"2DZW5=4_IKSC@I04%D5/XB@M[Y)MHBC-**3IA^J*2]? L,FCBB7B3^58 M1[4KW@?6V>#]IJZ Q[T;XX.XWZ/>3KW[(24+E@L&U&#-U&SB#;-I^D0XDC< MK@F"$,LD080^"ZB*7]YX%QNO[(M&67[+F>%2[D/UZ=IDJ6ZV^IFL^F(!I5^W8 M,=S!6#?K!^CJC_S$2-&QM_1+N]XX(51X1A+_8^L_%8Z6+4SL&!Z/)>C4[4EQ/L5_M>X M8R.>S(J,C?7'V(:3? 47^ 3\M4[3LW7JBK9/R)-B?,S9UK8\0]I=,/(CR?AK MQ(B#[":*D"YJ(J@>ZFXKOR$E]DJ*015CA!D%EZ1PBTU%L;7(,6A8779M(8F6 M;+<"H:#Q"G\@WU5\6+[NM6G\Z'U_$X3!;^D$1NP0S0T(\PL2[^JL[5.R9^\.,/I5>^F__;-":A2^Q^Q!"VHR"^1I,@V;9SW:?( MH=*;(%)$DC8O8%M(PF *(P)P\,)KRTBD!;+< A5*D5!-_03:N=[PLR*ZB2)] M"7\<,6VWFWV$\1=^C\R)R!%Y=_UWL\ +MV!4(YA)F6_\1U B+#MZN_%VE;IY MOAMINY(Q/"'ZAI]F/GL\ 0<(ZZR;]![INWK%A=:\VI8LO(JNBKY6/DK05C[( M!=D:Z9AK6$B+K:]I0KVS87Q=_R[%RI%='52@6)27S"B&L.%,4G+0BG <^JZZ MQ G)WR;X#@BKP%1Y_G,2@(G$^9@GH+D\G>) XA);:%CQ'/FY985(7=VWM4DV MM$6RP9M,?4$]I] 1\0?)KBH5O!Y:= &5(%?^S(,@GOD/+/"8 5\7]?_*>VTX M/H-^SY1_E$1W@CEF*54=X<9X\"*Z1** 26/".7X=9ZS+XL:P$HU?*?1?]F.3 M.'"1'-")O&'6K= 7O/4RO9)D=S7@#6^>*])ADK%8L"#*!K,SB])PJ'UX@:#F MS<9=Z..(9J=BWY!O1*5UX"L\'#G#=AY*XGL&E+Y!)A:48WOTQ> MPA8]A*>YKHWOD<*FDA+(P KQ3CGB'_%G>>,F'2C>U[(5OA:L3/*MS 2K) ML2X62)I:PN,M?S_;^_*FM-&@O!? M4>7)V<(*5WPD5:G"D.RZBM@NX[T>!S08;03R(F&;_?7;QXPT$L* Y:P]92* M+'2T^OBZIZ<_/* &UC(1* I.#,R!_HF/%EM,YEU ;AY>T4+DZRKR4=9B!#Q,W@Y17119(T&+P>X$UVS9S&(,A.1G4U%GXL''Z*R*TB MYX0/'CC0&(09/A(1XL# UGGW\VF 5)@)3#4R3):@>702$\PAWA@,)%44K@G MJ"Q0U<6D&/QXZ1A74<=EG,L;A[0L*AE(GWP[32;GOV)8@XLS>2/FCQ1]*ZE( MKU,TXUA,<,BQ/.*[43%=P15#&.DDJ<_IF)J*KBA%*"2K@V%@0D>>#$/?REJ M(BIX:MB22(]$F/SZFE59(L>9I_E1$)#&G\LG" NN((2@EM XXS&"F&*9E8?Y M^1PI',JH46I8>*&1^.H:"'OCR4.0Y#DTC#59BN&'=GS)*V X.EC5H^*?QO5] M%B516&+BIG"G(9'[!1SG#C7"B/EO>G(PE>$BKV&B=V&J* /&9"D11.*_+N@D MBQ5.& ?20PYR<0]HE%PV6C1-Z+]WY4.@GX&O$Q.I9]Y&T>=DH"D>=QC1"Z"T M=5E.O>[G91GT0J5@#7%45LB#.#H9QV5[ OP]9@P0N:Q[=,XZ?X=?0D+/1 ,A MNU9D^)F*P9Q-#-RO/PN\^:'"KT[BL@2@P8KNB-# W\2)J").TI&4F7\Q8S"% MU'3NK9?^P.>0C47_4XY:117*NXB_E0-$X@HJ<5+%*R1KHX99N)X1.1]&;@AI M<)2MT?_-7_0EW@N]^13KZ6CRX,H\4"JP7+R^:?6ECA51QW1ZS S(LXF'OM9, M^)$-1<,[O)!PCU&- ;8K&.K'Q/9[5+67F/2,!=* M*URNZ;/[#71).=9@>@>N_X(@#EI8AIZZ]XHU=6" %C5%WNI/_1G(&VNZ?3D2 MWG AMAR/)?47ZC%6>H>O,0!@0H9P9OM<#QW+Z*LAP M!1 *;H]10<;H.2H#6Y$QR_&=Y\]ENI,@U6UCJ=G#"_S6R6IY^XGGAX!+0V,6EB:S'(6)(-2@ZGDBO/L7*%3TXYZ#SQ!O< M(H?0),9,$<>0& Z%BZ[7'X!>3J(JE=)OK=61VBKUCLM],>\Y'FS12KG83 -7 MRCV3)3+NY6B8O1ST J5++J!+-G@6H@4_X0!^0*BRZ 3:=>!$[*.;& MF+].L;_39-G07GLX \^!\EGC"0P2#V8\%=CK-7+[;F@U[!I?O=MU^1K><' (4H/L,_S$I+;SC;IC@-0[YH+03/X<7>(28XOD/.PW"+^10G_G1 M6 P;O,*'4JG:S?KP#"HSCX^?QJSSUL"='=K.ZW@.M28&1ZQ;I])3\!?6L MKJ6>[/DNJ,#_8FP"^R.E3@RJ-R$&V)OQ.;\ TL[UL_.KY]NVD"6:0D&\#1]0 M03SY>-BH_5NG_0&C+N3HJI[HTYQX*GX,W,'1$*L!U/6GTY$-BGA:N-=)=0W'+_K!SW MI8,9K&K&Y&M0URN=J.]GET:3I]'TVK^]F-'H]HW"2( 4\48\^A-_/(= $],4=FHW/W[6FY;ZF))RVB M=IPZ 8?=WOOO3. M?[UHW?QNI S%&]R>;7I7QC[799/>5H[7QI.N:6_R%"^%(R.=F8<[[&^RL6\L@!?'3JS5W O.:QW9C![W_]5/[N+$1>BQHDKO]?#CWARY\0MZUSVSKVV7O MYNNUU;[\?M6Z^/LY>P%*0:\2]$$<<3+R]?QL\N@E"T^YD@=V1"@_;5!\*M8[ M;;JY1PWQ/^$A_KGV^8Q=Q_%DX21T-O]D?0@^6'^ZGN>*L?4=.0.$!W=\S1[P MA3Y&M@F6HG[!4I/NXOP#YW]>T91^2)-*@>](X$\TR98RWQ6HZF">W8H9/W57 M,G,0+<=;6^?B?7O#5AK+BZ ?^KXSAW]&X=C[\C]02P,$% @ Q&X(5UO7 M7REW$ I;4 !$ !FL:V-++3]#QU(!*4V%" "H*^G%]_%B I4N(%(",E;*F\ MQ"*Q'X#]%HO% B3?__*\\- CX;[+Z$7G\'6O@PBUF.W2V47G\\.P^Z[SRX>? M?GK_KV[W]\O)#;IB5K @5* !)U@0&SVY8H[$G* OC']U'S$:>U@XC"^ZW0]* M;,"6+]R=S04ZZAT=Q\7BN_PH-[I]U#N^=T3TY[=O?LQ.YU\>D)/IL> M66=OI[V?9^?OCGNGV.GA[CO[<-H].7)(%]O3X^[QFU-\>-P[?(NGC@)]]L]] M:TX6&$'7J'_^[%]TYD(LSP\.GIZ>7C\=OV9\=G#4ZQT>_'Y['&5&]Y%&W!TH$22P$=Z>!($,@ M[XHX./#$12>@?P78$)&'N M8LFX0#0CZF!_JIKLOULV]W M#LQK#?SN#.-EI9K3,F'MT94J+4A9ZN'9V=G!LS2]_!;DVI(JWY5_=@^/@-X* MU189I7G=\*L;RVVC#I?OO?VHS5H*W&"Q@ K^8C(D\D3B'U4&PQJ83=PJ=B:XMERYU6'@!+DG3/8_M=T*<> K)3% Y3D+]=XZYQ9FG\2@'2\Z6 MA N7^.G)30',.7$N.G**Z\;^^@\/3U]#2^(BF0K6!Z&\?0 BQ+M)>A++2@.\ MZ/A @$="W32YXTM.JG8<1'R8+!71?_O^6]BKVG\0L0+OG]%]FSA5NP\B+G5K M]%Y*/\!]Y-H7G0&#V+R#Y+7/D^OBB$I5&1:.T6*\I"$?>NK?(>HF87P7*:GW M!YME-U "G]@C^D']O6G9D7!4I$1PPR2,Y=9UF2L678R55ZI2:A,*PO"'SSS7 MELN82^S):.5^3HCPS?6M1=*2<00,W(,JR8J-"!.E05&$BD+8/5LI'8\QA^[- MB7"AP=NC;AU6R^-Q'1[1J[5:_M-V7E<*])DS O^LVOAMP[$ 4LOGB1F?"3QB M#DHJV#.9J'W %M##.91Q'\DU!;[(#?.W1VL1OI;C-W4X7JL-A=6A5[+"_?#5 MD[(]9UVY,JTYG&[9'/;>O80Q[,^''GO:HA=8(6J)?EN+:,!'JH(]CXG6[P6S MOLZ99Q/N?_PK<,7+U@C-@=8R^ZX.L^F*_HW"JO8JX^RP)Y,1KF]YS \X@1\KE!1/+=+_9>"[E/C^/9E5 M4GY&3JOYPTW-QQ HQFB1VB?DD=" F&H[+JY5\M&FDB/)%JGV$V/VD^MYF-HC M\*C\&GI"9^[4(WW?KY!MT^)HR3C>)".&1(")%"A*4%$(VR*F^I;:G/,GQ"+N M(P8=F'*3(ZEEXV23C1@$)2@M4OXU!<<@&#<.H!,!K:K?;*IZ)=LB!=\P.GL@ M\N3*%(:X/2&>C 9OL0"M&CNA;1$B\K@1$$E'YH0@31: M8N@CYM2E M,W],^( M%HS>SR$,-Z6F0%K+R=M-3F(@!$@HA$(*JT54A(FL!_Q,C(=&6D2K M]'=9CZ0R9TJ\17I6J\]+K%;%BR4L5E5[3%5>(*W5_MFF]A505R&A-%2+F!AB ME_^&O8#<$BRU4FWIFRNLX^$HN_@%'*2 4!JI131,B'##7H\ATC>DC%/\NFAM-QD%LTI5!4B M);@H!=PBQG)2;6/FN58%ILH@2A@Z.WMS\K:7&3UY63OT*@9L4P)U,Q'W(->Q MM=-XD;26D,R0R23ST*L0JTU<1,FV:A2L"VDUGTDJ1?)MU+-"$,T+4.9 M1)-)VJ^-]&6S>-4(*Y374I1)4.7D MO(R"I/5XV(33&M_C-YJ15"&[5>FN2K MQH0)E):=3(9*GS5L(VWY":\V MTI.;PZK&3AF$CIRKDK(BG'#EQ?&R&WF;$(6V)6IZC'A\N6-\B45 MHZGGSE3SZK%GAJGE,2 MABELWM^;1 Y5==,%E7&UE-<[?M7VC$+V+%5=1@V0M!P:G<_:4[:IZ+[GL2<9 MO4 4,^#$#E/TE=>LU8&UA&9R>OF$KNI!4!$*:T)A5:VD>'4LKB*#&3DM09GL M7>I$7@L57WJ.+@E+9#$1%;NFON#J):=5Q]MV*M-2G,GW&1SK6X^$E(!8":0: ML3>2NKR9+XFW5=W>4!IE*'7CK&J@6M(SN68CTML=@47';=M#?NWHL2KP,U)M4)83M:*55I)Z M44'E,"XCJ>4OD^A,O^F@E?K//\-=U^T:HFEYRB0I"\^&M]W+YFM\0B"F<"WU M3D>X#TXFE;U7_NG%7 .T8<,.*H. M^5TV06LHF41GL:&D@ZVDU,]Q ENZA?0I^[AI"+S(JG$J(FNGF]AX*J6N@]#! M:!G/9$(SC[FTW2=LJ#@9BG=$7!(*58D!L%+])%8U6"V3.0<>,TRF!RW4@Z** MD*IISVZ:!J42^6C*VOUMD5R.KN4ZYZQD*=MJR]BGR\)=YDMNW31L8/P UKQO6GX MO;2+CJ7VGCO(#Z EK@ADH4^45<0CG46I&I4%NR6)*UO02-CE42W'Y*ETTZDOR1?5SFTE]&G0G M?E)@%(AE(&Z)F#.[O$-E$HWH4KP?L9Y4Z\-,"0Y5%KU\28I$]J=,-/PZ2FKW M4-GKPQS3T5)"^,EH'S)^#<9&Y=RK9/V/STLBTV8/[#?BBR_$G=,[?B MWS#]E3&?#-A'"E')DKL^\6^$9G#JI!HQ0(AXLP*_3E7K(OWZIIAP>P M^C-.E$!Y3RN"-*+C]T]X>53>K;4BC6CT9VI#I"J_HDQ R0O0+O:^,/ZUT(,5 M"^C[XX+[ F?SG>?TNT#J>^1J*HE>TUS05;W@UBF,KL#HGA%N M$OM%YW/& ;?F6'J&>*71IS3 7NJW"M:*X[O*0$VE^_.2\^PH7+?A5)%&C,(! M4R^?\,'3I1+UY;ZD7*81W8K7 :/X'3'^9>:1XK");,DMK*,7P:)0#76@*@S4"B-R M&50.X\DR^8[10<#E)QD+:=4+ M-M7;YB51U"9BWP&;7!W!'Z:/^D>=FC#/@^MRA5+LX[:#OJ-Y6AZFH+.:6EJE MFFKJ(5^^T3V%92F'J8H,.5O(3Q*KQS66=5-TQ6B-32^-[P:7F'Z]ZP]KW[\=C?#/E9*8!FZ[-EY3O?D5M.!1;3DI+[OZ',;(67TC8\Q\E>G_^"SD M=^.A$Q\I!",A=W=,1!L?Q!YZ>%82QVR[HB8ZOG"JLFW5CVI>;E/T&UR:3::[ MLQ@9H#T0:TZ9QV8N\>-@31_6E4DUPEN,PVTTE1(=.=#$I;0VHR2)B6A3?<#G M\62B6S^GBC2"JDU[@HGIGO!'UR+QJ^.JV6.Q?".ZVX1=A$9O<>QN.I M]XU" M#0HC/TI76Q;C-H /"9;[^S?LB?!+QCE[@KEE@)?8DCO.R[ UA;%&7<"F.IK\ M7,8-2>PNRMYQK3\ZY%Y[#Z)F?R.W;&/S!/%0OB+Q MD([L/C'YPIX:R3:VY^D8N0_&:KE+M>_K$4P_+\>J@85=-Q/>D=G&0A5V)#/? MB]5L1&;*[ZHKQ'(7V*LP!*]IQ?-%.0)_[] Z/@D692$UEKKM:GZ\3>?EPF1H MACU/&6S8!_D*@$KIM"*(']_A>T%(>F_*>./60+ 10V',B87EIJ*<4 2Y#%S/ MEAO.FM2R1JH178M.=$0/T$AG&KK8DH5&D< //P(R8'S)H 8BE\#4)_WHY7>? M*8P;9JD)$%S)C)0E(,TAFIJ(_*8#RO)4\H@6']O<#GAC@ZYHS%Y3AV.YF+;4 M8P]&F5PCT2:C2_P)^2N N!D&:?2J Z,!M?4MM- J6R+F%][Q MH6]9R;;]^%8W:!N?1%I9)!,R]0US\\N$^$L6IFHB.X7EOQ= SV#9'Y^2UIMX M9< ?;>X;46:EN:I(J!'>?#VC'1.TRM#%*>[B6,XX_0ABEC@#S_]'U!+ P04 " #$;@A7)\*)ZF > #!*@$ %0 M &9S='(M,C R,S V,S!?8V%L+GAM;-U=67-;QW)^O[]"45[3UNR+Z_JF9"V. MJF1+)=FYR1-JEA[JQ""@'("2F5^?G@/NBP02<\ C55DT"8(X7T]_,[U,3\_? M__VOP_FC3]BONN7BI\?\!_;X$2[2,G>+@Y\>__'[2W"/__T??_O;W_\%X+]^ M?O?ZT?-E.CK$Q?K1LQ[#&O.CS]WZPZ/U!WSTSV7_9_1O9OQW\ MZ"0SH; +O,(2A2$D*,$J4W@DG$;8AD^=-XM_ORQ?HEAA8](O,5J^/&GQQ_6 MZX\_/GGR^?/G'_Z*_?R'97_P1# FGYR^^_')V_^Z]O[/IG">ACUK^)Z=.L[ZD]P M^C:H+P$7(/D/?ZWRXW_\[=&CS7#TRSF^P_*H_O^/=Z\N/7(>RW*UQOZ'M#Q\ M4M_PY-ERD7&QPDS?K);S+E=%_QSF58+W'Q#7*Y)C^-SU\4?\Z?&J._PXQ]/7 M/O18?GI<5NL>JL*9D:RB^=(4YNEH/@S0:_KYY+,KO,;@\:\UTE]L M1NOTZ?-ENO2F>=75LC_]RWF(.!]>G1VMX""$C[/778C=O%MWN'IVU/Z6#]_SH,]85Z&2!V\ *?;I&I\N3Z^0= M3U9'AX?#9T*WQL/3OR_]\K I!];+YD._T3+)L2L-:#*M^Y#6_Z35_MG1:KT\ MQ/Y4W.-39+$85:QAX'0B9)S3(AZY E3(T'(3,_K&I-@&US84$=\F19JKI1EA M7I!)6!XC69UY78!OD%NB-889#=PD0P8]!?".W "#C@>>8V*N-5N^"FH;JLAO MDRIM%;(S3ZI_4%>X_HBPX$&8O\?U>H[5M3R3UBJ4+I"?)Y M.V0ZNZ\Z'5]_S#8J5]^6RAN/;;,UX?5R)_C\@9FC%MM&6< R)Z4$8P\"5:8((@1:&"+VF\ M:.Q&3 UE/IN+(C";O !M@@7E-=+8*P4V):E5X8Y+-IZ4TX[)=N?%M75R-P7L MV;#.5"E1I"P@1L%INCL!KE ,B<;R(DKQ,N-2)1F@C$*:]HIJ1Z#D6) [G M5XM$8>3OX:\+(_$;KF]JT5,V8D=MOR\7I.LAY%CR8"$YEHC /]%TT%E!+QA%3,OY*='^GX.W\21.- MW]J1H/UX-ULRWGS$GL9E<3"L8&>))X*53CU,QWQB&"&I%$%)'B$H%2!XG8(1 MGJ>@&B\:7P4UT<"M_;+15CWM6+/^<)ZEK"O8.9Z@&8_"< A1.?*>D(-G!2D@ MT9D%[TI1K;<5;D!M!)ZT44@S@EP7CPS?_*CN2;]=]H,&UNN^BT?KNB_R M^[+BK8GPY9P^\>#58HT]KL@5MS&Q%#QHY6E)I!@4?+ !-$^2RQQ"4KHQF=H@ MWX9X]GL@W@,H>FHDE?$ '/OZ%+V3FII-MU^[Q;(?!N!$ M*.=E"*(8D.3!D&7R&4)A"CSGT0M6"LW[QF2YBF%*:8L)4&4G%;7;&%BM<+V: M.9LU,9.!*=4L%<_(LXT*T$H6 ^;B?&MZ;)[?#I]]I12Q VT?*\A;:906IQ(PM?= MI[H=L0Z+@X[\R8U4FZV(5+CS$=#P "H0TR@X5V S2]%D9H.3C=7\9413RO8V M4'[#X1]OY_ <3R$;Y+F,$'PT9(." ^\B TM+CHL" \$:>]/P3E385T*W 14: M#7O;O/X)AO,,%R,7SN?X;Y$K]^EF&'X6Z7/LJYJ[*' M^=O0T=)Z4J(SDSP(HS2#*)T&Y64!SY0&+GPNV7(73>O#7+= F5(@W)@"+0:_ M&1/>X3IT"\PO0K^@D&IU*>HN7>K6LQ")@UEZ\(+5RF=-P90G!YPG@9@R9F9: MV[:OHYI23-N8'XU5THPJO_<4;Q_UQX.XFW5LLX0A)S>#.*48NK7)&5%9 MC?>TSLYS)F04(%#$( ,')1B'4&NX*+X7GD:"2VR]J'QA3^@>?G58?1B*GU58#FSV3CDMP MR8=:!BTAC=BT8A*\Y,LV",[:&ER75 M[(M)$!$S\.AYD>0KNN9'I;Z$9TIN>\-UI94&FG'BU>(3";7LCX<\J94)*S954I*Y<':4LM4 M"X-(@2)DE9%<.O0BMNXV<1W%E/SH=OK><;2O:/WO3ZX.SFOZN6DKJ_=K^EIK M+5;+G6L^RM4$R0'UAR M!,5<;29! 7:)''E.M+;[UF'KAH(7]*\N,E&G15/5E[3?[G&?I+) MX(LLD%*M,U>20[01P61)ILQS$7+K$Y#W@#FE .6^?+F>^!M76PT]SM7Z33F! M.Q,ZNJ@<>;G"&%"!1(XV&'"**Z.MU6A;YXBZW;*:+?9C\.!@5]P M0;+.:\EI/NP6'7E&!/,3OOCK8_5/9MD&BM\$1?K>:IK@UD#05D+166L?E+&Y M]5;Y=L@FM22V)LP(RFE7"'IA^6?9NB(\!8712PHY+((/*('G[*-+TF?6O!;T M-M?Q83,MK1EPWU%NF%XYE>/46>L61R3?>6!RKW-)N2!GFM=RID2\S;5VN3@% M'+V/7!C->.O=@'$D&7]\?\:R[/&L*!!7+_ZB^4^\[A:A/WY%=%S=,L@\Z.(] M!O!(;K/2(8$3M9B,9Y&*YIREUN[JB.),*0Z:P*RXGJ6;!I$:KSP$],3,_4Q6 ML"Z#.@4K$V/@#!-D\I*#D)"B#ET4RA 8;]X&X!8HD_(])DO)W32X1T.VP_Q0 M2F5>,B2L#IB2G@32!01*CZ:F;D/WP\=8S9_?47MM-'Q)P>1G0:="CC;-.% LZ"/*& M4ZJ%.R*!P:1<;1]BFV_U?1G1E"H")DNN=CIM:!@V@IV"D-Z[G)V&I(VJ+9)J MF3(Y.Z44;A5%6B*WSHE=@7#'@/:A_8J'H=(N:FO&G=]P?6&99%(&="&"L8(" M?>,+..EMA2"8"9'IYD;N$H#Q7:0ON8POZ.WKXYD+20@T%F*,#!17MK8PS&"5 M58%EXQF.XY[OAGM2B>?[T^KN46%CE4X]\63K[1?61A#=7H M8"OZN$K:& P(ERW0JALF"#M";NK8;#=&PQT1,4.6.M$8 M^00!;:T #4ZRA%FIU@5Y=P8YI?A_GYR\NLJ.J]VV&8 ;QNDEA1O=P4FK['3\ M>Q\6JY!.6B8-/YUH-?_/T6H]--8^&=F[V S.LPI:(7#NJZ50"3Q'#:8HH;/5 MB*SUI']0@:?D4#SDY/AV6->PRNW6X9YY;2Q37M2]GWKD4M1;Y"BX=L(RZ;1+ MQC8_MW4[G!$EW4H])6*]T=A2["--+:YFM9^F 04Z,PHA H8T4F6QT+@*<,1Z\]%*;R%#&UJ%M8Q&^$1,T M%E5'U_IDJ6N5]\5P0P.:-:CH)/CL+&C!C$_LZC2O<.TSRL5EWITI5Y M6^5^^N;9J[?U3X;I/7S.V^5JW>.ZZX>DZTGY5>U0?:'_2;"NQLK@?>VU8A-] M)U& 2-Q2!!J,X,T+<_8KXI3*PZ5\^?D_,!_@+Z%;U!(9G:&JA>.^ -#:J6P:G@2#+9N@JJ&?@[MF5XL)37]#G> MA!X/O*%^(M=(6^AGG[Z?3?.;A6FT35[;.]$#WO;+3QU]VL_'?ZQJ-_*SBN"G M%#M^&JX.G#%I'6,F M&MU(M&/;C@.!3FB'^>FU)R^]W>+=%-- Z-EJODN0)= MZOD]KTM-TD4(@8:,QC&)YK[#P\6A^\K%C,39/868=Z'$>-<[7#F>(QG1J 0+ MUC +2H0(,80 0J"PWJC9IHMSM96;Q>OI M(K\C![9V]![\V!I4<9U"LRRPK M+Z)LG97>#MD=KYP:_9C(/M:6$736KGW1A]#CSV$(F0^K@[19]'SRUD9T$'PA M[T@:1\91I-I9B1QNG;C2K0^'WHQD2K=4[8DN#532Y7B6!SW'S_U>+TP[7 MIQL7Y\VM5[.@4R2W68#VV<'0&#W(J" PDV+,V1O9NM_XG0!N0R;WG2T^XVEP M1)+=VB5[)GV6A9/L@OQS4*H4B$4RB#H7I6-@I;1O4+TUO&T(YK][@K71WHCT M.FW(7457@=PXKA4X92.H$@Q$0]]E;:R/EL>2QB?4!4!;Y0;9=\^A^ZIH1-9L M-G\V#;U/.DZ*0N&?Q4Q"DF%6Q-^*+!"I,4?MBU2>CTZ>Z[BVXM ^#V,_#(=V M5-C85#J_IO0$7 PR!:$E%$<+H[(4!41=*Y%1,5T\YM+\.LTMH6U%J+UUZGI8 M0NVDMCTXYF_#\^6D 8V:8*5H:R\8A!@%HC=83!GAH/Z706W%H^\L MZ=Q64WMVNE]W(7;SVL."%R5MD1ERB@32T)=0$H>8CM(G):M KZ^![7Z_FP(STS4918KZG3PS%F5/5FT> @ M82*#7$+DZDJ]^2WU %L\;"L^?"]Y[E$TT+*!YDW"U_3IZHKP&(R/5@FPG@=0 M]!.X>B0U>8Q1.UL4CM!=V5N/SGJ( M7L5:^4\#(#*C13Y*(VA6N^;UPUO ^@:*@7=ET]6EM;6RFLVFM^%X."CP^_)I M^M^CKL=+I1I/%_F\6L-D+J//'.A_]7@2Y^",4R!IIELFI>.Q]5[W]N@F=;'" MOD@UCN[&X]8YV8?S3,.-\YO?Y%F,WF=1+5.HM64YX:86B*EHBDK1Q]0Z3+T+ MODDUV'XH?K727SN&75A6;Z@TNS0%T"'%S;* SJ5. 1J)R(J%Q+BRSK(23>N= MRSO ^P8*D,>TB2V5UZYE$0U"_5=A?"* -!7>T0CT75IC'LA?BV0OOG#AG6^Q M[Y;YNA=]E8%K/A H%I0G HQV\:0'>>0K&C1I9,$A!!I0I6(]($6\E%G$F)1DP;7V5>Y[V/"!&Q-- ME^,WM* =0_T/$9AZGVC%HD@YHB5\W!>(44H0/EFAN%$&6Y=@W3">0=\\ M/7=5_]CT?-DMPB)=QB>-R5%:!C8' TIX!\%F"0]Y4UN0#>E4WS? M/CUW57\S>FY$?%,NBOUFL=, GPWE\V[U<;D*\U_ZY=%'^@OZ.6W.8V,^/XX] M*TQJK[B&7'/="EV&4*^P9!3'!"-S=+IUMNSAI9Y2X/$-3:>'5]R=Z/H05B1A ML"(1M*#J>7.-DF)#1=&;5DQZQI/"/37\^*H5V2WS\&JU.J+/IP!VV&I]O5P< M_([]X7.,ZQE'IE0]XF;]('H@G]1K66N0K%8FIR!;WVVU);0I12$CL>I+&8=6 M2ALEE_5KMUCVW?IX.!CW83DG95!0(P0/RDB0:(9=6#++04GP5GBCN HRM/;* MOH9I2J'" W!H9S4U(\\[_'B2K+V)SXQYQT4IP+V,!,E$B-8X$*I(HY/)6;9N MZ?Q%0-]",KTU;]IIJ/G^S,ME3^B.>O)D5K0>/EL>'BX7[]?+].[7B&P5'BZ9]XP]0H_9^ M7^]A=O^;?+TVW"CG0=K:#]*I",XC!Y.BC"5+QT>X-'DT<5I=*?WJXNW6M+;, MDN8E1:[ >,YIF.J=JC8)L)A$)J87:]M?CGLSEBE%#%-AYFUW3.^DQW;-?2]? MFC[:AQ[8IU@OOK6Q=LWT#C"E%#E/ETJ[::]LCF@1< M7@9T=H^Z85Q;G8"^U ,P3M?+G@WH/+SL,+%1;HRY%=&4M@@F2ZYV.FU3\OUL MV7]<]C4[NX%PVJSECT68#W^*^1G%V0=#SY;LDB9()*4"I4R!F&P!)U)40M _ MGK[F'-[QF9.*.:;&J3'U-VJD"_DGS#O/E43??//KXO-W]Y]//NN?R_[/5XLA2[?:E"F^PQ7V MGXAV44G':G[%^^!K*PQ:TSBM:4G:PK*5&7GK#8DM8$W+J[XG(ZZ[P6W5T?!X MXPFP=^'SK[0F]5V87\&%QMK C0J>S=F SJB!]4$ZWOE/VRXAV7<@N:N+VIYPT#)L91G*G"1YY9:-T_Z4X I^0I-632U>5N/*4U,Y#;09R%+'U"HVNW2_+PG'00 MG*"PCR5-+P28XB3:%C78FM ML;1,N@@N4RBJ6$JTA.J$MO69LAN!?$/&:Q<:[*Z$46W5B] O:H7&<#MFK<&I M-8#GB_/)KVM5^NGM!ET*M99[?K1;54N;![>P4R,,02,K]<^!^YB??L(^'.!O M1X<1^S?EY,D#FM6;H_6JFE>".%->*A],@6P5.5D^$T]-+=PL'(V(*6C5^FSX M'2'NNJ3=^+C;'G9^-=2,)JX,HMX=R[*H25H%P<<"!:-QK 3N7.M#R?>$.B7K M.";_KJZ3^]!L,\MZR\!!329PIFQ5"'7VMFB@83F=/<&D:K_7ZF MYY=4?Z)NO= MO6H[-U>[A?D%\[VZ=@EM/;Y\"J2V6'ZY[ MVP^^?=[7F>9%7L\ M>J85T"C5 MF^%J:;-) ;B+1G,?I&7MJQ3;X9^\[6C,W!N;ACX$%Q[(L,A28JH7JKCL":*4 M'H*LE2ZT#CK"G]F^_+UM#$OCT:@GWS!O!H(Q2]%3""#1&PJGK 0OZK@DY[A( M7FO7>MYNBVWR<[()N^YD6N^KN5$#X9>AZ_\SS(_PU_/;0B]D*<]^O;D[A,;I M0@/BDS_)R\4[K.V)3X9PEVW0,>&T")KW-ER-0ND-CC-8]2SZ?%E1D,%)W-C, M(=C:GMS$!&2 ]+##7^@_:U3KT/!6,+M?4]YWGTB;GT[&?>:X%T%844_@D=,: M:2)'DQ@H7G*)PF),K9-]5S%,:0%LPX+KMY/O,.I-V[P-.E>DK#&-9\ #KQ>2EB!SZQK)K<%-*18=ARWCZ&E4V_@.U]UFB:\M#2\L M\[_A^F=<8.G6S^A/=K%W=WU$"QNVDUC--B)+MR!G:/.XBH,>OND!TZ4+((@, M@@O,%I+21+F(AN(B6EULC$8$U-)C^Y5\.VR[6ZVKSWEZN.S7W?\-.JW]-+ME M_Q[[3UW"^KR3/36>T#'G$F"(&12+ D*JO345PYR8"9Z9T4=D&Z13LH"C\.VZ M01Q=HPUMLD5O6,2FUX9Y).D59@+(8 +,80&^\1F\9HW\!LD@65"#F.XD*3%&E MH.#:-V_V>A=\D^IV\D#T:J2]$?EU>@!N$)[)D+*P%ACCLK:;YN#J437.,W+E M70C-;SG^,J(I=>E[( K=6T&C>O@U7=X-"?B:J]DU )*:%S]IDW[RN_2X =SHV?:;_ MQM#/.'=>6B\@T\I+,[8D"%HXD,9IADQQ9/QK+&V.:DI1P'C$NW26^L&4VN8H M_T[P*^8W"YQY$70HMH#WO&8 A0&'+ .B,4HHN\K1@)(V)R22 ])N__YZ_3DQ\^XVP^GD[^\:/X&__Q!YRD:1Y//OSCQ]_?/V?^Q__S'__V;__^ MOQC[OT_?OOSAYVDZ.\7)XH=G,X0%YA_^'"\^_K#XB#_\;+;__QX\?%XM/??_KISS___-M?<7;RM^GLPT^2<_73YK=_7/_Z7]=^_T^U M_&T10OAI^=/S7YV/;_I%^ECQT__][>6[]!%/@8TG\P5,TL4"M'Q>G/_#KZDQ M/ZU^2+\Z'_]]OOSW+Z<)%DN [MS"#UM_HW['-K_&ZE\Q(9D2?_MKGG_\CW_[ MX8<5YV"69M,3?(OEA_4??W_[XCJEX\GBISP^_6G].S_!R0E1O/R$Q9=/^(\? MY^/33R>X^;N/,RQ;J=]LN1)E*CG_7_VTGPZFZ2,1,DMG$1G]+4ZJB#>D\:9/ M/YSF\\]B&0N5-,+^;^#)?S%B]UV=C)-%U:]Z1>L]-S MN3B!B"?+OQV=S=D'@$^C\P\E3N +^N-\E&SVQDG%4H;$-&3/0BB9\52X#$8 MB!ND:KZ1T@+SN)2K]1(_5<1^PI/%?/,W2PR7^&VG8@77_OMZBY]QUX>A6AI*B.+Z;#0K$2$]OCC M#]-9QMD_?N2'2M,SN@A>ES7A(Z<4+6X]RSYGIJ/A+":+#(E&E,8B=[RQG%PB MX,%+P/[LO(ZM.!3;7V?3^?S-;%K&BQ$$H;E(AJ$MG#3WK)CWOC#G2Q3TK7#: M-$;VJ^4?/*[[LO(ZJO)05-_A"?WHPZ\XH8?RY,DD/\FGQ$[2(.C9_(R__/6I MOJ\CL!%3#)IQDSS3OF@6%9*IIH6W4>2,Z%N_=3M1]N!EH0< KHN).E1,GIQ. M9XOQOY:JU.OR8D(V[8=Q/,'Z]BSFHU""]=(+5HP$IA60)>^QL"1S4"*1"L=E M8_&XG:('+Q8-&7Y='/2AXK!6JR0E76>CE%7.,B%S,@6F>8PLI!"8 MMT79$@W&T/I-N(&,!P_\H:R]CK8Y%&V2/ISA?'%^%R4%R=!^# 9%PD>O5>1% M,B.D5#IH'VUK_?\*"0\>Y4-8>AUA>_!Y7GS$V:OI9'I9^#;4N1"R+2!IITDR M[12].S%(1N8$&H/)6=?:TKV=H@>/?T.&7Q<'=_B!WUP]&^-S/#DC(B^\*4^Q M3&>X^CVR.W'^RU^DL-#ZXPG,OBSY0[M+U6R=+O6;C<"/4@E1B@BT%[K!=.'$ MM>P1#_W?7^?.LS=5S2:.+Q:S M<3Q; *G8[Z?;Y%EX'IS63(HJSUDK%B!D)C)X'\&(F,O@5]<^.WDD"23 :TJF M)O9GYPW@'NSK_05F$Q*U^1N[,/9>P/H!WMNKU+U\_CD;(%Y5#=H0D;FP52/ WCFN3-, MQ%2,E1&-:FV';2'ET0&_#XMO@/Y@+^WY-M_7%V>40](>@V/53J9SS/_X<3$[PXN_ M)(T _UK\B1E=R#0_'^CHA+>_W;3F2%W"WP>@ZX(T8 M/!CZVB>3BPZD78J:7$TJ!W")+'##@PSHY6X1^_N%^J5,TZ. WH6O/63AK G[ M;:GAC(SRP66D_6CZHK,E72-*PUQRP*TO)8?6MOXE H93W1J",FW%T1X2Z-;[ M6A.3I-)>2&!\F1OD7'6EN\0D?:M"+LB[,\)O6+!Y9K@PV:J()%;.D>$7 KTZ-M3L/@A1%85. M[J1='S4S_,4DS1#F^#.N_O?%Y#KKWDY/3IY/9W_"+(^0T[Z$X&1863JDQ4L6 M$\\,C8$"10B?8WN_7#RUNO G+-+3(XNOWHTV6\6+KGBS'1N&R8I;-( M)]-ILA6T9!RB0-(2E"BM;^V+U1^WK.S)Y1[RW9>)5\^FIY]F^+$:E9_Q(D#S M"A>ORWOXZPW.QM-\E3]/XGQ9@S.2R7N9#;*H#=W;57WT"8!9!%]\X5E":ZW\ M<*H?MWP-C&H/"?;;=O!S10KS.K'FS0E,YD_R?Y_-%U6K.-_:3??M&YC1KXRD ML=Y"!"9 >;I?E6.!OF?2B$1Z1R%CMWE:=D][&5Z&AY:K'<5Z4*'HX='=MB^Z M"G#\8?+L;$94IB_O9[0QXF'=Q20OOSM99E)TVVR0P88<@"F>Z&)Q!9BW0C)G M>2#M(].K,]0)Z&6#WX_%O1&?@1669S#_^/QD^N=_8OZ OQ)R]2]7^;IO,9W M?#XNXU4#D2>%].U:(>PS.D3NF$JEQKT &?!8F%+6&D\[;9]_W7@+W^5]0!$8 M4-79NIVM&TD0)6BE&6+UI20R("'0@Z9RR!HR@G5#W>R=B?\NQ8/ WD/QX]*, M>8N?SF;I(S$G_WPVJSZ/)>?^"T[.<.0E1)=28@&-8!HB&37%(0L"9/&Q!(VA M#X_5;40];@.P+29]"X9_+G\Q'7A$52@/CWJO* LN@Y,B$]**WS]],G.2_Y#R=O8$S7]3/X-%[ R3+[L#9Y MR_6>I4MV>6^^1>+6?+S =2ATM3NZ7: MH,3,7>:M%<.^]_2XQ?9>240/1G_QKKI!3$AP@JDM9$-QF4@*P0FE"4RC;UUJ[LV.F_AP1=#V#C ML=-_KVUA)8SU*IA.ZKVQS)'S/J&A8\!,2DCFH(XLJJ19D$YE!XJ7Y@4@MQ)T M3Q*$.P&]368.9G@/WMZD)L(&C9KN ?@KA:)-./Z<"(! M.5I4BF&(CND,@864Z?U/WAD)-K1_.0<4A2VIQ$>3A [,[D$"B)S3Z4I97:=* M6IUB$9 9MX:V&(LC6SE+)DW$'*P3);>V!ZX1,;P"WP"<:TT<#^%L#VE96TR% M-7%!FY*%K DXGHB3-C!O(NE+I.[[+)T W[H[QJT$/081:,?Q'D[^6UQ C29O MJAC75$5K7,PY$U6&U!\PA<4H)?/.-Q#:/%]=5&< MS;XL[Z;5-;4F#(M5*BG+(ADW.ZO6M&DN+$\8F$ 7F-9&L1"<9^B=C-E(&63KB^,V>AZ#8#3C]]:@ M1--Z)GKJQK.EX;3,2UOZ4O::67'S!S6H2=J!PBM51TY++XMWPA6O5=!>8)%D M (9B:QN'.+KY(P\[9]>3_'X>SZO7\&R&%Y[-# :]CI9)Y31)5O5L!M(CN+3T M=!AM16JMINU$V,$NR_01\]D)OBZO<+%>JK;#7_'V/0'TE'[]CQ'260H!"NU? MTLDR *0WHV!>V,@Y<*]X:W-E1]*&OWO:2\PUOV8/J/11>'1.YI*X.D+A^OF\ MH%;+9),ALRL63I=H(BL,I :F1(HI*Q TI1:UQN2^QN\O' MXMVG6M8\>[D>"[CT1:-$K$UKF(5Z-(#NV6@,,F&%L8D+"+YUW=J=1!TMAM>? M/%QWZ33$I1^_WG8"UW;)+B3V%/3;@;SCA ; ]M%; Y Y4@"%+7ERHC(/-E$ M=7H15E^$9J*$&%VQA4-K]?MH@G-'P/#XKFO]L-C E,\F559D2H>-)+)7@0SJ+EV26N4K:_S:T0\ MON-Z&)\; K\1O5^?CF+D,0)MP-J0R>ARGH30:@999+*YHI7J-J.AVVG]]>GP MH![(].E!'!NF==C3LSF9.//YNY6E60NFII,T/ADO!7>Z&1Q:>;/YE<7TZ[Y8 M/]>P],E>WOEF:S=PZ/?#ARLQ )]=R!ZE":[>!3D8JXLLP>24BE9NU(R*0SL( M+C_[+7ZJF>8U8%2FLU-8.LN8/40 M5[AI-J/4/(%6AD4;Z57A4K ')BL<=CD$R;3.B_B?HR][%L^#F5VKU& 6W;_ M],OZARL?8Y (?#E)*'I>ISX8YI.3S!+U&8(VH?U5VYW,P6IS^I::OB&Z+V&! M\_3TJVK'TM/$:P\'I3-#+74M=BXL@B%=U6HA:M5JZJ_6ZR:"CA\.Z$D:MM7] M'(Q*'[?7BI:U0;L+,3VY_B\1?I&?$NS&V(=+701V_)?GR/Z>-D>C+],,:O.ZFO MB;PH.8@A"\Z4=+6R6WGF W*6++K#PMF5BPRJ<.O+BPOU'K%P:/\O72'*G(2C-9%*2Z5)*37N3S)00 M8A#1V[!3_Z@[9O?70F25YV$U%.9=^-I'_^.- M:W-C@VR* 8-R(17.).B:-L_I)?+:NB/F@<]WPG%V,4CA+3W8N. >*[A_/G2JPW8#8%"@\8Q3+6*TQ(R22>BHTQ MP)VQWKTH:AOW/2>)]"GY!U/M+-%TXXX66MF F[4KF0E\@,$]G MCRD=DHS*Z&2:US+TLY5>HG_)6EU484(4,@]-J5U%O672*!39%.MNZ+HE[]J!T9\A8N1#M(Y$3)#'Q73 B*9,+KZ&X,W);I$ M%TYCN=E&RW?A:8947Z,R7M&;V4T2UWAR M1GQ:,XS8LAI$L?J]]_ 7SG_Y:S$#6G\\@=F7):.VC05T=$2T=PP*(*L=%\A* M4YHI 5"2]C+Z]@]D;]OYML7ZOLE+#TUQ+AN KV\R +]B[OPR=U>^;)VR(CH# MXTK;6N&N&!F=BD47(D^H84>G?Z=$U$.I/E;>V'T0YX$Q/W;FV2W^630\QF@L MLZ+0-B36@4)&,!4 0PB8H[ZM].MAQJN&AO_N\%47& :+8.Q T[<4ONJ$T4ZA MC#T8/!3X5FD97*Q::9%,FZ19+$:SG$)6)1MZH+^%\%5SS+OP=<#P%?@$NIA$ M6XST)0*P.BB$N1JDSP[IR[<5ONJ$TX[AJRY,OA_AJUK L_@Z_C%8P&K'E0<( M4>W#@RM!J>BE,\FA%HEK%TPT7%KI)(\Z*&_-G4&I'6D8H/PP@I+)0F+H;1U M:>E"#+6*GDPUR7T24K1N"S%$^>&*P2-7@X;)9Z:P#ARBWV-!T0GE0A:$!!9% MZR%NJY6/[V4X&.UK77&[L[37?H*[IZ99[8QWG$P)%\BR!)=93+5_':!P/&AC ML7D)S@.O^SI$4/J&Z!Y;W[F(9%VT+' (3/NU"T[=D;G?":!?3:Q\&#P9^BL46H9@/D)D6/M2YWI(@"RI[ ME2/>VM/E?H+>W=QNCWD'O@YH;BNE+=(>:_=*VJ?@D85 )J9U2:03:'_ M/NI@>U1ZF.MTI7)N!V*^U4+_3D#=7O:]!Y=[+_0OB=/=%F E&NR1KU\K= M4O@>2J%_)U3V*O3OPM)A"_VUX5H$,GR@CL?0D6?F>4!66Q3&D!&$#CN!?:\+ M_?=&N!WSAB_T-V2&E* XW5->,*WJD,A:"YE%#$8F6R3LUK#CWA?Z[PUO6R9N M5"V0>>W3!PA1%O1<"1F80C(H-6I!%T,@T]* #;Q8#:FY835 B)+.1T+,R\RT MGXFC\\5X08?D==GP'.*UG$*UE>1EFHS/">>M$U!W(NJ?! MS2YR0=G'Q%V2A$D$99PWA-/M&ZT*V:O*UE43%X M#JK$UKD^VVAYA)+1A.WWI %JSEE*[B-+QF:F@^3,1X4, 4M2WAFG6Z=#//1 M^"&BTS=$QPZ$7Z1?K[?U.P&U-.U#40IB%BR14L$TKRVB.'T;LYZV(+F:O?VIMO7.<:DH@-QN.KQ;,3$ MUG[.9]-E+/YF-XXKL: ,P+RL;AQM@$$IEH4$ H.QSG.S$[JWK?+ L6W&P&$F M&:UG@51C9QZ__ ;_/9VM);,JQ0L3UV<,4MII4T!DBUUSEHFPAL M$;VQ.O)H4 D<[;;$@3,LU+TP3*7S. H"Y($@B=? LFCKV M+@2Z+Q("\-9IS7?1=(RI04+&!/1?%DPM-\]DI@6?$I,E8, DL"++6-2BZ#9&$W"*Z4D?2"MFBN<; J-^2UC\0Z%WXVJ?_@BA[ M/ANGRM+?8 (?OK;40%IA5>8LQFA)>S&11:^!F! 0M=. 3MYE G59<-A$[D;8 M;/-IM&)L:^?&U4RS*XE(J )P%P++CLQ]'4ACC48F9KDL64D)_JI6N&/*WK'2 MN'J$NA$;6Q_O*YEF3\_&)]4NV9#FA <)G#/M^+(MA&&T[9J-JKER*D:782>$ M;U_GP2/DMHGXU*>X484C4Y6:5)'Z.&HH^4= PZ. M^0P"E'.^Q#M=E7;$ MKX81[W7 H2=PF['P.K:FWR*ZDCDI THP4U+M'2I)\$2->4GGN7?"%=Y\Q,%] M+*)K[F9IS_[>J^5V(>9;K9;K!-3MM5-[<+GW:KD<%2!8S1(&3W<4".:%SW11 M08VSRH2I^:3V>UXMUP[Q+LP]6K5<4:"SM(DYJ3.]?6#(9LR2H8!L,U?@U6X% M5 ^E6JX3*GM5RW5AZ;#5\-5RB1OGM>8L:ZQCXX!T6"<+P^*C-U%8J7=SL-S[:KF]X6W+Q&&J MY3;ZZ/B4[(QI>3^#R;S@[/#TH&V?V"XO:">:KR0$09')"ZE=XEXG8T!9P0L= M+L<1DY>C.SZ[YTP@K;(HJ#6+BI-N8(QD7M*71+:!\$9E;O,WD F$BFY"2^=" M<*2]YX#B&*[%J7MSR.3* N\M,B$Z@+4$-G IE0T*/0C'MK:[#" M,BBYL/J.@@G'Y\3J!'LG)U87]O?NR=B%F&_5B=4)J%M=&OMPN7?H#4>I"EAF M%-;N--FQ&+-F/IJ0=8JY??'^?7=BM4.\"W./YL12D*6L62V1:\4T&0QDE=,= M9[D3J7 CS=5ZZP?NQ.J$REY.K"XL'=:)Q8WEWM31H9R>QY4?)MG"1(H^EA , M6KT3V/?:B;4WPNV8-[P3*WB3Z6JR=6KU%MR\0>8HLKU\SK<]?,Z_+K=)HO9[:6:)6K)FF)]$9I++1Q5P0+%KU6"-Z4 MG;IV=WBQ=R#KT:GOK:$87EHVL=,=B.Q)N=^)P.,H_8$/=#?KI TH?#,E M;KZ8$.&X?DPSS[F$E!DZ7>OR/&=!N\PR&5 JB&2*:^WQOYVBX167'F"\*BCM M,.C!B_T5=:\_X^PKPC":$AUZ,H^P]NV4G$'VH>9E2T=_LBZUKHC>2LPCEXL# M.#]H.X<-GJ(V7,GHA6@0E!!@1C= M]L%]MVE(BBOED=GD=!VEYD@F,M"7&#DJ51*TGK#85W!V:>E=XN&3T^G99%$K M?*+@*C*3?*GC/H#YA,!DDL+6(9E9[I; <\.'W\-X:1=(+UG)A_*NM4?K$CUO MR#0DEJ%'5C-?G$1) AZ"C$52MX%S#7G_YHT=R'>SWHC;<: M[9;KE'1"QE.LSQ, BV L\SH;"?5]PM:=8A]$;'L?"6C.\/L2V][%_%))6&(3 M,"=48F1PB5K^Q1FG]]:&3#I4:3WQZJ$ZRCJ)P!Z.LBY0',V_L0N1WQUE!\.[ MEZ-C'VR.)DC%!Z&S%8S[.BBLUI.#=HFI9'6QWA5E6_=I>MB.LO[EIPLDK4-W M&PWLQ>33V>(W7'RQ@S^S)17I\MKI)E+3A1'#*1G&7:<\_ H&>65#DAI779[M9]=/L: MCQ;D ]DYJ//J+=8]$U?(QEIV4)\D?!U/QBM]ZW!OUFZ?W\Z]M<=^KOB[LJD] MHJ5VSD5=LHTQ94B$D *=+#>C3BLUR=2_?:E?_OJ$:8%Y(]WOZ&_G!=+E80M0 M$&R1I'2'0K9S(.$#%VH_(.F5 NND:!U_;T=]HXJ'VRE9>QG@ XZ")_Q-=$S$ M6A1$\L!B*(DYD$%[05^:^Q4[DGB,QLU'D<4M-1&]0-E#).E@KM$_&$^S&'FN M5^6 MX'=+\+LE^%U6OUN"WRW![Y;@ )9@4X6Y!HO^')^[H&A$'#[5??^#; MZ PA*_- MK3^0LSUHEQN21KS.S*3[GG0#%8D."PQD2HP+P5,-8A) /2%\/%CW!F(+L)VX MV(.:M:'C2?J?L_$,\\]GL]7K2SK@**B *8)FI3A.3VKM-9H]/>TE"DMWJHVY M]6S*V^AY/*@?S.T>BJ4WM-$^3N?S4;#: MT&LJ&"^BSHT@@^QXVJM[KF@\QN)F4H4S!MJI+"[[>EV#=[?VP9!08@LLL..E8+0YB@+*P ME)WE12=;FH]POI>= IL@WJE)8!?.]]XI;A=BOM4F@9V NK5EW#Y<[AUZD8.2 MTM3*(%X5-M+D@?1YEB(7$;B1J%O7ZM_W)H'M$._"W*,U"2357:%$P9:-$4G+ MLRP:B\QDD9QQ((U_7),N.J&R5Y/ +BP=MDF@J7991$^R[6HY#EGOH$T@W2B@ M]3H0A6(GL.]UD\"]$6['O.&;!'HC$O(0F),%5U.Y?)V2C%9[ ZDDGG>K.+KW M30+WAKHZ679;YB:GV2LN7!)AE9(NN8Z11)\IS7C.R8K'A2 *)U MO?,64AZ3AMZ"VP,)PQY)4.[0_(\C)UW8WUIQ^"^8_.=T.L=G MTU\F"YQ]FHWG.'^YV!1=1@X8N:*=^E1S#^IL=/").6L/MZPRO M,C1&9=H/2[=J_T=*RKCRDT%R,[:L.6B*QB[[OI*I$9*SB!PCZ80:@P"T-A=C M//CJ,S =,C6VK'[8J_"\L@Q?CC]COKKRA9N@Z]$7AS"73^8Y(L>@A,%)")V.'= MU:9Q/>[]@J[AK\KFDG+UA6P.1P_)(;^A;XG*9V=GIW O.3T^EL,?[7,N(]RL#I M_0^%%15JA#EQYF5Q3.4BA7:X30Y5C5H:3M=OZN=J=NJ'R0GH7EYX .7;VR'RV&+VE/:S*G'M MHQ:550;H9I-ZI_O^V !N<>"VQZ\+PQKC]D\SI[=@+S M59H11"&T+(:IY,G6R*1Q!%ZG6MMHHI>:*S.@-G^5O$?Z!O<-U+!&X06AK^!T M$];8A=R>@L,=23U.J+@WZ'<7L6:X#>O@NI%L+W14FG,F02*=PE"8!TO?NJ*$ ML*[$YBGD]T+,[@@TWU^79.AS(:2\H]*! O8'%5\1X-,B+0A9= MK29T5I):R)$E]-&X!*APNR/ MFKJ[_*;N>4,<&8U0P\3,!RW)\JO=XX4$EB2/(LBLD#N>") M=* ?IM9M%8Z;*[G.N)*1.Y'(,@@&Z34729.-D!V#$*U,Q1F36W=+>J");UTD MI'/B6Q<8A@UM;,NF MIOKC9D+<2JJ7J9083$DO79((I07.M&:H\F\:TG46H! M51\]"7:/^EAO+.>D/$11J_-MBLPK;5EQ0JI,#TNRK4N9'FA>TR$BU!,@Q\YK MVL<['[@Q7(3,2K1T-!P9)+$$R1QJI(L7<@JM1WX^KCAM)P$Y($[;!:A[$#C; MA=SO<=H>H#\P@K8/;O= W)($+SE$%J4C&UQJS[RKW3J-\L'[E#@.6+[R(..T M0TI9%[B&C=-:$PLH4Q@OD)D&)%71!,\P2:RFO#+0^CU\R'':3D#N'J?M@L(P M1<9D6DS/B,"WF'#\N;[\+5Q=.WQJ ^=65]JON+,\<.]"-D4*IPO$H"T*S-%) M+FP0,-KA\P]^#6"2QI,/%RL\.3F9_EFG$#PGH9QA'B]JWU7\RD PP8@2/6?@ M=.WTR@N#[#03.GLA7'(%6H?,]J'SX)R"V?3SN#X&M,#/T[.X*&Q-@NUR(M(7K?FP6WT'.4^ZU=RKJ4=M(*C!R?7):MF5[:L MK1S0LF!T1*HA*R=QR3S=PRQE933=U,I@\U:J>U,[H)]B6.$:",#[XL=X4?4# M/&]G^;+^@TU+&R.,D5P!\ZGV\4;EJZLX,JEUD2J6K&3K,.4MY-P+/T6/ C'M M!Y@>5/LMI*W5U5V(Z\DK<2MAQ_%!-(-Q-_$X (/!!44HA]R!8]8+0[=T$$0N M*B;1\,B=%:0-/WP!N<-[+3@0.KW$W!/=:]^F^ MD!G&A?!R.OGP'F>G/V-@YI?#)>?+E0X(7-V1F>:WZ" M)2.NU ;J'JJ?U/-2LBRJ==S_5H(.O? J1U],2)C.ZGFM/![E8F*6B8R29$7- M<#4LR,(9FDS'AQL+O'7?M.M4#']UML<%D2>_FI?'56 M.7;NWH*39]//2'\D(K.3E@N.S%6[4X<4&%D0R#AX$= )[6"W81^[KOAHY*$7 M%C=,5AT+V7*FLXW,USPL4UR,PGD-.>\A M";>M^4AEH1F;MU:C-)6&%[5!..;J/E6''D M1DCO(#^=.=Y#B.?&$U.]T;--$O0.]/44)KZ+MN-$BML@N8-X' S#,<3%1R.M MB543KFXX3*G.4'1,?!PIZ<+]UD[0-Z^>/87)'Z^> M/"/N_HO8M/KNGWAR,G\.LP_3Y??+ "B MZ,)["\[TH:#>0ZSHAA-=#%K'O62@R S0003FT9 90 :!2T)EP5NGWSUV;>E M+O?0DNHR1>M3LPM-/>E&-]%S''WH4*QNA?X 1O?1NNXFVE*@J[,DH@U"+7JE MI]V+VC M\&+(L)3TSC]8\._0\#\+7Z>GGRN<$M3-UXBSQY QJHU)J#?ZM! VO6AR.V;0OAO?P_%]V B\%WAE+H@V9 M!>E)(2$=A%3[;%C21<>8"W+=.@?J.A6/Z_D_D,L]-!J\$B:\*/K5(!M M-!U'#3@4LUM%X$"&]_ L;*4O.HQ@C:+WCXZ0MCFP:# SY:/2Q>L(S5^$807A M#I5@*#GHPN?6KH[GT[/9XB,9KS5K]TG-P)W7'.^\3C_:5'!O.A=RHW.A^\_$ M()C64%@M<63) 48+4G"^6_"UT[+#:P)MH)H.PN?>58.WF/%TF6'V!F?C:5X> M!"$]+\DYYI*KN68J,N^X8RI@],0(E*EU(]J[J7K,JL/!*/30U(3O0 M.(A:<3-]]T'%.!S;3J)S #"]JQ];:+71.:)+,(AU=IJ3GD5!I$NK(SVZ,M!M M^6B$IY-:K+IM!QKE9C*A<6:/Z\+3\RKDE@IG$N#)OLH!A6; M<]*.K=.TP+63X.P'RN#*S?L_IVLR$;G0("03NK:N52ZQH'GM@82H?2HZR]8] M.W8IC^68P&>U:Y7D_DRPM>B[G/'3VY0\+G/'JY4 M>L;@$YDE.H20-15Y9EW1148I);.Q3G%0B4PO0_*LE$\V:8V@6C\9AU-]<'7\ MC12,P*%26G%69 &FA9SP9B)?32>?<5Y[=5=VS-]/%[7VY.+GS^CR>35=_#^D:SY- M/TS&_\(\PNR)6](R3#8S'0HR,*I4A57'&(R%TCKQH+?-?'/">C_$H@- MK=2:Y]/9^J_J[XD1L3D96;MN6EY':A93:W(RJRTTG./<0&H].7#8'7X_&?=' M@'I(+-J;V2=^YIOV]@J/&4D7V8:,>YJWC$/G!B* MR&)$6V2V1JC6T\&:$3]4(=ZQ[]6C@'U?JOM6Y-,OKPI.,@=TFG8@76 Z&LV M<_J3],*;J W7K<7U$@''[P<[J Q,6V'11S_'O1EQL8U)?G,"DZ^GI.RPIYY" MU7WLYSBA[0/$I*M*.13&#T5^=4F%UPGG2=K"M->%1:EJWHG)(&TD?;)YV](' M([=W1-7ON=AV@;:7T@%2H\=I@7D9Q]G,H@7D+E4IK/3VJQ^R8SS2>FD\E9-@RF+NDY* M%RQ"J1XKLI]X,MDV[_*_A93ODM,$I!YNG+5':'D;6Y4AQEJ(99#L;1)A%@T7 M3 IK2QVPX7-KO?^KY;]MK7]?''KP+Z])V:2;[$!,3\KZ)4*.HV7O#].WF/6V#V0Z'A M#3.?+49OJS:TO# A9&5(;AF*&@<'TE^AD!4D;(A<"J_*;GYB^M2OQ("^NQ"! M2PM^FQKB_CQO&+(])V(M?[N0T44KW$4$VI_PN_7 YA_%;X#.-?'"=ZX+BRO M=2N& 0*0(0N%A82!:6NXTBJ U#OE?QP;P"UZ7GO\NC"L,6[K)L$;QT$*A2LA MF%^.PM3*,L]58&AT" YY\++%[7MIT>&>UX/8/FW!LX9Z5B7D_7A17Y 7DSS^ M/,YG<+*4R*RRY[7N6!89JT32BQZM8B)[(PH8&W*+XW?CXM_NZ :"WB4PTVOPA",XMJL%QY:8+"(WEY>?Q#!/] M>/TNJN1R(E(8ZN3(;/6%S$EZ%TMV&F0&:\-.D:([Q.'RJL,J$[V",VW"V6$& M:=Y<(7@EL F3?#5@]3LM/6]>9]EQW=ZJ, _9_Y4:S*(=T M;X#2V?L2SJ)-"DL]FF,K0OG9X#Q,#VDI^L_J-_@5HN,!"R]VN!K"-C,L@ MO30,HE),!_H"D&FC)7AE!<;4/'HYV.8>T"$90$J'/U![B-@Q4EGWWNBOLSJO M\,6Z"\A(%B&20<]0\43FCT#FG4LLZV0QN1AR:-T$:JB]?3])1SE)!PC8?:J? MO7.?_[7$XWR?7MCL8O1D0B8@,!!)3["%E9*<@3HH([9NWCC4WKX?I*,F#9HN;29B[X;E.,[\-NOI^I&\[4O4&GDZSU48T\F)XKK#,E"\XR MUGD./WRL;4I6XX&7NM//L,#G,)[]%YR< MX=='2N7,%3IZ 9RN87'2I\ %,E%R*@Y="!+DP\.J"PL>T*WY8#Q(O8G@@S*+ M=V?'J!3C==2%D=IEF8XILB DUA(ATL$$9B];MY2Z#_M^0&?O/@C_/3S(G23W M09W>RSZ'NQF!,8-,PC/AY3QE^C,Z] MNSGD)""*9!A/%6?C HO9YQI,B"*&F##Q!^/]^WZN>SG7#P??3N+\,!V,=_,@ M1"7K7%:&116F0QW\YA 8;1^U4\YI_7"T\'T-Z3VP:U=248C%BM=NL)*$L [C MC<5ZYK3(@7.9HVG=:^A;;%5YD /P*&#?SU:54_K>JK)3J\I.8C)$S[]],'XH M\FL3$N$>&-A:(9F*9]Z(S (DKZ*)3IO!4Y#NC=QV:E5Y[\2V"[2#M:HLR4?% MB0JR51S3]2'Q6DHFB^&"WA435.M V&-N5=D)XYU:578!J&%!P-(,WW3Y7]*S M+&;:%/<7X(5KRXRI38\P&A9D*LPX[[TBVSY?;22SQ9&S;85O6!S:<;Z'2V1; M4TQGHG626Z:*K;E66M><,60>?+(0HBO0V@I]W)U+#[E(6H"T-=K4M+3UW)_R M&\+\;+;B5HL9H;M]<(/BU#UV<*7Z%$A+X=$KNM25+I'[[.FK-:"$T/3GT6Y+ M'':NS]=X"B)^9YJM-?"B33.J_M4)H/'Y@\&W]>8O!J6C\93IZ<3L\FBY'T M+L4D DN&T]E5$:I?.+&4A#,9O?#8VB>ZC9;A;\-!)>GZN.0&D/0R6WM#U\LQ MQ/')>/'EG .ORSE7WDSG2W1^J3?$?!Q/\)?)V2G.5D-.#928)$J6E=#T] =. MCP-I ID79X,OZ+'UY+<6=!]C*G<+*=@J6@-!V(/V]F(9WJ@4OYC0"X8O)O26 MU51YJ5("16?.02:MDBQD%FMS)HTR!+(S0@ZM;^]MM'QC-U832'H1E14=-28Z MF>.(@AU2Q"UY\N8D; MJ]!$D3)D'C*S.D>25+I:H\V!>>FB2TXB=ZT[C.Q"UU!AQJ/*2W. [DO\\.+A MO8C#I?BQM';RJ9,C-N([H MLEQ6KH,BQ2J$Q *0"!OZ-T46*82Z NVVQ..+#WT$B!W$IZV'L?\(P2:9:EK. M?_QD/L?%'"9YXYT9U[#'\I_DVJHQG,X;:WE[[.@6PGIXL6)%9 M>8X&R]UDF+KX4,[$_< '4I=9.WJL]P/:+T&2U:WPJ<8H ?- M0=UU9$&A8L0*7;PJ 53KD6=7:?C&9.4@"!IJZ>MZLDY'%I"33%D0]19H9[[@ KZ)3K7V46XGY1B2L+2@-BW4[.6RS(;T:2V29 M]LFT]('>89)M*T)4*'+PMK7R]*C"*8=(3G. [DLXY:N-G?_Q/\=TJ<[2QR\O M\3.N1JIPF:).SK$$KK9\!&! MNNOD'%%#;P_D-I$Y$(4>G$XWD;:)BI!EZ4KB MF2EM@&FG+ O!TZ&1T0AMN!6R=3[W+>1\:P*R#PH#W2!J,S-.8+"1C$E7;0SM M),FNHF_)QC3T,V^#:YV9?0LYWYJ [(/",.5-;W$Q7G&C5GC^[Z\$-#![1ES$]Q0G]8KG#A\KGP M"QA+$F+)-M,A:J:SR2SD#"PF'ZTWZ'QNK3'N1-A!7O)5N_37Y0J#1^ =*7A" MLIBSH1W7S6H(="JDX?3?1!CMY.S>LL QTB!:@WS),=V"D3T48E_9\F;$E;5. M1(.LV$1;E<8Q'V-AP@8K@\\I7,*CP[>)JQL'>+:R-R:N&5ZSSB> M54:OA$]!+(I49.92#J;D&62A0DH#*S6,/R-DGN"Q<2>/LP^([$/2:QZ1>9 M'H))UPG==+)\?K8@=FSHO$3^L[/9K';!)*;!R?]#F(VDE$[G5)C/N;:X$YEY M7@,GD?2WD@7IY:U;P;2A_-L0OMXQ[:-%Z7G7N^O[F5^P;+Z*GDCBE\PH6;") MB 4?62QU_GJNQ4_(=8JMXYV="!PJ\-F_=/6'RWT)XXF.'=$*H\O-UW Z*,N<7J*\\4X50(W/?^*-,J$S+ 8NF"=YRP8 M%>B"M84GEU*X:NT?KHE?HV)XK;HY6%=UZL,XW="IEVH[FMF7T>_O1BJ7E$1Q M#%+)3 MMF ^:U+AHA:<=10.WQ8[FF/[V8?KYI_4GKJ!>?W.!\L5Z1["5#N3Z M]""6]1$)G,YP_&'RU7X@%Q%USBR76ED?LF.1J]IO-GLHWDHO6EO.UXAX?,?U M,#XW!'XC>L^>C$K(*1EN&=>Y-G"R-<&O5K7R'!&MB(@J,S,PGK5G2)MN$%C3<%N[KAMFO3Q\Z9ATYUH-+ M_/+%B8 M2K_^O2.WNY$N6K.[!2U?CIJ]%G4465&$.4JUH]H;N0DEJJ!"& M8[)%R-:-Z>ZBZ=CZ^K[H7>LUWI#U6RWL/K/R+KI0O,+%FO9G]$\.:1/2=8GV M67O==G6U)3DXCTZ&@ &UTH*T1@"SE:A;?G8L-D=4GD[/!21(OG4-U M$P*9FC&QY()%9>B/O/5]WVM6W_9%-JU!*XM'X+$D80S3O!Y>&R+S(B7&0W*E M.*NE:]]L_#:*[FLTOHM\W!V-WQN#7AIF;,L5H'-Z-IN\7E[/ZTX.VEK+'0_, M@#8U(\ R'Y-G)@5?/$I(<;@LC^OT?1O2TPB?7KHD7J7UR>ETMAC_:^G5>UW> MS,;3V3NI?B;GSEU,Z%70H2D 8@S8VMNCMI\!D1.C2U:18'"38_O1 M!SN3]RW*U+[H#)+^2%KH&R2AS^/TE38ZRHA<>9_) "$2M<3 O.6"%6US4BB# M%/TGT-Y,V[K&_)RFVD)_^ M<'DX28K!!ZOSLB"ZCOL3D3-PPC,G'%GCVKA4VH_G?!1)BIWDH7.28A=*&U60&5?+B+30## "4U:*(+(O:,1C2U+LQ/7K28I=6#9(DB+&.F%0 M!993S0?!0JJ1%9$53 9D2<$K_VTF*1YR7 _CG&"8JHXQW1VB061 M##.8%?W'YW)K9=-#3'CKQ/3K"6]=.#;,W(NM$=9E7'5ZM3M%'['JVU?J,V3= M88]7(M=&"TE[BU$ ZIP56/IS*:B*\MSEM#UR??N:33R45WL/W.0P24XZ>EP\ M"S5A3TNZD$(JBF5A(FBI?#&MF]'M3ETC3^W5E2KKWV*:?IB,_X5YA%(:NI&! M@=&JNI,%@P#T^J(/"%+$TGQFQ$Z$'TSI/& MQ9!G5;MYT^YU3,Q'9466A>O2DV?_1GH&]L$>23ZZL_[A^%VML$G0X\%22,0N MK0KSHBJ'7I$N830I!+?5>3PJOVL[^#N[6;O <"0OV2XD?G>S'@3L'NZR?5 Y M5BVXU%[0<6'.8/4<(K# 76!2*RB23I&ZM0#T00G.P6[6ON6F"QC#N%FE\RG6 M2:NZ9DUKZ4CC"F3HHHW*695-5JW'RST4-VLGL.YVLW;A=$^UX"F#5$FP4!P] MIMQI%J&&S*V21L10H-R66_ @W:R=N'Y#+7@'E@WB9K62#"+E:E]0(T@A*KD. MI#(LU2')(3G,L?DX@H?A9CWDN![&YWYJP7/P)7AG6"ZUMAV\9EX:RU36B-5E MF."V -A#K 7OQ/3KM>!=.-:/:]QI7K*-@2E5-Y"Y9-%S8"K5(B7:64BWS6)[ MB*[Q0S#KR+%ANJH_FYZ>CA?+'O,P69JEX\D'^NZKD<$M.JWOLTP#I_C!N[OB M$8\Z5F^/#=&"+M;'G**-)08TS@691_LL>&"YYFR:S]+Y E_.UTQ?+AQ6@<0V MJ^"8MPY2YT':HPO"2&?EB^BN]PL5CYM9Z(+=V0W4B M@Z\_5')"[#(-"ZSWPG@E]-)QN:N?!"EQ@9>EFGI2)G(+QGIFA1%*22>&PO M-1<$?-."LR<.#4NVMM+\8C)?P,G)TNZ#+_5_WN/L=&0@T;5(1A[';,FPMW7" M3_0,.:8 TGI_M2:Y@[C1#I>/-V2Q]A#E>Z),KB1X9 M8T1P4!B*$)E&>B@]<,L$9-),=?!;S'A^#-QXU>H,I^KU$D(H[K+>423N7NNQR4%C[EX'WQT$_N^3 M/)ZGZ6><724JTMKHR>0VD2QP&PU)9/ LBI)C3?FT'':"?-L*CPWH)IR\#J\_ M"-ZO"7E"NTWC3[# _.P$8?+[IU71^$@)4WBJ7>L*XGI25TB<-)B80JR]J_S?3!=U#1.G)E[2<]H"L%CTU4!D'B!M?6 M8>[0GE^XZ$;4L!0P+Q=)=AT*SJ#PP*;17:$1Q M:;=7H\NJCU9.6G/\!MDXS._YR^3S>#:=5"&%D]JUYBM&O%O0/5A_\KH\'T]@ MDHCB-]/Y$IE?:BQM*?6_3,Y.<;9TR)!"O,ZPQOS\!#Z,#,]2:ZN8L+)VVZ;7 M,V(P3,F@O$E&@S$["5.O9#XVZ;L_F-X@K@=WQWJ2THS,\^?3V2W['-?F2Y:L M=;2. 4KBGS-DJBO0Q,3DK%'>JM"Z2G]7VAZ1Q/4*RPWR<[!7]A9.K!+WG=&H M%>GXSGNL_5$R\](%5ARHH%R!D&_+A&D<7Q^T;*9W*6G*_&,7S60&ZIA/%E!,S.1@I F0C;VM+M$FCHH]>R0W]X4)< M;ECP6*4O;8&RQHQF-O$9MES@QCE36H_0V5R\Q&P:7EX+G;*:)-'_^5WD3? M79ROFU=^5.]@ ^8VS'&IU+R"4WQ=+M&TJ2?<@:@N59YW(+^5D&&?RA8(3?MB M;\/[]W;BBC5$G@S,H"UT?W'!HO!DV7'$5$PR%FYK?G5/,=_RM X&>1>N-G]J MW[Q]NWY8%/U(^:#I39&I1CPTBT4$EI4UJ$2RKNSXU)Y_YG!/;4,.3P]G3^OI M/==<#$N6(.;3GV[TX;T<7I[0NW:W$H\$6SLLY#JT[.*_F M>!()9$BMNQ'@M.-OLC;N-.Z4]DELQ!3 M_FF9K%P'B;V>G'SI>/*^_IP51*0SGB-S^9,[G;DN5#8Z7.\^P@R?PKPV23G] M1,=ZU;!@-@/2D9>554^_7/S..G=W2=8Y;4\F>=DAGV[SGR\]S:UZR/=!XL%C M^Y9A0I@D7"X]_^W2X6@VB._F508_VGU*R?6Q?+>RMH<=]*2MZWP.$%LQ]2MN;1;GO+U7]C_CW_[_P%02P,$% @ MQ&X(5U D;F""+ L2P !0 !FCH$!"0 M$I4?* Q0=( HF'M]S_WN[9(#P0! #*P#_YOY[ M9#+12/0B#(]&HX^.CI!()!J)9!PQAR%X.SL[YA%#X9\@%3!8# 8)0T)@TZNK M53"[*CJ=E$KR)),)N9X$)*%O>)@0X$DGD1AT1E1(+HR,A#'(, :2,+Q*^!<) MF8:%$&##J[!A F&83!A&PD*0L&$R;!C9!T,R2'9T2X6J5!+=$D*VM".3[!9) M2+(EDDQ"!N Q 3 ,&89<325/=]#I_]9-K6+T]55UT EX.@Q/@N'I!!@=!OMG M=L#P'018!^S_$*("/&%X&-VSBIXZ3; DT;'3="RI,76Z$?L/$@&9VNA)HGM. MTV'_(#5Z3C?"_D%J["#U=?15-58M=J1&Y7HR+.VBD(1%NAV9WD&FVRW2D60Z M M!L,38+#4/I+=$0G99XGL(R'I,(4H/!V#)V'P]"@8'0.C1^$[,/B.*%@'YO\0 M5CVCZ##((KUCD4ZJ:NQ;M"/04QE1_T^<0<=6-:8R&K'_J(KZ?^)5=$\&'?:/ MJD9/1B/L'U6$$#*CCPZ!0!@=J4=TNSYZ1Q_=[HB.[*,CCSK^F?_*8G?4@>SK M0(98VA'(,$((#(.W8S(9&%AJ%!X6]:_B>-B_32_^2P3 ']$[CN@D+)F!)3?" MR P8N1$;PL"&-,)"&+"01@(90PC!$!@, B,@BCP-(P? & P8(X# :"0P%*+( ML*@0&)8\C26GPOX?3<6&3&-#4F'_OT*I!,8T@6%)^+_?$L:8AOW3&?^<$/KJ MZC36+HJ,@4 P42$84BYYD13%G*8SCYCTHR/&T>HPA !!P] 0S"+$#@V!H-&0 M?P.)_#JI8]^;'R?$0N6D05)I3W+*]=K;"/$?2 M.JA-[B6(D&M9:MGQ:($*;N6$5&HI+34A 3%*P@'.HHJ35\P7X@:K:'):CU[ M+M4[F]WNZA2<:;K*GBTW-5>_E+F'5]'T5'29[&[Q' 4=#UNEKC_:?%%8)^M& M[L9,&<%>7I.P[CW$=]>N7]OSOJP,\%@N)5>-WK)Y.]\=[AF1-Q'L79>1^>K ETGONX-BC(3'NAE1EQ0)]* MN%T4YO[K2&[]24'?+8[(P\VNLE//70TCF*Y59\M<_7BZX 9RLQ7#'DE:NJ_C M#/40:)+ 97;@W*ZW[G\/O(.771)0T?+E#]#9NN4)LM6)[XVM,.94#R[B=UB@ M1\>0S1VN\3"! *[9V@]I!G1?J8S'T!V1K#.\29YI9U5_2&6;?>G>, X=CRR'RQKYX&]/A7) 2WVZZZ4"V%%4 M:!/U$!9UOU>X]J$LE"!/U1,IEB^_E[RX34D'1_I67@W9Y+B>-WN^9*EHYUO'8-#C?HO%V OK?CYE87\U MB:HPBU[YJM1'O[8K,T>X&$\_33C=;%#M<*@A)5_=>Q0PL=*M7/O?Y]K 30V//N2ZW-UE^ MG6B?/V_/\VU^UKUT>^'2EN_'&F![@$%*,O66"FR&:RL!2@87"Q_Y;_WL?!,X M./5]Y3JSY*CVS@OF59UW47$B-39'^QP48(@NOY( .IF*&M$B%@_ M@IZ3F'+9%![C_=;<(]--/Y.W\PQ6K/KZPO;?\7Q:<.NFW6[*W&K-Y[;'Q4]V MN=97GWQY_C6Z:^]92:_\XQ*>JY%6ZI(?[6*EGPB5TIB6)_L:YUU?!@RL7,GX M,_@NP/!/?/M#S1",X[NX9\#13(?+&$>@1>5J;>.@CH7;"4E-E_NKO2:]'=B&ON*5 E/JX(YZ2>E MP650@*(P(!#Y JL%Q;$R MQ^$Y',Z +HI+W( S%R[ MS=MLQ#"_T=.\.,2YF'H%G!,.:#;.89OQ"ZP1)4I[VB'?(.RNE* 3(_D<1C<,'OG4W;=KZ3G-(BVJUZP MY'Y*#CL/"YXQE*WE9[0Y)I8]+(/=QZE?3&:?E:W4Z:LNF!<3>_'LO7I18PTZ MB%-@8FU;\TK=4+2;A^M?\'HK4)5@>'3X\O(M')/;;6$_A*/<]N6#Q:(B2(ML MJ*4OBT_Y3)'5" "[=_ZW2.RP>+4@L(L8@H>JQ4BYH4 GV?S 9E@[;K%UB.!R M+/Q6]7GA.?F &Y_6'FD&Q:A8N;&02;*4 MP)^L+>08&]./'/1^)[_2A:)>ORA2.\K6#LM(C[XHK*_B!Y;-M*->#DZ@]<,2 M4^<[%T_?S.=5V&0+S;0OZP3 MQH(DP.A)1[>+MW[J M%CQ[_+:"^%O)OIGRC5.^E0W#JWR%5:[GZ>B05TXR!O>)V#:8T.S)A?"E 7L8 M(L?\3K:0,H[UY!Z1C4D,%41ZB7(7F5C+G\\2%S3'L6RW$W=9TS3(I:]8.&< M[L 8J4=E9$RG\% M(VH_9\2-%[)Q[V- A>-@->(5;E7;(J$?UPX"/<8G1RI!)=MV;@_\79:LVIG* MA#F5-Q]G8UW>'E-'2ZU2A>TWV,1BJ@*"/<^)@*_:]S8GNU8G4D[-$)48>K&, MS5$6VA(L[3%?OF8RBHN[M^CJ_D6(%\[(D4,QU',) 7/2(:/2W+\2IY?29YL M;2U>U,18;97!ZC&.T+'[[K]<1)_?]]#L:T=R@2@]7DWSL9=7 5?]=<8 MUO0?VVYL5!!^;?(S4SJ*&:#Q'(-:&)3H4P-V'@<&[WWPVG64.(#)SW/T MMX5#X8B9;TYS%2].''L+T7Z01I;%>HT^?EAK>P7K:A42!A MKC!_Y_50.!TV:B1XZ>B&M Z(&JPH/^@7/7 6MJZPZ^9#[D=<\O'.ES89OA3) MTPJ\I8L!'$)])%.9%A#4W&C.)WR/W;-@/JY**H*Y)(?+=13>0H7>B4GA/W&A M"^:W?._.B*.V[.T)>PNX"<*=;J8&LB B!'MI\;LG[D=J1Y#NL#8*RW[=.+'- MK/!K%Y;W-Y5O E_BB7%@(9D#%R4XW1$G!=P;W?DT(P[R!<"-8Q3!#1;.)!/<6O8T31TGZ]*<2R=LK#R!*;>9\=0:BKN'XZ M,?)7*R"R92*T&1"SC.Q30%]SC(@&""8C^&0[SFO+AI,YG);D#KP-1B. >^.;J%\/ M,C8$HKWM%0+Z>2NW--YMH5201C81-LI;#SKR-":&M.]WGQ;Y03IQ!1L^=HK\ M_@30[E"1J M5SU0URMPP5I=%A^:TG2F$A[@&GX=5JRFQBH&)0+JOW_:@7K^/ M_MK!==LCU.O9+/+WY*>7HDZK(QZ#16VO>6\,"'J8HQ<[/4HO62AWA9\RL7VT MF1>XG2I2%%E\*R-(Q\()IKCLH#J]'V]B;)($2F=J@<)\GAP?G/69F8KE@0JX.,B?ID MA Z'C4SUB%X(?VC3$(Z'^3XZ4!>DYBW0^U[1SU%A=A\?(URDO)1GY9>NO5.D MD07H"QGNNH5?/$9ELWHJ^W@O\8?EM2<_$@X4?*!0K2$G@RSBG4 $040/9XKL MEH0N<=RYZ..U_+W(K39%3]#W]%<*[]"MW/9LO*SF2Y!*](+Z!B9JTD.=)\=2 MS^MT3@@YV,__E!2@ W-8T8@U;65Y$">ZV<+"O"T%,_?>6DZNQI,@.6=K)!5? MMK$MRA8*E=_BVQ,3I+"\J+;5,W5*L2UZT&W#-2-%HK(.TP&X@7OV=!?XK:M6WX1")CRR?J#.L*0WMZ":V*I_9=MX".<)+CWDR+O! M8-)MS"Y>Y!RH&3/UDEO!"58B>-S\0C'G":#8%#U#OI$R7/9E.9#L7R&-.;N0 MB%R=-K0T$E;Y Z01LT?EA(GK=XOE9'F+1V#8->1/QQ:>^2[X!8[FVN/KH["] M$D+L4MAV1FL3'4RN"<5M;G]-ES<*%A!QZCJ^2+E MHQDZ2!XN"-R9["!IM:3(W&$MR6PZ7<$FF@EXP^^O?D0B,DT59>LR6:LK"RPB MK@&O\'%AH"28K,[=#2E>?G\Y]Y.%G4F*]AZM9]7/R8KHJT/(:Y$O"LS_,U$[ MBZ6\&\V*P2M.1L 1;64I'CX_(L/S*J,IU'/71\R=F+CT_(E3N'!X2? =MVZ/ M7HTBL4& !R^HL%I-%J(WS$CUQ]S1;[=["+^0!L M[_*(^O5@;)-A"]"'N_2L&44=/Z6!#/RZXCEE:6,0;+Z)UKC#:GVJN/17?"FW MNWNU.N3'JRCQ6G4=X*H/&NN_C^=TXXO#P6A@' G 5>>#X' SU>#Z";17+CR] MYU#WM# "I %/$I7>,,^U'HY,EA4Z=!,'%*.CELYYCF2[KO#1ZV1Z')(%#?"7= C6]' MN"V4PU:T,*[.X6$Q\P!PX>*/F^&Z(M)QNE!PKJO 2R$DY+7\RQW%CSW*^0-& M *JE%>MQ3\8QJD/X>8)A:'"<:")>==\\UT=PZL1ESJ;.+R%M/)41 M^CDA G&WQ)/KC6REKOX0&L0"6,HYH;A4TUL@%1C??M" "G!1D?NBV.WB^6%; MI4G;OC5@.C&=-Y15G3S@N#(H]FU0,&A $'6C83W"_HG'69HI,P\N9%LIB*(\ M+%)8&X.]]"%>.+89Y=2;;[2EVXRWOEXAH M+3O$2Z-J(G4')%&.1A =&[&8?MRO[QIWEAZ\]S%JI7:6*QCAC!!7?LAY,8=X MORS6-"WH% I9_5GI"JC$&*F[>Z[WO,V]9W-"+KHKA^NG8U"BNG+*;8%(M),- MM=T10#\-,8[)RG1TWCP ]BE&I35RJ]B'&&HB3E+W6>;#U@/Q%(>N= <)H+(9 M_=4@>UE:P)BO>B+V%G]W:5Q <0B.Q<[\,4[L12B"'-/6'YJQPYZW+C9-CE<- MX.=[NX2((E@(TE2LK:3KLB_Q<^3IDK%LY2#2"C)N*SL.=]$TTO3O)9*F9*C- M7#U/"S)O'/'I+<%^MZ)M$#Z9*\.!*LGW'VN,;[QZZ"I947K]4YN@G3-.=PQO M_Q*B9>4Z?Z[]?7/E>P'O<0=/\HD#M9/6F@:":9VFD!"TV(:R=]%)F=?(6_Q4H0!V(]]_.2_2URV% #V4Z(CR ?6#6R2[VV7QJ3"WB MF,:[.EMDQ68%6P!4@D"7I&6J%J2LKV7)5GJ^$\!^SGJ@U>)3]4I!NG)Q)-M4 M4JB!8T$LV9WO.5:^/E9,5@0-RO0T]: %' N>K7+RB:4>'3I%38M-7?:8.MYX];9.>%('8OUVB-1?"*R5I%T/Y^_H>%^ S0-97KA; M57+I(?O:TPL;+RD#IDR_3R]AF-N%F:!SJ M1@?692U42C;G5)M>!,7=TMBVTE$&WO]K2D4[<-O@,8&R^LD@T&G&EWNE1O2W M@+523;T&TLCHJKPU)LE92RE*A*S8[1XKXY:KPPI5*GXGX(<6)9Z[H&0\&73: M8\YJ14*6;V93[N%[HQ'^X5_8-Q*\0J:WWA+,5)^4GG\M]UR1!/+JRZ'6@ME?KE4ZQ(,OU!>0_=IGTLN;8IZ(@4;F@7# K$G M(]0>AZ@=Q#BH^_C?\Y,]GL]@$8+HBBB3U2 C@&7JH8C)[<(X?4W6[^95?ITZTI@&Y*T6D/J'V\G9V%E-RP@AM[.OF>R,)3! M8YTILO9+JMXAMJM'6FGJS)FL8YF_QR&U_6XUBZ]^]I^P])D:AH7ZM\2X'PK< MO[J$8[F_S-0V^?<=HLI80&'9@$!#37U!\'5(-*FGVR&]/Y1BC M5@E&6^O?J.=T/+( (#]\G-JD<:H3< MGTEM"3XOP:VTN9(:T'^$R[(W':>4968EV2(94Q\J!5BRW[!8'AX[6OV(=_PO M[8ZK-Z9?^M?YY@W=_^K5#;O+79/ PF/1HIB^H1LRC^!6TC%P<1[FETB]CR=. MPI67!&@+N\^$/[F"V=KGG)SK(SYM082@/S4,0$&V^Z=3X\H U(+"3DVEW3YA_^M>TW0LYJ:=V041QC_IJ]FV&8Y9_ MP_>_+7 !)(JO801J/BJ,OF8>9 311\$!VY?" !#'R8W311$'V-B%>!V:]]8' MXWE9]IP<;-%F"3#,S*LUI1@3$A)-\-+=!HQX6*&**/.;E,)9!,/.;5>!(J5+Z;F)(/ZK@ M$*"%.L)I..#::XFJL0L[@VPF'*<+N9;679ZS;\E*)\%8^BF^ M'9U7Z^&MC@"858A+&O75X 59PV<:$*J.C3QUM37-662;QL(9"Y]/=6SS?C&, M]#O&R@OK#97U>8-=O MV^Z%YNU?;)/8X6NO!(HP*RP-4Q(S_3#,? 5;>^X-*.T:L7>!O]@P4"&'E^MF M3-P7=3<,0)BC-3"$P#/EH!_&?+4=*Q_2.F+$O%)1E;=BS1NRQ2(IH*%V8XPI M2<(-2F1N4]Y?H $"OB^$)PA28WUMMYPMNB8\*E3&4"P]U.%9Y;NI97/R;_:K MOK?;N7&\\=>XT3D9^Y1:]GWY8WK'6*\^L?3<@R=VYE/J :-:<^TB_DV@D[=J MT=D-;Q2>(@S57]37G+=2J&U0M@HP^K/G_TBA$O8SJ9&>+H\B"K!5IN,0/"I^ MH*>6FJC*O(N"4,6:C=TVXRX/Q7J#!NE;X0-;$2GWK:\:8D0];IYM08 M<'=>2-$N;7>^:G )%9+4A8-R'N@J>7(-=7*'!DQ=_&93OS_2QDOC[_3.R9MJ M?:OIVRBQA3)NU(LLGTPM5,_1?]4J3IQ@@/^RLMCTD@1\T65,Z,&F3EDT\]N5 M_^"R,VC#JXH=]MCHN7-*AJ)70OS )+FA\USLIUA19765!Z%S^*FOX::"4@-G M.2:$EF%/=R0E+26C$;5!E-G4> NM@ADPY7GR#7S+$/X2:V\ET. _;6JY[A6! MYNZK=UU3M::)0Z^N9C^N< MA)CB*"=05+%@T[O7O7]2N3*=_07ENIN=Y,M^/S#X[M"H_9F7R"I@F0SJ&1!= MJ^DHW.AU_O,,J_!X##IPP0:2KK:W#7SFB:"R0PS\8_M/OLIY_ORS^(OEW_-/ MBI8+\9/IT]2.;LJ1423'F?#U!(Z_1\Q5'<=Z&97L8DUE$=-[UXVYQ -^CBH4 M545VS[!>K9-Q]?WY3#/W97;1W5F(B/2O%V<&78C$LWL1H< C!XY=&W!&AVZ-V@4L^S&T.]Q;@Z+K"\:.)[JACHB' M)*^P5/<$7K69S+I"N?/L:GS07X)4YGS I=1/P[BG2]EQ?7O6+,TO_<@;(NQZ M* @_@\Z)?TH)3E[&T;-;;< 4>N2A[K&C6QWYM'E^<<^I^]IV/$.![SVR& MC\>TU\J&;"[3H9*(05X6D!FL:H=D^5"*[; M@6T.T)<-*I-4J,Z.A($3F4'Q1:XLXV\)=B(JIV_(\5XL!I_MJ)/E_Z3ULR)- MN._;>(A[?+1/T<,?S\X:NH8S]':>..DNR $1E2$J-U_E\MT#/8]<3M-X-[$J M,\0NGOF'.RBA0=PJ- [>CA*T4'U-X]\T1JD0&00Q\+SEH69OV=M-L'";M#LJ M3#4R5S-"^%B0>@^7E$_=P@?@?_ 9/]#C M9QFJ,(5+OO4,JY!HMUJ[:6$,82EN92O[,G;1T#M)X3X;G%K*"P:#:&^5A_+/ M+V*BM8O?!0S!A<*&!E7Q<=ZFR_T4N8XF[/V6 NE+2DUS$%9G M\999A^#]?/*;L"KJC'4R+S8[-\%W3Y9-Z -'SQOR,)6U4R!K@J6X-Y_'BC(D M6T9[=I[L(53CC7K_D3?.,@2XNK?; 14%(G&<1!'Z%Q_QM[;ZCD\?0[<#QEBE MQMB*ROM9I!ZT+L0YV! &TE5\^R>>OAI -2M;VIY!.L>MV;M)Z]=L\329]OY0 M2&_5TIIB15PO[@%UPKB$VGY>FWY"KB"?4$O\]*W%%\2EO:KI P_E(:KF77+D399Y%%21/8PDT M+0.Y4=(%9*%>"N]AXH4A4YUM4MNW[@J3Q&HK^-;.LE3O<*F(58;R0?-3,F3Z M/#H&$AVO"AHR")PSL5]?Z\DDEI7A)%-VG5+Y'?7([H M'PVK7=;OZRX8K-35/"J-1K,R$$/,[-#-6 M9#=2<2Y0I/W)H1 Q<=;+H^QLSI$\Y\#5KUGGUGY>WI#^R8[$1:TL,)^%=?K@ M))S#"^+7'*O:/Y^"Q:Z9K.H%0_N.#!@QW=GEC=+3N"%;V,A')Z^39T\.VIFU MB,42JO,V!'+CJJ0.OB@)N[OQA7.;]54[%'F=OM6\&;2PM I=:?B]W*$ MOJ< U2;#$RG;9*]T).1(M^13&9,(XK.%Z>]E:69HF;P5KO!JT0SJW:_=#N52 M3'.W4K?BUG:**9X._7Z_4CELGX^<\C6I ME,0'P;'^I/#$EN"=.BTP444M^:$[]8F#%%,>G%$)T6O0:,#V2O$>]NT%);+B M9-](-D@*9$ +6U)VTGX7 O0G+5!E0 0*I:G78HOX7V6*(%L[JM2E[F@(O@': MO[=E*[@_E#9FHL6-QVMC(@,47U/ZQFT(1 MV[%5C$6HEE+5DE#4PS6AVF*QI'Y>ZX$J&$B=I[GN$Z60VL-)*6^TYU>U%VS0 M1>*1A&S^">B2[>D!K'3G#-$%U4^3A-H,)DLAQ)WX,\IMH %.,,OY6!?Y+([P MW&5\(BM%3Z&UP( ,8>OOGC^H\L,V?%$4]/[19DC0)+:)O$[4N=-2V^DQ\(?Z M9#=8MP50I4.\".ED=R%W'@Y"UOP2P]1 *0*M"41+JQR',_(A3% MT^T.Y2$"XKKB/Y:U8)X)$8/&IJ$XR$Z\2G>%<( (#Z7UHQ)M4#>653,%GLG[ M4*KAW>L>J7 95N.^>%RM]5ZSG7YI"6+T]7NQ_&[B\5J"KF./I0*2H0>H5;0O M*[;AQC/TY\#<:LDNNN")5JE/ZP/K>^4/ C2 BO&IYN+)\ )*^"DYY1S9W?'C MV %&Y,"*C=F4[Z,R_YP74522FK)T2Y&K)%FB7Y<"C,<2DJ&B6>SF1"'10J%S M0+1Y)UBW"G@DJ"22>'S,R5&L_75F0DJCQ2[97$]3,D$MF1F_3%H#J_ D51."%'L_T64&%.:6D!((^'AJN)GPNK+*UP=;?_]:(=Y<>YC%$UXO\I1? ME_AI/#Q@P"MB:G*-51[*":P4I<&T=?6DY(EC&TU)F M]EOVY(%WYUK1!^W-F<:[RK!=S:Q?#>GLOHKQDM-E3LDLHGCZ(_-U3GAT9@I[ MK38WC1BS-GSX8J!MG[O9,IWIH?P$5XM_I_;<>]+T[X]3LMR6N%^G6MNRC_65 M5[D&NFW^/6@-U4G=NW.&N/W3ST)I!T%"B;Y"Z*O]CYN;=]T27"J26/=F(S2A M%;JF#W2K+B,-RA"R 9H\EO/ N1U<%:7\$VQ&#P.$&*>R;Q?_._Q+'Q&]E#R6 M(D[">M(5]*LJ3>)O>RT+*7$_+F*H4U?F,FNT0Q((,:5"2YAS)EK;$(.PLU.^ M4U[.>,-6GJNYUO;HD=M0W>6+<%ZMD?H8?)=_@GCAT_ BX7>OS[.UP=-3N/U> MZZX8R7+CQ*6*!1_)X^K>-36KEL>BJ2?0WOFH-JDLW MP$2(EN0%+8@ZC5FBRT^@JQVL$Z7"N1E[\3RP@20$W]\9Y"XYI\2!",J[0$4N M/92O 7\RJ0DODZ#JQ2Y;QLH3Y;B B5MU)X/QRZ$5NA]GVORLI\;&8[H'3BD^ M;>\7/='XY/LO"US 0%@WJ>.XTCR LY22:YG2>^/6=*'Y(][UY\_V>U*6!1O. M=3Y,ZL06)==3H)D"M,3P(35[DV2+PB4+[@3=P0<*^2K'9HI7\Q[H=I)0N:BG MP($'- JUE!^? V]]]'GW;!*LLZ3VM8$=L"-R(<<&YN]882P#,8HGJD"(]3,Q M^;^X%5B?AL4\;[G>WE9JT=:1=N>'RE,"O.7>&V&9-\SKCB,KW-EA:@_H-'[_ M.23W7&*I LIO@T<>?R*G/DLV.,5O#E3:# %ZJ*=S%6A%+]C"6V_GJ%;J)O>N M0< 7LX: SM3*E&9=,">6$N9_6<_J@J.IR/WPW?9ZG$(DN.C MA)Y/IH8>RWM1LRV?5YLY6?&)(YD -&;;(,(J"TCDF'Q4.>N1O6EGK!#5Q-][ MNNR=U17;X3HWY%=<*:CV;;$^$#5SV2$F1<<4'2L]0*2G,*::06(2NAD M^C"D*5=K()P-.,QS/#ZI3-\ORAI!5>$W>A=&=]VZJAQ$3V9? 6 M37X!5B*E*YY9DOY>LCH-P(B^@G#>4_2+D"^H?<\^ 44J=V1$)&I)F/(IPL/4 M9.K,7V+A?04ECD(NH_&ZX#!8A=8MTX^1G"+]F2<#>8MIK_/W7 %=L$\%!^>[ M9X98LS_[Y9>U6(,N^XG>H5E#YE8N[&EF++I0>?2-?BMXO:K?C([G.@",9VQK&#T<[+_6%DQ MD*RR(ER)&;Q4J7PG[(,FVZI2YS,#<,&:!Y1K@^:8T^F1 M$7!*3.G8H\ W,/W0T3IV8?.ZPL37.,-^*9)H+3[0R-&K_/W#2Q=VY8$%D&2U MHW*:QML1W_5\$]FP9: "D7'S;C+?SN5\!*DNF4:L(^E+ MP9S>&OP5.1_%T&I?U =>S\:PPKR"6,5RW8J2=L6*152VG6 JX77E7R]#]IVY MSO?UTH 4"]7;7^/K/4Z]]09BV:)L8.@/BW<0Y,I/HXK9^TNC-N,N(3/J; MURB2$>TAVX^NKRE.AB_PG]F>ALWH1V0F<"^#HMPR]%I/QGV2@);QQ2/:\A4X M^_7@#SL)]9<&\P/E3+.H*:F3QFC)Y.OH,BV^O+>Q7+BBN>:$@W<.AM"F:-[= MMC*W)C/^OLN0QM.QLX9^??DVNN@]FEGZ\ZY:GUP"O0F2N"DS \C M<8+C0B'"#.J=U(]:]MGXGE+$P.EN:: MWN?1-Y:"/FZ#9@1A*]I6"Q/6^S(A#X.X"S2X'N]QC^YQ>G"K8&I^NW$4(81U MTA^%"7[Z'229_L9,:CVKV(AY(LDEH].- ^*F((Y01RT)BR_'&A&)1IH*)VJZ MVF,U]>?VAZYQ*+T1OJ_0&@,Z4#IUD'&0\U)SH-QHP?)G'4D?=4](1IQR"[55 M8(U@/0?/QPX\Y A[% @2WIYHFIR/58$=1*,1XLVMKP>*IIYD(O1W;T3NMQ]O MOIS<;W^D+*=X:';G$%Y7X#2--8X< B<:^/7Q:VL5]62KAZ.J8\/PL+ES2_PDU* MIV;ZTEFSZ1=BO[:CKJX&;45K#TU)Z!A143KY&AK&E+1?51(>2>>3B]T>AYZ_ M0/:M>4,QU!G"40]KL4>?['58P=_?W CUK-,;[+D^;R[[IB[TQWF4W[J Y_H' MW(_W.&3>D4IH_3V?$&:8ZA?=T/O[2\"33[_JW:GYH1EW8H_NR"N%RDB&SZD? MIS'#DCG"HTZ)O5LSQ$2N/1>)^*M_(NO*\<6%XWNC"+-B..XUK. ^8AB/JBT1 MV\N"6M[GA7P0&+4/O?NX['Y71),%"E+A[_9\'2LX2(-.F#]]LMQ[OE M1X.?CUHIE-2CJN31,V>O1*2+1]Y?2DZU/K,"W>IT$!!U%QF(^2'K>"F7@T@$ M /W_ 5!+ P04 " #$;@A7M*!01C_F "]E D %0 &9S='(M,C R,S V M,S!?;&%B+GAM;-R]>W/_ !]5+%45";! BCT[>]JV1 *__(%()!*)S'_^ MGS\>U^ ;SXLD2__E+_9?K;\ GM*,)>G]O_SEM[L/,/S+__S7__)?_OG_@?#_ MO+W]!-YE=//(TQ)?)_4,)',MQV\?:W^9_PZ'K>-CRH/ M%LFQ!T6S]L__Y]=/7^@#?\0P28L2IU1V4"1_*ZH??LHH+BO6!W&!DT_(?\'V M,2A_!&T'NO9??Q3L+__Z7P"HZ'V]VG>=[K4J4D41I^Q+E M/YWJ[.S*8Q]G'XV!O=.: @^/>!.-V=#KC^H]RF;Z]O= M=G4V].D1F_HLLA*O9_@L=MUT(*_E#SZ)OS7=R(9ZE&G53Z.Z.U#YCY*GC-?: MGX:UZ_+(/A:0_[_3E*9 MT3UP:VE"9/E+>C*J3\]NCA9"LHJ;&!>D$JYI[&=IO_W,UV71_@3*GU035;V_ MGP^^C"YL MZ",B'GS^8F7^*,SL1_XI*XK+LLP3LBDQ6?.[[+,0+4M+(:9X__YC*N8V+\J5 M%S@TX,R')$(^1#1RA"4L;&4[L'W7BS!W+%]'_V@C6)H^$@* M< .< <\*#.0 M[L$'28-?3S_I#Y":OIJ4]HGUEV2\!@_>2/@_@^(3U]R"E;W>#G?Q3"A)9. [E)?I<45$SL3?14O-)*%L M-S=4VY]E)F@*VW[WNJ^-6_4O*B& M'H/(C5R(48CD8F_9Q":.R[#.ZGZRIZ6MXM?E \\!KN&"]0ZOWG)]FEFU9=D( M7Q/KC 8CZ("\ U,;FZ%!=W(CL/ C9#K1RJ:X$6[2YOW%33P]5WVB)/T]"+7 M2U7_U#Z#@,G] &)+690)Q6OP*\=RA:F.5 ;94)[,)V3OF[KBEMS#+!?XZOLHY2\H/F,J)_?PK_I$\;A[?9GF>?1>6[A46 MPRE^O@ISV@YC2'EI3HQJ8YR2$QOZ7*PV_!VO__R87C_Q7"Q%50])B=>7 MI"AS3,L5Y9[MQA&&OHV$BF.%D G.YM6/ZFI]@T1D--K4W#\<1*K04-WK2P?Y)<;Y&#!CKXVH(W M>#BBSY@AE:;1\:P*39^0E^IL1 OZ#L/?4I:OG^^_<+K)I;K\H[S)$\JO'M+[ M&S%=%/32<"M+TT,"+1=PY91H$8N%/_^#EZ""#6I%I::#%$@<=KB:XV]B':-( MW87TQE(COA1U>D8Y6P>:GLW/JB9BU\6J^,8X^^;+ \[Y6Z%TV%7V^,33HCJX MOINQ&?#N?Q==4[\57KL,#UX]L M:-,HABBP?8BM(((1CQW7=>R88TLK[&,"D$O35152(*%J.G@F'4DU*^JUQV=J M'[+&T.@'FTS(G:GXE"D@SAO2,B')!U$P4_:E;_=5C?XB.B_?X9)_P$G^#[S> M*&U$>UY?FO:4P$"%3&PTI<.G@@PD9G7K[A15PV:= 99FT6$[5L".,3.FVP % MHVRV4VW.9JP-"-6UTH8>'6>>W?)O/-WP6RZU@##&.R?MUV2=W%>ZY?V/)TYE MQ&_R*!ZYCK_(DY)8;!?%[^HH:WME>3AVJ,VA3UU;F&0HAB'E'%JA)XRUT V# MB.F89*: +4V1-')=@+R5##QUXDVRK6P7@#?2@;(23VJ=HB/@A7Q1B*AGQ1D; M<#7+[36&<6)-MQW!K5![$4/7G1%L!0-WVQ'\LC>"-_TCJ&WLF:;;D(%G#-:L M1IUI,E\:/\DFBL]9^HT7 M\LK3I@H-""V/HH"X$ >A Y'G1) @[$.+1(R&<<2C@*V>7EPY.W]S: J_C@YZ M*<6$L5J;4EYCE'=#+\!;?I^DE4HB>%VIHS=)"@HIOO9=D-D^BP ''F8.AX$3 M88AB@B'&C@.Q[;J6$W$D?MU\%NUMKC_S1W'\\MMDG\3[ZL\_T_=@R"?T&B,\ ML>E1"00KB4!7:M 1&Y!GT'VN$1U4LHO/H9(>=,0'=;1G*0@ #0,78,N!^&O% MPHP.*=,#-Y>7RACN9;FN3 ^'MC_+.(!Q=M([3LI=]/D=_U&^%3S^L7)#9(6Q M@Z#8Y(80"5,&1I$=0H=YC-@.#@-/*39TH)^E;60_9>D]O./Y(Y" J[B+6[ZN MLD_\BDN)0&]].46OVFI@@+2)=7?%4O+FH5=,N[X:R%^'N M$^3(4.+$G'NZIZ^Y?<[#8A]Q)"N\I*=!8J%_5E?R2KG00K\GY;[/U^D.6RYW8"A'?L9#M0)_Y!"(>,XA9R&! F&L'@1O8<:BB2;1Z79I& M:7$#"1RTR+!!@U[1QM$;AWY],QF[$^N=!1#+F@R+E6]B?H+WNG\] MHL]7[Z,8JM6\?+72W9;O6I7^UFML%CT^2KY6GX][>:PW*^:Y6"[JA")W^$?G M[O1G7JYLRXK#*+:@RXBP#1V;0AS'#G1":G-D1TYDQ7I>K=[^EJ;+6[B@Q#^Z M]XG F\]9R4&D>7@RQ+:JD\L8AY,[NQKZFLQ$ NM^A@0!UZ332XD78\ZO_MYF M=H(IB7[H#%-[33\<]-?T*9%NMKODD3.AJJ1/_Q]X_6&-[U5#0GN:6)J:^/7S MS<>N4[>"#.(LWS^>ZP^#U.*P7U,8I&]B#:'#'/@JP1M*NJ1 SZA8TKYV9XLG M51"N&U.J\O@X\Z(3RU0=WA6-0X3AV'.X[\(P#"R(D# P0I\%, @"S_5([%H< MZ9@5)_I9FI[HP&R.Y>NTH_+4K,(-?DN34O/$[!3':L:$ >8F5A'=J,H:X@1^ MI@$:#-D,IWJ9U588$/6EC3#T^,@#,WXO-[*W_"G+Y05DW>.9$Z\OZ+-M(((M MQFE.8 :(,'7H<]9!H0].%H9>GYTIL!LDY;%#7Z663?;9'91A&QL!PS& MU5;99;9T?OHP<)W(#4,6\"C03!-XI)NE+6DM2O!4P]1.#7B,2C4E<#Y!$ZN M+3<-PFDR O9P8"X=X+%.YLX%V"/HD42 ?4_K[V=O>=&>T\I[5Y<_DD)U'WOD MU:5-X@Y$\(Z+'A^3M-YX2<2*R7-.T32\53V3H!K&=$I/_/Q&7^U1D!ML9^*UXF5QZD<6A73 M._!=K_BD.;0&.9LNB];IKE\[C]8@*0J9M(;;T#RDOA0,[K.IFMKF'F3)Z&%0/Q_C3._C3*M&> ]S\Y(EZPOF=U'=]D MI1BT!*_7S\+*?\J$\A";\1N.;GR^<,=SY=\+?SR[L1'+UJ=.NG?I0,Z9^&H_<%S**E/9=YX? M)'VO+QBO(B=B=AS:T+,B!Z*(N##DL0,YC3'!EN<2WU->ML:B6-JR]6FO^L2% M+"-5RP+B6I@+L);BC*Y"<=Z8*2Q9Q>NT8W/MW"=*__>PG5V8R/C^),"WXM% ML,X6=ATW2<5V?L+ L4/;#GWH8H0@\L( AB@(84P)CS!UB*>V1JEVN+3E:!^O MG'<-8LT(_B&>U4XS3+(W\1)RDCC#+EA=:DR%\0]U-V\8NA*0I_4 !-];WS JHR7GS.REO^[YLDY[><9M]X_KQ+_30BSJJ_ MQ:5ICVZ$$1/009J5(*_!@Q;]N""L 6H5CHHF877JXZ-NR)8D5, &MR\(-9QZ M:QQ99X=U#73S*M%>:J*?"@)3?'NBV+#+JG[@"D>1@ZDP8SQ"+(APC"&AH0TM MVV-BAXN=T'=6J;2WN&(J6L6>E6915,^B;O]31X6ENUBENL2BX8BPAG_) M>GTG ]A7GL#Q?I9F&;4PJU([ M#5"Q;DNHNLD!3Q"KIG ,T#6Q@AG%E/YULWX>3-TV.]'+O)?-^D4]N&LV\/A( MQ\N1"M0[7R,-G"AFD0,=FT40(9= @EP* Y\AWW$\1(-P):PGDIU3[GZ44[+; MZUQ'*-L\=.=7L=?UYQKC;=;SP$[BODE '88#R!V0Q<2'[O<"1"S ZV[J@<]+,V0: " MB5!//1R2IZ82SJ)D8C7096."9 HG13!HYT6=INE8 M@GP>8H?%40 1#BA$D9C-V"81Q*%#8\3\&%.M3&U]G2UM=N_2BXVXJ7::4F5G MA!&BIO= M"G8)B\_H$*).5?#Z:[F]B\,"GW$J3#\CBE/9V]*R57$HQB%"$$W M\H42L2T$0P]YT/$C%"#'L3#6"A#1[']I*F6;NC ?$R:B2_Y8MZD;/<:EFD8Z MDZ')CX'UR!E1G>"D^,9J$ASV,',E@I,B'M8?./VHWB0O\G+U+LDY%?0WFVZ7 MA"SPL-C/\%!FC/09C' 40U],>>Y$%+N>4F'QPZ:7-J5;=&IS^ A5_5/W/ (F MGK$M,(-.B=/R]DU1\59G>HI_[:;FD09GF9&G!6DG8L\3(ZY#??F.GYPV7ZN' M@\#Q'!C+^3/?Y^:[ '$&Y=ZOEV._U ME_1?\;]E>;L1**KDGQ:HN^;W/#4V[&"; MOJI)G;G-SQQ%D25OENLJ;%O67\?KM?QK4YQ=7AQ9V39'&(4!1)[8/2";.C#R @J)L'LL M;'''(TK;=LU^EZ8[&FC@B>=)IICA2Y=JA>W'- 1.KD]:T&"'&G1@@Y9="7P: M;K4R%$S!\6PY"8QPK9M_0)>Q@8P#RLW-F6- 5\87606T7Q\9?RY+?%2E:;KU MESHI^-X^[QYINKV4=0CK>M424UY]J$45'7_W@-,ZOT'Q.4N_\:+D['>>W#^( M/R^_\1S?\U]$TU7FYP\XR:LZ3[>=@IOA%>D'K<25V4[YJKTA; M-U$G>0;=Y]I5HV+H M0<@0Y)S4VH4M#4)+>1U2%;IBZ VH>]X+$SX$[NXI<(<61-0)O'FK/@@AN-=(KM/9'*DZ_CMIDA27A1<7K^U M"?%Y"$GDB+VC@V.(8VQ#2EP64&YQIN=E4NAS:4MQ"QG(SQ:0!B=@2?&4%4DU M>IIU A5X5UL;#;,Y\7JU3V0'K[P(LT-LL):@.CVFZ@HJ]#AOC4%U"@[J#6J\ M.DX!O<=YFJ3WQ0W/*[7Y+EEOA.I;!30,J6TCR"F*(;*(!4D0V-"UPMACKBL4 M4J2C=$[TLS1%T\ "O($KG515'B-ATA554=(WFX)5/ZW^J5GS_!3;:JK& (<3 MJY<6(1 0:YOW C0HS:F4 1H,J9%3OO+:T67[S_AI4^%[LV?K3; V2TS^+S^1E:L-@%"5:"8%."#\JZ\_+ MMF9+[7-"B&[^GE./C%N@VQOT7:^-'?J!9WD1C"TOA"BVQ>),70S=.+8<3_S2 M"K0<@4?Z6-J4;2'JK;?'R%-;:\^D9.+9NDMJ(?&!!J!!/T^/^(;6UV,]S+JV M]HCXW3WWSYE17&%BXON\(\5]1!%?LR@BRP.$64QC)R05O]T41#P((K;Y%QW MZBK!&$"E6;.?P^MNC@ 6(0.(A1#@04I1@'R+7YC_9;;= 5R E)=R=USB'X#_ MD$MCM5G^K];%]G^R'-M_]?V+JA -IZ5@:ZV9>,/-JP]!]H0"S;WM-U*$ MGRY -7I2-E )=P&D>-O?OI11S%,II;SU;6ZA-,Z\H>75'*Y9%V7C=+Y/*:MSKRGNK(^]NS1;O2U7VCF4$<+/F6L U6-.-/ MDC6\TSZ7IXF5FP)%YA+6#?$Q:@=^M,'9MN%]XG3WXKW/C4P@U9X"?DR?-F7Q MB0MCSVVN_7 <6=1!,?3LR(6(.,+L"BP?^C)]KF^'U V49KI"7TN;]!4VX&KF MD^KA4LWR,<30Q--]%Y5Q 6J@%Z A;(J44\.]"+K;L,B]5##%U+4CCT&(^)YPY M6JGF3O:T-.W0 @6%1%J?G14 EP"FA7EQ?:,K?KUFZ0Y;2LTS]=.,Z^F38SP M.;GIT%!9@;P -&=,CI?F;5((/BOM0?PR^D2Q7Z7IEFZ MN9X%<- @!Q7TL6FQ^YE7TR43\#FQ9NFELMF.@$ERY&ER93RU=G^OKY1J6XF* MTZFWU5[7TU&,)^V6ZLOS(\G6JY#&CD,M"WI,IMN4^6@B#[O094'LHLBF$5-* M,W70\M+T3+MCK]&I*99#NOI5QUDDS.2Q&)!?>>J?E+7'&R'>J>>U^,MN.A^V M-,N$/2E .R5//Z#O,ORR#O@-3IA&7,Y ,TN;F'+FN MEC-AV_325(!$IND6V-&DN/,?)?S4FWN9R,W\_#V4U=3F?-?PO/OO X$.MMB' M3XQ31",*:VF(*!9, M9FP.TX67^^%/YY"B:*B,Y6-JVT29"GUSY)C(IBR0O;;G-3J.B75@9QQ]R%32 MO%6,2>CSR(-B?,6N(\0<1CX2FH[A. K=D!+'UM%OAUTL3Y$0TVI MA)B&3%X0%E8,#R"*J 6QAP/HL- E/@E#1D*=-;FOLZ4MT3NLNV(NXXI0]%*L M-OE-$3>Q&AC%F;8Z4"'#D&+H[6I6%:$B]$MEH?3.B"R9-Y^OWN+TC\^75T(1 M_0=/B_I?O_/UNOB \_NL^G?EB<;KRZ+(:%+]0_[X.KY\%+ H_GQYF;*WOU[_ M'>=Y4IQXH]FI8QXSSWC\J&("5%0T/VU$ QW9ZM]D,6@(J5\5I #!"JAI.?VV1B[+ MV3^V?HV\^$]H8A6_A*]G3#V'V3\CC<2J2_Z<9DK/NH3/RE#2U]<:S=[4L;.# MFB\![6OQO9?&]M5 G'GM95>=M=#,V-_7Q(+6JTX*S0[02=)IJC!B^JK&L:Y> MYZY&C] G+VOTO:,?5G7U(&_?L1O.\U_R;//T(=U%^2J&5/4TL30SOH$*)%90 M@;T '[*L3+-2,8WQ$&?]>L @71.K@#ZF#)<)5R1E5'147[NS148I"->-BE)Y M?,1$S[[P-:+^R@8-W^/MCC?S.T3:&_.]CXX.C/R$\_+YQLQC*4P&/+2E$XK\05X MDC+7F9!X*S: ,G>2=F+FJ8==;;.RK,&;W3AN):[^U<@,*J%!)37, M8BCD!I7@;7:=CNR@*WS52%=\HSFF9QHJ>UA. M))8K_)3(@!.)Y9JLF_I%Q8I&W+-1[$./(0H1]0-(_#I_B(6(Q=S(MW2"8OJ[ M6V2 C.[)>"^?JF?CIEB:_'2[C^^_@,O/[\"7N^NK__?OUY_>O;_]\M_^*73L MX'^ ]__[MX]W_W=TR%W_0*CIFRGHG5CS="!OC<'R>>K2M4KLF(_@Z^_VM>+Z ME,CHB?93>W_D:5"2)B7_E'SC[&-:B@\G(>O:M"H^)2G_6/)':=QXOH5=#AWL M,!D+B&"(? )I@"W+#GGH4:48')U.EZ:A:LRP @UVJ.L]DV8@L!+IBD=QAJF< M^DBNET7P56(&%6B3AW,:')DZI%/I851*KA;_B0^M =9 M\.W=)D_2^YNJLG1U7KBBF.+(CQSH$>Y#Q*@'B1M98H?%F!4&U'7=<$1^],&. ME6;/_'G/;QK ,N2E6]>H '&6@[+)::5Y07)P$-24DAE.9[I.626JZX %-5I0 MP[T8* ZK?\]2E1M3UR\'^YOW5J:J^ >7-95?'._?V=64O.6,/U;5).L>+G\D MQ%YV+=BSX,>CAVA>H@'P]#V(*;"\$&8VAQKY:/^\WB&NDA;3Q"O$/]M MA'%SCO/G3^'NJ8%=@,L7E_%O<'5W=9)2XG,Y>I;BVM%WYDSFOFDO=_V>E ]7 MFZ+,'GG>>HZ>5[;C62%'(:1";8@MD^5"PAT,+=LCELW\T*;!ZJE27U]*G)=J MNJ.W3YVI\++GZ6;%6[RNSKQQ(;=+[SBM JF!:U\ \94Y>HJDGW-JV;%M$YF MQQ:<.XX-B1_'D'$K#G'EU?<:SM^GBG6;##/>]CL7W_]KDW+@6A77FG4%^KE6 MT]O&V)M8=6^OS7X70$&+] )LL9I3V4J4&-+:_7W-JKB5Q'ZIN]5>.C=%^,N* MOV]QD=#+E#65?U\DKG8)L@/B>C"@G@N1%5D0(P=!WPDM*F.H4;*B6M='14C0OIQ^#J5UINO3/E(I\%)_&4Y/KH7BE5.6C MJ#J=NGQ<<^=F,]EJ9V%:EE6:Q>NXCB%+\/HF*Q*Y:W__HY1EXP2 ]ZG8T.?- M75VQEW9<3&!$96ZC*, P%%MK*';?H>_9&(4A&Y?U9#RHI6G93J:/K5 78"N6 MG/U;P4 K&?BZDPUTA!N=3^6,059U)J4, M,>>3>#J3C(&V1YK)S=K!63?3>:?DXMOGW2,W^+F*&Y;%O:O__(,7Y?:HR%Y1 M'D<8X0"ZD254O"^LZ! A#V*+,PN[ 8E=O/K&EHC"[(Z11'@P_4 MO@--B]GDP"F:T:\T&%/;UA(SK$"_2/>_DTR6'>T^UT@'*LDNZC] .YPW_<.I M;VY/P+LI&]PDM'D-\PE(/;#6I^AC1&:Q7C]+5>WYDOV;^'F5-GWEX!A3*T P MI(Q"%#@(8FY%T'=\Y* HBN(HT(@&TD>PT+"@NM@ZWN&\D.F9UYNJY _9%$G* MBP(PL9J+<2LWN>*-XA$CU*^N)R)\9D_M[R<\M1>@'H<._,EXUD@V-1G?,V6* M,LJ[7F:G4=3UIF72:W&^G$JC)-U+B#2N!?U<$.]_<+JI4EP*[7J?Y<]5H)!B M+HBC+R_-U;(%"5J4BD$/I^GI5\M&F)DZQ.& %&-14H/BC\K^<+S%V;(_] K4 MS?[0_^"XK?O[..:TO([?_Z!5/IA;T?1U>H6+!_D_&0OQ#:^E'K@5!DF>R-03 M\A>7*=O_0>?)CZT]\RXIGK("KZOT,I57N1!T"'-TP]GU4^-Z$*9B$/* (>Y%[@VH%+78MC'9_NZXNT.#55,2)=B+SA! BD'-1_+X#8IE(A M<'7T4_V%[T37*;HC7![HDC;W]/EHZ@.1#?A=2QHOJOZ CJ@R%;5EH M'I'?SHL?[K^QI0>T_-0)OYH#QQU%8,>1.??'=V!(A4W&'6H%;DALC^G%2L\*?VEK>T?G5E&L%^ =CWF>M_\&OZ5)65\M MO^%YG.6/5>1?Q4C]NYF.#,9]+!,?*DS^"2S_V*%).-#AH''2E((%T-!P ;9$ MB+]NJNA<82Y\J6\T?I7D@(8=DR%"KS*LKWVJ,0[\G^/% M#=B:^1EZN%1;, PQ-+%VWR5(E]LG"?0"-(1-4&%6@1/3*=*/]/0Z&=)/BWPR M07K/*^,T1*6$I";+^8,,T?G&ZRJ1PIY+4L[>\E3\I90)^(J=?_XS%SN/._SC M1B;2$\JO2$H+&G&K+*QM0E4A9^/%HFM<%$F9;M]\=GU3.?5?)9/^0/Y\@UGS MA>TA-H[-IL-'#D5>:$$'Q1@B2_PGLGT" R_$OALRBV"M^WY[K2]MDC7@--/- M[_&E9K*,9F'B.=?@FF +=E1B4[G0]]J>-VWY,;$.,HP??4A_1?L@4&8I%U9< M]HWGSQ]3IK.X'7][:5-0;YT[P1BU.IYH1&,?0X4@FFO(=*%[ MT/*=,(PC&Y.8ZZ>,&"O/21#OX_=@\>LWUU/H<3CI$Q (C;+\J )IYU&(1MZ&/.!-S M4^RJ0LNQH!<'KNU8/'2HI9=*KZ>WI2T3S6'\#N2H=)W]!*O-7F.T33REM1D; MD3]/@0EC*?3Z^IHYBYZ"V(>)]%1>TM_473*6U.6VD>5\V]4FUJXB/-C0TC3" M#C 0B-]\^ZE3*UM]"SC,W_!NT"AU$VN%/M8FJ"NL3,VHO>)PZ[-M&Y4%[>X@ MU5\:9T_(K6E*DW5=5NXZON7?>+KA'P3R+_R^"O"YRZZRM,C6":LO^K9?O4," MSXX0A\2/+(B(C,%Q/!\ZCA<1QEPW(*Z.L3$>RM+T3C=9V+Y4]4\JN8#\.D K MF3P/[OVV2D*P(P0%R'0I9%+L0N2&!V X9]'S,7>HSAQ-/9::?:']I<[R&""J, MH 6I-L=/,=@_NPWP,K5O18L2Y:D\('C/)!9OUI-8_&4WB4^U-\OT'1"FG;A# MCXW;^?S.9;EMSBZ_\1S?\_IBSG5<7\NYWI1%B2M_?YW7M2VG$6*?VC$F,(CC MZO2#P-!%%/K$'>L(T2;@7J*(BAG$6EH>S(.PZP[D[-H>KDI.:\Q?2/FD_@*UC0S^DZ"-F[H.GZ? M5['O.__O)\5:RJK-+.@;;.%6.57R7!"9;8KU[1Q">3!99UB1NU M?5;J8+:=M(ZXW4VUUGOG%D#XG-7'(;5O9!7;?N1%/H'_Q41TM;LG8X+T#:( 6XWU^DQZR:D6V"KXGU29>J%J0QUYHJ#\;3 M][_HYI52\A\7]G2:_1//CXR%XFOQV_M?>"ILY/5ERBZ9V(4FTA:6?;W_(9<) MWMZ;B EQ<1@*#4SD<:5KA\*@]3AT<1S%//9QY,5:L5$ZO2]-?33@+T #O[J\ MN2\ :"70C)_2&A0U)3,9U1-K'AV6)[@1,XHV4\%86GW/&YPUAI:#8*U1C8S3 M9,E:?DQO4L>>3.',+*CT!8[];HJ)\,RK-V-(4:63UTOY"[2 M,H'ZNUN:)JL @B0%9:)ZKT>15S7=9(ZMB951!RC )=CR)L%.H'S4>#&D;08Z MFU6]J G^4I\HOC6B]L2GI$SNJ\WR%UZ6ZRK"M#:_F@WU75;=K;_!>?G\.4NO M-GF5&B.,4!#;C@U=UWE73W.Q/K4_V]0B569-VKQ*DRK<'KV8; M"(TB%3,,R$SE*J8;&+W:%6XN$4G2^^A MZ.@19"UTL);8MXFUE /JU%E7,WZ-Y5U=H -9J-2Y<946JG! M_N;-#Z4J_D&B)^47Q]YX*).\TFXR6=2=:.1=]HB3=&5;%K68=!#Z$8?(8S$D M;FA#/^0,1[8;<%OS/L/QCI:F7W8XJY1N0"(%7VNLFI08 MLD9<"^AGPEC0_XEN9@[I[Q?V,&!_X/FS$]^\V_"[[!])MFZN!/P]>^17TA3* MGS_A[QI1^KKM+DTWO$P2 ]BF2MVXE4$>TDLI0",&$')<#)VNG4]_OSZ9FOF) M=9/1/Y?(8[>ZU,/\HT].0 4F]C;*0$*7?9V>_$MF'%0AI&)/"@ MA>,((MM!,BN$"Z/8HE& J._$5"]&XF472U-;$B%(MA"!W#WIAD4)EA^X"W/41,R((XI3LQL(?#CJ8.?#AE("'(0\GGS0QKV4:L<:TIH'G M^;'K0^K)JT8Q=R!!MMBV1-P)?9=BFVKESSS5T2+G>/=;EE!'[EM.DCMFSH^C M;.Z9K\;6F2K@D(I)%$&GFU=4!X?"]BN%(\^/50U/.:?U]>55Z'F636@$:>C% M$(4^@I'#?.AX#G-\-XH#%NBI@UWCRU,!.VRZ$[Y#F>HD'T?$Y!-;@8,1T_A0 M6&-3M]/TS-/U4*C#*7KDF1&G[K?\D;,$KW_/\C\NTS*AR9-,'7"UYCC][>FF MRETHM@<\#&V&H6U%!")B81@1QX.NYX0ACAV/NDIS5;G'I4W@#DY )5!09W74 M.+55(KI_AD]"W^1^R!HND'A!E\<*,?CM"=Q,0J7&:;=I2FL^KE1J:[W!:1ZZ]DVBM%\>93)^2E%_'5[GHI_R :77"5&7Y63G4)C$*+.B& M$84($Q=B+"O+>YG5E-M4-R7=MOP"^,415UD:)N: M4U[NK"H)R62P/G6X*QVIC-I"001Q!'$]_D4N\2+ :$1(:X%+3<.(4*7>,R4D36:KS9>J&V7"'\UXK4R;@X"Z9 M^ILCM='Q8M]ZZ93Z&UG29)! 8844-)7+0:>P>1WMB8N']NKE)#F3U-@R-17Z M.UM">?N!=$>*;QG,]/8N66_$SPX2*NV*AZYP:''/L6+(+2(= (3"T&8,8B>( ML!M:C#K6JLQ*O%9;H4?BT%JVMV@F/'&0B.75Y:=,5IV3GC)A1CW*.U%U6K(W M2?M7S4I-8P=*38'-0/_$FDTS(UPCVT6G"//$2>'4V9PR+9P"BM=/#*=.E5)J M.(WFQAXR5W66K[*TKJ$LU',5?5LY]-P@I!9C'"*./(B(%T-L400IM2CE012Z M+-0[=#[=V=)V,6U9]"[8.C9\E->TEV?5DVHS[$U^[NEJ MYN/N8:$/C[\5WAEYTT]>'KPL"EX6N[L\VSV(SQ%AU)?9NQB6";,9C&P'P\BS M+9OZ'O%\K1C5WMZ6ID+J.[*X0JN90+>?535]88RKB15&35,-M'MG;Y(-G!(I MIJ[N]?8U[[4]%;$/KNPIO30BBN:WF]O;)AL+\84506@,(Q<%$-DL@"&- XBC M@/N,V1&EZK$RNW:7I@HD,HV0C0Y!_7/]#+$GGM42U'#^F5[1-6)2QE$P4^3) MW0,'O1^ 7F#)H:R]X2.=Q^<+$CG$N!<*09V]"RN$S9%YY_2R@OFMLA@>>RR/*$)>)'/D2< M(XA9X$O=P3V?<6QAI=0DO;TLS4)I@5;)+%NHFO=N^FGM5Q?&R)I83308NS09 MO&^CQ$*?8A -=)2"^-=.(?2W/8LB4!*O50!J#^LG!:C3'?$\_I5CF7-H^;Q%P"8Y8_8C$:H,&J?WW_&%']D]@ 1[,X&\;0HW71OH>$47?IC[4W MVW7Y'F&Z-^+['M.?I7MW^Q$?W9J:AP0:G= *+(V:V'WMSC;!%83K3G25 MQT>'9>6BFY7O^C3D.("6[5.(HE!>B7=BR)$=A(X= MX#AV];;SO?TM;SO? :<=B=W#J]H^_GRN9HO&KO"!-RW2GV0^;!7NQL1C#W-B M+B*[IZ^Y8[*'Q3X2E:WPTL@HADQ\#V5"Y:%F6Q?$=:+0=F2*ZR 6_T$<$HO$ MT.,A(RS@ ;;T\F<<=+$T&Z)%6!VV:T8G'/*GIA3.8V5B3;!'R 2Y\$\+;RKH MX+"#>4,-3@IX$&!P^LEQ,_HS+Z]P\2#V_]\2QMG;Y]\*SFJ54<@LHI>T3+[5 MUD=[*AYY. K<(("VZR.(8FQ!'/@A#'QD42<@,:=:&87U(2Q-(UQ=?OD[^/#I M^O?7S_13,P8<2XJ&F2:=F>6-,( M\$"B!RU\0)[!&RF!,#U^ ELAP$Z*2:(;QI-H2&.- #"K1AM/T$N-=T9+^LZ0 MCVDA.LG%QNLF6R=4-"KZI9^S\I)E3V+?L;L%I>@:46YP:2JM 0Y:?T +O_+' M2QDXV\B(:2$*:&11=Z2HTSSL5IF$X,M=7*"',=VXH@B5RQW;*)#TE NC$ ME(J=5LP852K#V-_-TK21!%I5*!/+O( *'BNL&M%.IPGMUS#F:)KZO$4R5-4B MJU""&N:8P+#35&G$B1FA;*:PL>/4&0HB&R2B-Z;L]-OSA9@-2K 7<3;\]!D> MZ^IC6%]5M^7JJSJ791UH+\\A[K+/6645MO=X?D_*AP]9'O.D^OV[1%J0*2M6 MR/="AP0N9(',^1#'R,$D8)Z%M.[;F 2W--7[I11KF;RAN"L:_R0> M...:HM&AU/"IO\( S>&"K\4"M5SM1<:N9#+W_?;2Z?LXYK24D7=;<=MWO@N! M04=BL!79L"/?\$"8]/N;@C;_,8%A4H^>*ICN8]Q24-53DV5+J@1'Q+$"R@F" M ;,01-3F$$Q7(ZQ5EWRO=:7IHPK<$W1G!&)HO:94U.=H_F86/>I M4Z&MI(Z*;$C+[+<]JYHX*M;+>7[\(:-Y4W:1)6^?=X\TJ4:J_M__^R8IGSN9 M7*J0I[L'G%X_R2:*7T039?$Q;9*JXH!$?N 0B .'0>30&!+/9Y"3*/!M&C*, ME6KMS@U\:>JE0B<,@M&FW6PCKJ:[ECB.$ZO%;O:>KM#=@"YY:'(TRX\4_0+4 MPN]EOJJC.4LA/V@(N U!3+DPU0ZW]<:MFG3")F'O82$1),-AF)JH^GZUUOK M&$]6[QH_U?_>X%RHZ?7S+7_*\G+EAIY-&+>AY\<$(E?F-D6>!6V$W,!W;8]P MK+(L]?2QM!6DA0FV.$$-5&T=Z6.S7^4;XFAB[:Q/C[+R5""@Y_Q&O%VK./&7 MG6;K:W,6):0@5*LO5!X=ZWH4;8EM;9/O;N4Y%A43V((LC$*("!/3FEIBEMN< M$#?P8C=@>BG.7_2@\\'.D]B\!0AXD_,/@I1KWG%]22.)78]@/X88!:',?.3 MR'($JU; :$@C\7](SPD[FL1Y#M3W*3R//%6WYVA*)O=<-FR\'V!CA(?QJ,S& MG(3[K<_LYSLJVJ&K[OACX[3?!YSD_\#K#6]N&U6FU/:'?T]X+II\>&ZKZ<78 MC2.Q]7:0S6569@Q#XE#H1);%*.?4)THFSZC>ES;E)4Y0 ;T 7?P78/<;L)5A M9.T]O?%1TQN3L3ZQ5CE*JXRI^7SYCPF*]8VBR9 BTNM[5C4UBI:72FQ<(^-4 MW"]9QKXGZ_6G).4?2_Y8K&Q".7;E48(3.Q#%E@])+/.;8(*1%V$2^5JE*0YZ M6)JJ:@&"KQ(BJ#!J*J)#%M64S5G<3*Q0]&C15B G13>D) [;GU41G!3OY60_ M_>#($\+U.OLN+YU_R/)WV8:4\69]2:F\I5K<@'W6FZI8G[*B %^E%#(Z0XIA\JQS+(6FSD.U^Y_W MS'0L/0?GJJ,;&I/2H0HKO\SSZIQ?.8M#]ZVEZ:,C>0D4;U0=8:1?NYQ'QL1J MXP@/QN(?3@L^,N7"7E,S9EDX)L)^8H6C3YR5V?TM3\5?2GDQLYO^N7C[_/[Q M:9T]\WP5Q8Q+/PAD 2,R!ZL/(SN*H>^C(/(L%H>!-R+-^W#/2YO,;>IR4B.O M DHO .V"EV?4O($_*@.\PGBH&1F3L#SU.5-#< .ZNIA]45_/;O,_7[UD^_T0 MVV/3QJLS9S:'O$*_KY%07IV.$]GE-1K0MQUN>'9)RPU>KY]O<%*=N6MD@CK^ M]M+4S\W[:]#"!!+GBT@9S?1M)R@;-C+.9VMB-7(>45IV1S\7H^R/$TW.9H?T MB]2U1P:>-&67R ,A6G)VR\M-GEY7I2GJY6#EAA3'%N$P#F0&9X=RB(,8080# M;KF$N'YDZZ5\TNE>Z9.?-0-4BQ7D%5C0W'IIBDR<:Y#T#,18F^1,*+0Q3K?=)8]B_W8= MBXU<6L0\OXZE"_DZ;W+75IM\SF/;M5 $?3L4BLRS+1BR*))9:T+.7 _1R-?9 M;2GTN31#IX8L+WNUH.7?)6S!]BZK\HB;)"H#H*;*#-,ZM?O%!*/:*DN#(T.: M2J7'6164!@4O]9+.J_K!O^_3,BF?/R3KII+@RO8Y\CR,H4." *+0#V'DN 'T MJ15% <4!]I728QUK?&D*1EX%3(I";@8DR*:@IGJL[P%Y_3KC7$HF5@XU-"4F MM,)Z3XD\*I[WH+'9 GE/B=&-X#WYS(@D*OO5P.OVKN,/28I3FLAKK-]X*F\ MK)!'W;ARR4:!)69L9,,P(AAZW(NQL!MBXB@5S]/J=6E3>5<+-VZQ MJ"U4@? MHLQZ_U2?C,O)MSBD[%R=NFAK#%_'8(L;7$W)JT:6EBGXG2EIBR&>]9*YZ/+5 MF]M%N;'Y4KWHRK>7^47[Y9%U4./X5YS_P54)5>&AD4^)CE9?(?U;IT M'7\4*U1ZGX@>&L1^KM;FNKH MHAUW0VF 7C4%8HZTB37('E_"9MY!->ZO5N/$5#A>?V?SQMXI"7X0:*?VUEA' MSY<'OI89D)YP^KQR8\:P2SP84ES3)1#M\_1I\8M M]F\W19+RHKBD_[Y)BJ1*&2'_FG/>W(2SJ4\]@@DDW)%7?!"&H1?$D$:(Q<0+ M+824G#[*/2YM.K> 00?Q!6@QC[R-.,R[FB%@E,V)]<"Y1&I;!,KD&#(*AON; MU2Y0%O^E::#^XLBKTDF:E/Q3\DT6*-BW.S[S%F[@)\[LEVHG]O7(D54Q?%^SN;]V:XDN '5\'5WM*/=;[E M18G+Z@[-.RXFY6.25MO&=^*'JA'/?6TL32=TL((]L$"B50]X[N6M7S&8I&QB ME3"2+:VH9Q4J1L4^]S8\6P2TBGC=.&BEYT?FHJ4/G&W6?'LBE=[OKEUV+V?6 MEVYE""HO[N0O5Z%+',_E ;2]0.P4?>2*G2*3%2Y]:C-!B>=HU;L;#V5I"F6+ M7_42'S%\?8;Y1H4"E+I_!P= ([YIC4&8*]](='$,!7^JCK,WY8XWOES?WQUY>V9DB80.*$]EY> M$.VZK*?H4MC3G\_4U-OY?I+ 5XG74!*5 3;&[>A/M#G?9KY?J+U]_,"CX[;P ML@RT_)],[/\-KWF5.4DHED1>,92_N$S9_@\Z3ZYB*Z:6A3Q(+8(ALHBP-IGO M01:XE 5>9'MQM'JJ2@%\*7%>JNWES\*D,SM>(IMNHE3UU6725"K_PG=P 2X! MX?=)FC97X)[ZZWY,,(B.YR&+!H$,N$$0(3&(D>6'T'==1JS0X6+?T SB^U3Q MHOK,0]CB>J4!Y.+GKS)T:KZ8V09CXM5&(KL U4AT %Z '790/R+'Z<4/NV^8 M\\\88=:0B^8\++-Z:8S0]M)18Z91XT$*EU3LY39KF5ZC&T6Y\C"G/N8AY'YD M0X1I ,.8NS .0M]S:.CRF.DE!]$'H32W9TT1T@$*NDB-';.?&@Z;1K8=AQR* M:<4A8C:#V'4=&#@A#DG (]_3JEX\T6#,&;W>&0H\YU"<'05A@.!7CHS0G@8F MPR4&Z)L^A.(4@*6$50P0I!%J,=32B).#]H[@C=C4)%PL@54L'KO+;G@>9_GC MK=BALP2O?\_R/U9.'(FK+; M7=1^JM&#O($O"WT_U0* O)$ ,%XD]RGX+B31<$]K#8W"^VIJX M$ZT*=$E:X0"NI*MNM%;^%:% OLFRZF;G@=+^PAY6G!Y[7C^#[4OYQD]/K_*[(WQ=E\ECIN5]Y^9"Q74RL8CB? M2EM+F_-?2@$*W.0RK;0PC>Z^W((==E"#5P_P4V*S7R%,0>34.S<%#L%7E3AN MK2A '99&A00J=3!;?*".N-U@0:WW1D8.9H^/65I]!I555'PLB@UG*QH0BB,> MPH!%PI#PL04Q8P%TF$M0A%A J5:VR!/]+$VGU#!!(7%>U!ZP B055/ F29N? M:&9C.,6Q8MS7^2UXLGV4W"')4_2;*M)R984>%:K&D^DEJ4Q.XG'/\5'$+%@.9; M$9_*37_(L_Z%YYF'S=3UZ+E@SWN9>N;!.+AZ/7?_XY:[7_*L*&[R+$[*E>;0_3J9L*&GBJ ML.DM%5W"U+3Y2!HF5K@U S?]#&BKP".R&M)2W99G521'1'HYUX\],FXZ?LK2 M^SN>/\K2"92XTPPJ+72G'M@O#V!6[U=CW M('8)A780AE$<$QRZH5[^0*W^=;[F>=()-L# (RXW>5)%BF4Q6 NAH$P>!)BL M$5+G%@PT342]D0EQ3#EW*8P\AB"*; ]&C''HD3@,PX#9A#MZQKWYD9G50O\D MTZ'2@^&9<@S4M/-D7_S$^EOBAA(XJ K?R%MC=;V*'>H+T, VI]]'L65H!=#K M>]8U8A0M+U>1<8V,]7^F98YI^7M2/EQMBC)[Y/FG!)-D+6S/=@(1&KK(01&, M(^9 A$,/AM2UH!4RBSL>#8F/]9RAPYTNS3/ZCL<\SZNRS]]XJAHTI46SJC_4 M+'F3.T=KN."[P M:P!=@"WD"Y:1#D3&_J4*7,SM1U4DX]*AJO#NR3G,N]-DF M?Z[\R(G]"(O@#9SL+!EA<5$N(T@L7W"Q<]#"U$]B^E45\LSCEJD M]0$,@/):/LV*\@(X47@1!D&UO+MN>"&VX>(WN\.:]JQ&O/"_-BG_;_]D^];_ M<"WQHOA2J[?><5K52FI^95>_OU_.%4[GM>'[_@SY(+]QG M\0FL/.X'U+<(%!LS"R+?"2#&+H=1Z%(<^J'+ Z6D\*JQHU>[I$WU4]9ZC#,GQ#XAY4X!M\ MX8Q< 6*'GJ3RE$WL71*RD4Z2&_$1%"OBT=#&H0S>PE3L*((0ABC&T$>:X^_I#["C=T3_9R/SW\H?D.7H7?_"ED1%R?"U^ M>_\+3WF.UY%T.*6,,D\\1]BRWW:I05ZX8O >X+:JL:;8ILJ]FPYGG=/)]6@7X C20*U[W M08/W \6J]>.ZM%@R%96EUNF\,55:1!Q$1.F]/7*+N$M*5<5-R>"KG#^(ED47 M]1TD6>7B,R^OXSO\8X5=RZ8VCZ!MN3+F*8YA&%@>M+#++]B;BXK@C83_4U5F M4!I.0@:#V]5QY)G:Q&KV/N_6=APU!QO>D,*^S:V8B^&D4=D5B(_A)$3.)"%A,0NC4(<*IWG:_:[-!WW MJUAT!"RP;K "N?YD&MLY#AUF>M=VNMT=Q\FVQ]&?>VVR->'V?;OG]\6F?/G%=' MHO5E@%^KLWT= _5D(TM3TRW0^A"^N;^C9WN>)DS-RC3"U<2:^"A-X&N-TV U MQT$N#)F'I_N9U1 <%/>ER3?\PIF3GN??$LJ/7ROZG%5Y-CBKL_)4AX+=WU]E M1?DY*_\O+V\YS>[3Y#\XJZ\/?A 8B%Y 9X22%!$8(3M M.(AEL16L=0%^7OA+TV$=;$V!E2H;)>U><&S<@"#-2O L=GOY5L21RFZ>#T53 M@RYN^*=V5!Z[I[J[_"OI44)[;L8D\;%*)VY/P%#5>G:,@.?_OKVK^"#&*_&-8E3 MS?C@OC%06S4,,3NQBE?TVUZ RQ<,WV#3]QX&Z3*7)N9D3W.GBAD2^4BZF,%7 M%F:BKS#VF17S"/H6QA ASX&19X701ZXM0YLHP!9FQ;F M(.W[0DSLU[:F%Z15#1K.EX_9QJ2>G9S^I=O$_TG,W]DMW9'KBXRB?]><+]R) M5U?();%/A[8+$:<8AM3#, A0[(>Q+&&L5.?O9<-+T]XM-B#!J5]-V>.J M7Z.>P\#41VM*PFO=0#DFZ:B;)WL-S7;CY!C\[DV3H[\W=I3>IBR6_]X=Z-1G MR*O8B3CS0A>&$8TALL7N,@J%E488BP+/\3"UXC./U/OZ7]K$;8_6X^2'M+V$ M KWGP@0S>L[>.QZCS]M-L?QZY^[;7/"M"-L#X5J*:8D_^R#>U "\_H'\Z($P M<3*O0N.($_K>9E_[I%Y%9H43>Z5F1F;9RS+V/5FO+VE=%N_=)D_2^R8GJ!^Y MH>T2#WI!$$$4<+&:T" 4_^28^Y8M0U1U-OE]G2UMP?@'3O^>906_R@"6<(O^ MLPU]6F_F6-U'@J4Q5"3"7VZ^MJWDQ_"D(?I/Y3>4>_ MR,4=)ILUSC\E17DGW<;:E2U.-K T#= !1+I!:BPJE>O.$U3_[PWQM#$$[Y+ M#OA:P03&JU(,$C&J%,7I5F>K/S$H6+?HQ/##^LZ;]VF9E,^7C(EOHFC^^)2D MW%ZYL256=LX@BVT.$;(M&&([@':$K#BTJ.>$2@5B>WM9VE2O@8(&X@7X4N:< MEYKY1TYS.NSQ,<+4Q%/^)4G-7X#$":Y30QZA029&N8=.MSJ;KVA0L*[C:/AA M67D!H2S"%HS#2'IO+0L2+XZ@&X6$^IB'MJV<:>AD+XN?\YND-##;G3-F MNQ9'KSG;[[Z?]I89F>W.)+/=>?W9[NC,=F?D;-^[:W_+2V'^2W="G='![ T'4"B%R7P1 %\G(ICRS']AS;&I-\Y$4W.E_R/#E'=KD>\BW4*N?(F'P9 M+TE5\.X:(&KB*7\"H>$$&"?D5\I[\?+=^=-=G$!_-,O%J6='3.9K,4?NDD?^ M!:]Y440%P?Q2%&HL*,_=,;B:>M14M$A[X4M,R$%RB1HO&JV\^I=:#>D^A]3TW[MAAEVCM.N[&J-SRZFJZ#%4I#HH0%3LG6FSY M(0DI@O* B(6<8@)(M +?6'!<.3Z7"O\\$P\2U.5U56O(S7+](XOSATDM1.. M&:F?6!,/! @:+MMKF#]#9R;GHIGU6,40=2]/7DPU.TZUBD:3XCJ^I%3J:7GD MDZT3^ES_MZ-!'<3L "%(0\N#R+9# M%',78LOQ(+$)=C#Q8F+':I4V-'M6FE"S%M[H8 2TE6.;F+%*+EAG0=MT'ZRE MT=CZ:0R.PD;9,.%S799KV6U0 P&[28#6'86K*7\:]+?Z(UT>:IYLB2>4QQRZH[O)'4JPN35T86K8C=_04 M8H9=R&W.;.[X)(X<+7OT>#^+,T ;F*"#$WR52$_;2EJ\*MJ=Y[,UM:$Y@BA] MH[*?!E-6Y(E>YC4;^T4]L!,''A^G#+:%%]YB,=CR8AOGY2]YMGD2ENB')!4_ M2_#ZBUB5*@_*%:[KC,NST8_B1\7*][##6<@@L5P7(L_S(8[<$'(WC+!'?)\Z M2F<@I@ M3;WLRHM<@$8D4,D$6J$NP%8LL)4+M(+IZ:"SAU--617G*$[$+_52R M)FEA;&,<>LR%A#(+(H>%XF^80I^XL>]ZF/A,R9FHT-?2-.PY]T14J%78=ILC M;&)MU^&J@Q0(J,-I(;6)T]A2FR-PIFWT:2(-[9C5&.G=)0\T,=_.6$V6O=VP MXBOCC-[;NE[W+7_$25I?R8FS_%&J]%TU=?%#*K^C>[[R&7+]6ED:^V,-?M?FL)MX(.\Q2_S5[8"@&PK 7CSM)7A)ST[5G>$ MU,S6"7F?6&\WR"_ %COH@ <[]%5*R :_.6MT)'&&C$_=WF>U-4=2\]*T'-O, MV$KKF(F>\C^*RY15_Y 7;8IFW0Y0%,4193*56 B1;TN78.A S\><<(=&6*WL ML5)O2U-N.[#5$4\I_PFJ%W0KH?=1K*:OC!$WL79ZP5GUS^KJ5C%!LG$E4HR5 M1^_K:^8:Z0IB'Q9*5WEI9*D_^L#99LVO8['S34K^*?G&V4>AG=+[A*QY7=?U MQ$ED*4,Z=-EAX.T%3:,FI?'.'_ZU!6EPD@S08&@BG.IEUH]]0-27 M'_30XV,_6K$)$4/R?(N__RJ:SA.\K@O1W?*"Y]]XL8HB)E9IET(:^0@BR[5A M%%(*[3 @'%./>$@I.8%ZETM;L 50\-@BU5N3%?A5U0\F69M<531@+X#D;HMW MFPB]Q6Q2<:CR8TR'#'8XLSI1)>!0LRB_>9;S]8/ 7%4?%VKK]Z1\N-H4I5!I MN=!LZPU+TGNY*(O_SZI*O!:V$ \=R"TJ]@V(48AC9$,6^,R+/3\*_6B$ U8' MP]+44)5<&*1B!E5W,4>Y5[7&( @"3ET+0]]GTBMDV1 [0O-;/K-<2Q;*(&@E M\+SN"&Q#A,N)^9>ZZ\L\S&LYMZ?ZIN=Q< .IRD"+'WP7 H!6 ID]LY$!M$*8 M+7Y\!H5F7=U:"%[#W3V&HA,N[U%-C719R4N9'XMBLY^+K[H))M:X[]6OBE7 MN>UR%$$4RO]XM:Q*7$]Y02-^MUN[0%YBI[?-P5QT@JC-5Z(RRV MYH=R>C[P-0-ODO9!S7,^Q1%1=$P9YWEJ7U15EK-&O)^M\P+4J*6-_+U^PJ!Y MK$>4*7^36J?SNIBTB#CP*NF]/=J1E'-<\'>\_O-C>DQ95AZLE<5)X =>"#W* M.$2V[XK-.>'0#1&G04!MV_+:VUMW.GMT90AZ-MH+(%/JLL:@P",\Z3HCH.S> M,TKH;"Z_"BUXT^+^"0B]?\I8J^ ;]07JD)] "U<]S^$!>_U*YEQ.IHX5T*1#*YGA*;E'Y3 \:&RVU(6G MQ.AF+#SYC'Y"\8]ID8@G[W)673I/>'&39_2294]B>?ZPQO>JB<4'&UK:W&P M5Q$KE?'=P*["6"1VSC9RH].(H)Y\?)C2_DELG,W);0,M(L%7B=]0CG)EGD;E M*A]N?;:/_OF^0;7LM4.MN;,KM,/"N..<=Q M&,+8=@.(/ M!XC@$DX*+FLW8"^ M87-Y?U^^SW.9 :PNN_F."ZOB,4FEUT&S:(I*6TLS;P3FO'*R ($\2WFV*?:2 M$5:5<84H8">+NHFC1.ZPE6.:UXD5T A*#6<=U"5ME-6CU,%LAH^.N%W;1^N] M<>;/]1.7I2O3^R_\ODHBV 3X6P1S+V >]&S'@LBF&$8\\*!#D1LS*T8<*WDX M!OI9FL;9P@0M3CT;YQ2=:A:- 9(F5A^'_$QP0V* !D.&R:E>9C5#!D1]:70, M/3[R6/EH,?!.WMFWSP?)1JL*X=+P*9]WU2:+*N'3W0-.K^O, =N"XK_SY/Y! M%A:ORT_^(IHNWXE5:&LOK1#AD4)<<9>U!-%TIN]+ 2>; HFK\76Q^*Z MI^(+8'V%./>IRWSHA9Q %!-9OIJX8L_N.5$4. %F?O-!O4\'DD$N23#]SZD5 M;Z:/Z7WUYW^B+TEM\5X"U 59"MU4YGL;C&X^<_(,CJ8\E[1<@)J83B7JHLGS M6 IN0$/.!=C2S9$EBP,SC&"@4-0&,>Q2[C6'?VC MO2QM=_E9#$4N50J(Q?\(+A):.8-9LMY(K<5Q+HVPHEHN:2=^\6]ZJ^9QRM66 ML;.)G'A=D7'KS>6]-Q+B3^"R+/.$;,KJLFN9B54DG^I"7R\YAA3P\3YFU8B] M8KY44?T/C_1*2655WVJ]VN1R.%=.:(6A%SC09J'8)')*(.8AA9A:%HT]',6Q MGD/JH(NE:8O:UJ$UN%&1?T=H5'1$G47.U#ZHBI<:W05H\!GT/IV4W93CZ;"# M>7U.)P4\<#>=?O*<6^5W^,?N>&S4S?*C+2SH$VT6* &S,X(X;L'N6->'Y%C^;>4"?TFN^#L5C3($KS^/P0&#*/(L4,G(%@YN_*I7I:FD+HX9:[/"BCX+I!JI @^26F_ MBC%&U,0*98^C%B/XW1!'&@F437 U4^KD$9SII4X>XJ(W:?+)E^=+ESR$?R]1 M\N##^M=UWJ=E4CX+:^\C$U]#$B>T^B+JHNHK+^(QI3+Y#[*QS,6!( YX!./8 M"\*0AI83>*IW=WI[6IH^K,%6FY)]N*#&JWZCIY_@?LUHE+:)M>-HQK0N_2BQ M,>H&4'_+LUT'4A*P>S=([85Q+HA?LHQ]3]9K89+QY#ZM_1KT^2[':;&NNOD% M)ZGT9:YLBW$FE805, :1T PPC"T?4MNEJ8X&<>.,I,\R MK7"+&22/XBW%C=R(45#S"TW#[<3ZI05] 5J"6]R@ QQ(Y,UAASG'D3YAAOQ( M&AW/ZE;2)^2EEVE$"Z.JX9ZXX'P9"U5PN5YGWV7 M@2%EV*=^!&,_% 1RCB&Q/10>($G]P>^'T3(#BRE',5[K2Y-H57 M*JC[Y/4/P='BS[QY)-Y M]I.B3"A>@U\YEN$/3X U69#&0X/,W19*D-CW3YRCD- M3Y,PG,RPY]VQQZ(?93E:L:%*OO%WN,1M7+#O,A\'H0M#&@FMXV$71DX<0Q;A M@-FA1831KGKRCI1D$S1%?!ZR\+88'G0=Z[*H>B?[_Y+WIM,5DHW4]5M<^M'J61,*:A@A5:J?_@)<(A@;"2 MBG..M55VID0"[A\(ASM\NQRS:3RBVG 9.$2'L;C 'WIFX(G=H;V1NF3=8>4>_[PKJ_H7 MO9R<^_*K $7>XY1+0,YASQ$$>A M=DK'6W$S-\$VZ++%6TX-$DK>['M14]7^QWP%CD5UJ^SU@=A/G#OG=6Y Z3KA M;K^9'2[;QE<"FRO0HG.4AKULLH6>XZ/#'#AM(:Z"B"49.SC5 MI")0A>E#":7TCGX.6]V&KRXA\:-^;58:Z6JGWYZ;'&A:#?;(%)_SYKE: M::>@G0%K>._;P%2"N#;!@%HV2Q,T-.EA#Q# 8>1QQ*(WV>@7KNF49IO_]7*R+NA".GA*@@+B:*F )Q6G$0T=L7;=F1Z[4 M#-HV>S7%]M0"=70L*0<*$TZJ(J@#<*@H:+QI*'2JDCW335O9-N-!%OJ80(]% M,40Q"V":,/%/'OI9DD4Y\KF.@;$W^MPTB;IAKOSJ'\J2Z4J./=@4A80I&*[E M04.7@]J_)SFVMDXCGXJM2_3\E%>EGU?Z34A. MOSXW^;"[S07W);C[=+M7P5;Z3@Y"11R],=[B@2MO9$6;TX6ZI=%^D;10.VS'K;U^D;93E MLQ'MUHJT;:LH-]TR/I:/N%@M0DQ#SL,$!KF?0!3P' I#-8<84YR(GV=^K!3J M=G+TN1UENS8M#7V:/J]]Y-0VOS$>CK>[.A3Z=>!/L6RK(/O>V--61C_%UE&) M\I,/F6W4;M'/;VKN&!E=@2ZU6;HLF[&K;WSZ8CN5"K_'F#D89_?3U M^N_64F3,T+$D0A0GG52VZ %Q*'0TWYZX+]:78L5O-OQQOM\< 6BM<\WQR/I9S1_*U;I<%JR> MLQZLM6 8Y6$<81_B-)(5(+T 9BQ-8<)]FN TI4FF% XY-,G<).P>GV@'(LX(PPTLJ/'@/A@G3ILT-/ECT]QEP_F7KT63-E[1O?8-D8^5/; M0^F:TN?'YZ6,+?K(\X(6FP7A+,RXY\&%#!64X[L(N=8-FQ!ZZ@%[WKT@I9@BZ49U=&QI+4H3#BI M5J(.P*'6H?&FOO.S+9U1WX4H.CQ[K\Q-%K2D*;:6.^1_W'%IR+KCS=Q29>U> MYPRG1I['_CB3>1M/$-_W,)[ZM=D!+2,2BMI-O+Y>,5G736Q0OJ(%7QO[&;7& MG-%7V*.[OFGO:*; [*G"9BJOF=TY[/6NWMXMY"3P$DIE-$'J0X02"M,XB6#& Q)S M3H,LU.KK='*6N8F2#WN%5!5O_89Q5+NCN1@=QZ+AH)&\DRN700PL7:VZEB.WU5U5OA2"]$401CB,,P9Q(/4(E#*8)AQ! M/V)!CE#NLT3)[S\VT=QV?7ONM<2V)YZNJG &4U4=X7*DIE$.]D&2:D%'JTV5 M8!B-"W2!,P-/K 0,LW=\^H\\KW\S*J.-KNGF&2^7KW>X8']?GZB\HIVXJ#?J MW*3 ?LA>RP:0?("7]5_!N>(_ZI>NFJ"/7\2ZP]N]9\<$:@>YD680&MWG:DXU MV1VO&03]>U_#$CG6O'E^B3,3M9=?_\;^/SE]A_? MP>=OM[^"V[M/WZ[O;[[^ JX_W-_\_>;^YM-W3>O'8%W43".W:#N6=+(&L*0> M=.3+ /!WD@-0K/X"MDR '1=.;"MS$"T97@8$3&J5F0-T:+)=,))YS,C9*BI^ M'@0\24(8Y%C(/H]2F*(TA1BG8TJCA7E8!>5B"6 7N3=MM=4!^=P6DALO>,J 3>>\O!U;/ MI:^!TJ!W7V6 M6H[%;TLH:"D%DM2K;<,9\&$(/OV&!4JHV&I9,#S9M$T+E!@_:EN@]I:!.O<- M%\M[3G^LRF7Y($S.MGIJ%\Y&6TE=Q0E8O!>5-EL'W=H[%B"04]"D%':DF<98C MP&FH;O8 G$AK.P^D)35-#9%!#6UDB.F4,S5>]O0RQ5=L]:@62I\,R)()+76; MK&^<\N)%]IU9+TCJTX0E&/J)K*>0R>KOB$20A)E/_#CAB1=>VJQZ8/Y9&L\U ML:#:4GEIT^HA_-4T.?N8OK5=W6 L#[6FS6&/?I<-K15@<];9>FCN-VYQK0#+ M>*]KE4'TPT'N>-F>N(J1'ML7YJ;5W7VZ50_(V+$]+"&,.7:\\V45:7O-)4YR M:13IL!MELB"&(\+[\0G'O[1U$;-+5_VRK7P6)WZ010A!EOFR>E+,(0ZC!"*? M(9QY+ Q"I.=Q4YIW?JZW4S<.O;3M2R]K3F%O>F=S(9YO<'6SE__^Q479."V4 MG%WEG)KSC6]T!F 8O]@9>MFPTY1LQ5NWVJTU@KM26#]\4U1-_;AFYEY>_2[ M$$5Q%B <0(*1)_-G,20IC:&\,9:_00&.M9I2&1(R-QWBVY;H>J?I=K R70XU MV34%R*ZOD';X=@1;CNRT!9:MEEJF9$S;?>M"L(X:=5TZGO'53/G(OY3K]6?! M8E- M^3#V8X:(A\6)F"Y6?#/[)=S>UFW^[UK @"*,?;%B>9YPB")A8&6$1# ,*,V8 MEQ!$$CW;ZNWWX33&V,P6,DF"..,)A0D.I.Y)?)@%J0]YB+-4[-$LC7P=W?/M MEW&2(D_S6D3E>_4W7AKW%_""0?!.LO@7(!4KL.,2[-B\ G+]RASFT(>;<"642 YU:JH9?D3&#Y\WGQAG5\)_Y^XIEK5U=YN;2>K MRC;Y&NO6=G.S!B,UX2Q/.F4M.3=X'=2@KVZJ6J:QNIWC'JSK]36)91M2QJ-K/N18$RU);#@PB^TG8 M9V=\JUSL,0@&4K)'7S431+4C55;;J?@/J;F]\.:NYW-9\>)AU90)I*_W%5ZM M,=TTWM?Z7\NFL2#[XWE=-U[XRH5">(]_GKP $M3+Q%FI7&4I'&@^P8Z#$ /A#I,OP<#V.&P[SQLBK-:+NUF]\/5^.:8%8S$12GP,T]S+(2)1 C.*,T@S+PQ# MQ'B:^CHQ/NI3SS%NA\JR94_]LF7/7=FRHN, X"T+5JK%G5H5M6/'#=:.SXR1 MZG!;XGO5X9R7A!M S&TIN%,3SZ$$W @BJ7?AD;0;]LM^RG=YK_B/\KJ@Y"B M0NQ6;9-IGE'"8BZD5HYCB *?0X(\!&-"@UQ\BX0C):_HX"QS4ZP[Z@RZ=9]' ME&%L* MCY58C->V"PD\SKVM6L@8N%3/,6_-=7HTP<0NTG,, M'KM"SSYY4=ODZX>'S:>JONJY?MP8=$W>'V!N>[??)%A06M7%;X"@MUSQ\GD- M]OM4/,K*&T8]E@]@'-[;UA!T?>%M$3S3?LNGP;FTW?+!J&_1;?DT8V>:+9]Y MV.Q0_Y3G7%Y3M%>Z]_CGM[K;X'$4^0)S[/'5"'R]+2H?&Q),J(_J '"HI!B,8QFM5G!6; MSUA^'YO76IVF.(AH1$*(O2"'*,$93%$80Q*QG$=9X+-(J;7A^2GF)I(:"D%' MHI%=<@)(-6ES&3RNKT7UD-&/HCK+O*V@J>,)IHV1.LO@44C4^2<-[T6;4KUM MV3;,*$^C(()!':$4(Q\2XE-(0H*PY]$X2K04D+W1Y[:AO^.E;%V3@W5;KECS M=G,/.<4K3%,\7-]3-G19+'XWR+&MN\:]L:>]4#S%UM&MX\*OY9 M'^?BA%^7RX+A-A#D3GP*7?94+RMEFZERLCJ2E_D,17D*HYCX$#&60!*C&/JI M%R0\3Z,TT.IR8)O N4F+77K8CFS-X$+;2Z@F<]YR85S?F/18NP)[S-7A?WWV MI* _M89[F2I./#&N%L!6;)]M\J8-WW,$[E&$GJMY]*^33_2"_?OZCO/JEZI\ M?M)N,JTXW-SD\=F>QG]? TD]J,E7OUU6177\KMD!H([EJ!J6#KI%:T)E= ^M M.L=DM]*:3/?OJ'5?-=,U_]X$U[6A6WZ>RS$#2ESXL[E#[27$[F'_12Q' 8D#<463@@DLD)A+Z7>$0K MB$1YYKEM[Q[AX%1^DL2[6XUNT@UIF&\DR:?2*Q9"5MXI3&0].L1J1 M\HV_\-4S_\:E$B*+%O(J+ZM'+.B\)UC)XX%3+AOGB4KN3\N_CI.F^2 M#[]O<+7Y*-:W]F *(X!B@G-(:8"%E\N8F- MEKLKL.4/]!@$.PZO0,(9G'0$CH9XG/D(4R=/NSSDWLRR59K65+Y/6ZI$5M@?Y9;'X VF-C M#1XQLU.([F -U&2S=60=B]RSY>>NW+1?5P/&;9VY@SGG4&+N- R*U>7.O&Q@ M8RZ7GWYR^BP#(C^(_?505@5?Z[7A'!IC;A)%T JVQ((=M1H&YQ!B"N:G);!< M&Z-G<++4'55;U3J[E^3]:82NM"" M);'/0I1"SZ>9T$O\"&9^E$,O)#3P/1*&FB',=NB:FYSYPM=KH:7TK\G?+>O. M'&UJ!CZX^5WMM]DH6O[^3;M.I9555M-\WF#M'(N]P<)I_?IGBEU2A"':,FDS MLMLN[/9J:%JA:NHZFS:A/%&+T^KP^F5Z[HM-DX#/BI>"/>-E?>F41F&.,$Y@ MP(D0XCZ.(?&R$*(@SQ*$/$:H4DW-LS/,31S71#;U)#HRM2[_SD,Y+"FM .18 MYAE@HU6H9Y#_"XKTG!YWL@(]@VSUB_,,/ZAOL@E9\>UYR86N%?G7577-RJ=- MV[E$T6 [/\+<]JV@%$I2@:05^D!0*W[==!]IR5:WW : &[?;[&#F>"LKP 5^ MES1;,M_&03$RW@:&GM;[@I/&U>W&87"*VIGY]^>4;?:UV;I9]*X$!; M'@;!8HV6$Y-,7J?E/*.G:K4,/*WWM5(9F%"]+CY<+Y(T1C3(, RBD$(DN^,1 ME!.89QSG 2)I%"L%ONZ&G-N9] &O,,-JQTX/F.$M:\:N:VOX^NOUQ^O+M^(Q M