0001437749-22-026589.txt : 20221109 0001437749-22-026589.hdr.sgml : 20221109 20221109160602 ACCESSION NUMBER: 0001437749-22-026589 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 78 CONFORMED PERIOD OF REPORT: 20220930 FILED AS OF DATE: 20221109 DATE AS OF CHANGE: 20221109 FILER: COMPANY DATA: COMPANY CONFORMED NAME: NORTHWEST PIPE CO CENTRAL INDEX KEY: 0001001385 STANDARD INDUSTRIAL CLASSIFICATION: STEEL PIPE & TUBES [3317] IRS NUMBER: 930557988 STATE OF INCORPORATION: OR FISCAL YEAR END: 1231 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-27140 FILM NUMBER: 221372525 BUSINESS ADDRESS: STREET 1: 201 NE PARK PLAZA DRIVE STREET 2: SUITE 100 CITY: VANCOUVER STATE: WA ZIP: 98684 BUSINESS PHONE: 3603976250 MAIL ADDRESS: STREET 1: 201 NE PARK PLAZA DRIVE STREET 2: SUITE 100 CITY: VANCOUVER STATE: WA ZIP: 98684 10-Q 1 nwpx20220930_10q.htm FORM 10-Q nwpx20220930_10q.htm
0001001385 Northwest Pipe Co. false --12-31 Q3 2022 498 503 115,377 106,957 0.01 0.01 10,000,000 10,000,000 0 0 0 0 0.01 0.01 15,000,000 15,000,000 9,927,360 9,927,360 9,870,567 9,870,567 0 142 141 0 8 0 83 218 0 21 1.8 1.8 1.8 24.6 7.4 1.0 24.1 1 100 2.8 2.6 0.25 1 0 0 The number of PSAs disclosed in this table are at the target level of 100%. For the PSAs vested on March 31, 2022, the actual number of common shares that were issued was determined by multiplying the PSAs by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the 2020-2021 performance period and 93% for the 2021 performance period. There were no antidilutive shares for the years ended December 31, 2021, 2020 or 2019. 00010013852022-01-012022-09-30 xbrli:shares 00010013852022-11-01 iso4217:USD 00010013852022-07-012022-09-30 00010013852021-07-012021-09-30 00010013852021-01-012021-09-30 iso4217:USDxbrli:shares 0001001385us-gaap:PensionPlansDefinedBenefitMember2022-07-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMember2021-07-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMember2022-01-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMember2021-01-012021-09-30 0001001385us-gaap:InterestRateSwapMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMember2021-07-012021-09-30 0001001385us-gaap:InterestRateSwapMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMember2021-01-012021-09-30 00010013852022-09-30 00010013852021-12-31 0001001385us-gaap:CommonStockMember2022-06-30 0001001385us-gaap:AdditionalPaidInCapitalMember2022-06-30 0001001385us-gaap:RetainedEarningsMember2022-06-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-06-30 00010013852022-06-30 0001001385us-gaap:CommonStockMember2022-07-012022-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2022-07-012022-09-30 0001001385us-gaap:RetainedEarningsMember2022-07-012022-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:CommonStockMember2022-07-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AdditionalPaidInCapitalMember2022-07-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:RetainedEarningsMember2022-07-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:CommonStockMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AdditionalPaidInCapitalMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:RetainedEarningsMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:CommonStockMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AdditionalPaidInCapitalMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:RetainedEarningsMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:CommonStockMember2022-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2022-09-30 0001001385us-gaap:RetainedEarningsMember2022-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-09-30 0001001385us-gaap:CommonStockMember2021-06-30 0001001385us-gaap:AdditionalPaidInCapitalMember2021-06-30 0001001385us-gaap:RetainedEarningsMember2021-06-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-06-30 00010013852021-06-30 0001001385us-gaap:CommonStockMember2021-07-012021-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2021-07-012021-09-30 0001001385us-gaap:RetainedEarningsMember2021-07-012021-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:CommonStockMember2021-07-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AdditionalPaidInCapitalMember2021-07-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:RetainedEarningsMember2021-07-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:CommonStockMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AdditionalPaidInCapitalMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:RetainedEarningsMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:CommonStockMember2021-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2021-09-30 0001001385us-gaap:RetainedEarningsMember2021-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-09-30 00010013852021-09-30 0001001385us-gaap:CommonStockMember2021-12-31 0001001385us-gaap:AdditionalPaidInCapitalMember2021-12-31 0001001385us-gaap:RetainedEarningsMember2021-12-31 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-12-31 0001001385us-gaap:CommonStockMember2022-01-012022-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2022-01-012022-09-30 0001001385us-gaap:RetainedEarningsMember2022-01-012022-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:CommonStockMember2022-01-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AdditionalPaidInCapitalMember2022-01-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:RetainedEarningsMember2022-01-012022-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:CommonStockMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AdditionalPaidInCapitalMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:RetainedEarningsMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:CommonStockMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AdditionalPaidInCapitalMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:RetainedEarningsMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:CommonStockMember2020-12-31 0001001385us-gaap:AdditionalPaidInCapitalMember2020-12-31 0001001385us-gaap:RetainedEarningsMember2020-12-31 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2020-12-31 00010013852020-12-31 0001001385us-gaap:CommonStockMember2021-01-012021-09-30 0001001385us-gaap:AdditionalPaidInCapitalMember2021-01-012021-09-30 0001001385us-gaap:RetainedEarningsMember2021-01-012021-09-30 0001001385us-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:CommonStockMember2021-01-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AdditionalPaidInCapitalMember2021-01-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:RetainedEarningsMember2021-01-012021-09-30 0001001385us-gaap:PensionPlansDefinedBenefitMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:CommonStockMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AdditionalPaidInCapitalMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:RetainedEarningsMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 xbrli:pure 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2022-01-012022-09-30 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2021-10-052021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2022-07-012022-09-30 utr:Y 0001001385nwpx:ParkEnvironmentalEquipmentLlcMemberus-gaap:CustomerRelationshipsMember2021-10-052021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMemberus-gaap:TrademarksAndTradeNamesMember2021-10-052021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMemberus-gaap:PatentsMember2021-10-052021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMembernwpx:BacklogMember2021-10-052021-10-05 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2021-07-012021-09-30 0001001385nwpx:ParkEnvironmentalEquipmentLlcMember2021-01-012021-09-30 0001001385nwpx:InterimFundingAgreementifaMember2022-08-31 0001001385nwpx:InterimFundingAgreementifaMemberus-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember2022-08-012022-08-31 0001001385nwpx:InterimFundingAgreementifaMember2022-09-30 0001001385us-gaap:FairValueInputsLevel1Member2022-09-30 0001001385us-gaap:FairValueInputsLevel2Member2022-09-30 0001001385us-gaap:FairValueInputsLevel3Member2022-09-30 0001001385us-gaap:InterestRateSwapMember2022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel1Member2022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel2Member2022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:FairValueInputsLevel3Member2022-09-30 0001001385us-gaap:ForeignExchangeForwardMember2022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel1Member2022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel2Member2022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel3Member2022-09-30 0001001385us-gaap:FairValueInputsLevel1Member2021-12-31 0001001385us-gaap:FairValueInputsLevel2Member2021-12-31 0001001385us-gaap:FairValueInputsLevel3Member2021-12-31 0001001385us-gaap:ForeignExchangeForwardMember2021-12-31 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel1Member2021-12-31 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel2Member2021-12-31 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel3Member2021-12-31 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:DesignatedAsHedgingInstrumentMember2022-09-30 iso4217:CAD 0001001385nwpx:SecondForeignExchangeForwardContractMemberus-gaap:DesignatedAsHedgingInstrumentMember2022-09-30 iso4217:EUR 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMember2022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:DesignatedAsHedgingInstrumentMember2021-12-31 0001001385us-gaap:InterestRateSwapMembersrt:ScenarioForecastMember2023-04-03 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMemberus-gaap:SalesMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMemberus-gaap:SalesMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMemberus-gaap:SalesMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMemberus-gaap:SalesMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMembernwpx:PropertyAndEquipmentMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMembernwpx:PropertyAndEquipmentMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMembernwpx:PropertyAndEquipmentMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:NondesignatedMembernwpx:PropertyAndEquipmentMember2021-01-012021-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:NondesignatedMemberus-gaap:InterestExpenseMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:NondesignatedMemberus-gaap:InterestExpenseMember2021-07-012021-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:NondesignatedMemberus-gaap:InterestExpenseMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:NondesignatedMemberus-gaap:InterestExpenseMember2021-01-012021-09-30 0001001385us-gaap:NondesignatedMember2022-07-012022-09-30 0001001385us-gaap:NondesignatedMember2021-07-012021-09-30 0001001385us-gaap:NondesignatedMember2022-01-012022-09-30 0001001385us-gaap:NondesignatedMember2021-01-012021-09-30 0001001385nwpx:ReclassifiedToNetSalesMember2022-09-30 0001001385nwpx:ReclassifiedToPropertyAndEquipmentMember2022-09-30 0001001385nwpx:ReclassifiedToInterestExpenseMember2022-09-30 00010013852022-09-02 0001001385nwpx:AtthemarketOfferingMember2022-09-02 0001001385us-gaap:CostOfSalesMember2022-07-012022-09-30 0001001385us-gaap:CostOfSalesMember2021-07-012021-09-30 0001001385us-gaap:CostOfSalesMember2022-01-012022-09-30 0001001385us-gaap:CostOfSalesMember2021-01-012021-09-30 0001001385us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-07-012022-09-30 0001001385us-gaap:SellingGeneralAndAdministrativeExpensesMember2021-07-012021-09-30 0001001385us-gaap:SellingGeneralAndAdministrativeExpensesMember2022-01-012022-09-30 0001001385us-gaap:SellingGeneralAndAdministrativeExpensesMember2021-01-012021-09-30 0001001385nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember2021-12-31 0001001385nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember2022-01-012022-09-30 0001001385nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember2022-09-30 0001001385us-gaap:PerformanceSharesMember2022-09-30 0001001385us-gaap:PerformanceSharesMember2020-01-012020-12-31 0001001385us-gaap:PerformanceSharesMember2021-01-012021-12-31 0001001385us-gaap:PerformanceSharesMembersrt:MinimumMember2022-01-012022-09-30 0001001385us-gaap:PerformanceSharesMembersrt:MaximumMember2022-01-012022-09-30 0001001385nwpx:StockAwardsMembersrt:DirectorMember2022-01-012022-09-30 0001001385nwpx:StockAwardsMembersrt:DirectorMember2021-01-012021-09-30 0001001385nwpx:LowerWillametteGroupMember2017-01-31 0001001385nwpx:PortlandHarborSuperfundSiteMember2017-01-012017-01-31 0001001385nwpx:PortlandHarborSuperfundSiteMember2017-01-31 0001001385nwpx:PortlandHarborNaturalreSourcesTrusteeCouncilMember2014-06-30 0001001385us-gaap:TransferredOverTimeMember2022-07-012022-09-30 0001001385us-gaap:TransferredOverTimeMember2021-07-012021-09-30 0001001385us-gaap:TransferredOverTimeMember2022-01-012022-09-30 0001001385us-gaap:TransferredOverTimeMember2021-01-012021-09-30 0001001385us-gaap:TransferredAtPointInTimeMember2022-07-012022-09-30 0001001385us-gaap:TransferredAtPointInTimeMember2021-07-012021-09-30 0001001385us-gaap:TransferredAtPointInTimeMember2022-01-012022-09-30 0001001385us-gaap:TransferredAtPointInTimeMember2021-01-012021-09-30 00010013852022-10-012022-09-30 00010013852023-01-012022-09-30 0001001385us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2021-12-31 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2021-12-31 0001001385us-gaap:InterestRateSwapMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2021-12-31 0001001385us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-01-012022-09-30 0001001385us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember2022-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMemberus-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2022-07-012022-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMemberus-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2021-07-012021-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMemberus-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2022-01-012022-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMemberus-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember2021-01-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:ForeignExchangeForwardMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:InterestRateSwapMemberus-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-07-012022-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-07-012021-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2022-01-012022-09-30 0001001385us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember2021-01-012021-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:EngineeredSteelPressurePipeMember2022-07-012022-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:EngineeredSteelPressurePipeMember2021-07-012021-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:EngineeredSteelPressurePipeMember2022-01-012022-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:EngineeredSteelPressurePipeMember2021-01-012021-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:PrecastInfrastructureAndEngineeredSystemsMember2022-07-012022-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:PrecastInfrastructureAndEngineeredSystemsMember2021-07-012021-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:PrecastInfrastructureAndEngineeredSystemsMember2022-01-012022-09-30 0001001385us-gaap:OperatingSegmentsMembernwpx:PrecastInfrastructureAndEngineeredSystemsMember2021-01-012021-09-30
 

Table of Contents


UNITED STATES

SECURITIES AND EXCHANGE COMMISSION

Washington, D.C. 20549

 

FORM 10-Q

 

QUARTERLY REPORT PURSUANT TO SECTION 13 OR 15(d) OF THE SECURITIES EXCHANGE ACT OF 1934

 

For the quarterly period ended: September 30, 2022

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: 0-27140

 

NORTHWEST PIPE COMPANY

(Exact name of registrant as specified in its charter)

 

Oregon

93-0557988

(State or other jurisdiction of incorporation or organization)

(I.R.S. Employer Identification No.)

 

201 NE Park Plaza Drive, Suite 100

Vancouver, Washington 98684

(Address of principal executive offices and Zip Code)

 

3603976250

(Registrant’s telephone number, including area code)

 

Securities registered pursuant to Section 12(b) of the Act:

 

Title of each class

Trading Symbol(s)

Name of each exchange on which registered

Common Stock, par value $0.01 per share

NWPX

Nasdaq 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 (§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  ☒

 

The number of shares outstanding of the registrant’s common stock as of November 1, 2022 was 9,927,360 shares.

 


 

 

 

 

NORTHWEST PIPE COMPANY

FORM 10Q

TABLE OF CONTENTS

 

 

Page

PART I - FINANCIAL INFORMATION

 
   

Item 1. Financial Statements (Unaudited):

 
   

Condensed Consolidated Statements of Operations for the three and nine months ended September 30, 2022 and 2021

2

   

Condensed Consolidated Statements of Comprehensive Income for the three and nine months ended September 30, 2022 and 2021

3

   

Condensed Consolidated Balance Sheets as of September 30, 2022 and December 31, 2021

4

   

Condensed Consolidated Statements of Stockholders Equity for the three and nine months ended September 30, 2022 and 2021

5

   

Condensed Consolidated Statements of Cash Flows for the nine months ended September 30, 2022 and 2021

7

   

Notes to Condensed Consolidated Financial Statements

8

   

Item 2. Managements Discussion and Analysis of Financial Condition and Results of Operations

21

   

Item 3. Quantitative and Qualitative Disclosures About Market Risk

28

   

Item 4. Controls and Procedures

28

   

PART II - OTHER INFORMATION

 
   

Item 1. Legal Proceedings

29

   

Item 1A. Risk Factors

29

   

Item 6. Exhibits

29

   

Signatures

31

 

 

Part I  FINANCIAL INFORMATION

 

Item 1. Financial Statements

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF OPERATIONS

(Unaudited)

(In thousands, except per share amounts)

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Net sales

 $122,984  $84,643  $350,837  $230,766 

Cost of sales

  97,866   72,280   286,853   200,090 

Gross profit

  25,118   12,363   63,984   30,676 

Selling, general, and administrative expense

  10,654   5,562   30,149   17,729 

Operating income

  14,464   6,801   33,835   12,947 

Other income

  11   171   56   260 

Interest expense

  (964

)

  (112

)

  (2,393

)

  (687

)

Income before income taxes

  13,511   6,860   31,498   12,520 

Income tax expense

  3,555   1,914   8,310   3,268 

Net income

 $9,956  $4,946  $23,188  $9,252 
                 

Net income per share:

                

Basic

 $1.00  $0.50  $2.34  $0.94 

Diluted

 $0.99  $0.50  $2.32  $0.93 
                 

Shares used in per share calculations:

                

Basic

  9,927   9,871   9,909   9,849 

Diluted

  10,010   9,921   9,988   9,918 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF COMPREHENSIVE INCOME

(Unaudited)

(In thousands)

 

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Net income

 $9,956  $4,946  $23,188  $9,252 
                 

Other comprehensive income (loss), net of tax:

                

Pension liability adjustment

  22   29   66   87 

Unrealized gain (loss) on foreign currency forward contracts designated as cash flow hedges

  158   25   (245)  73 

Unrealized gain on interest rate swap designated as cash flow hedge

  428   -   661   - 

Other comprehensive income, net of tax

  608   54   482   160 

Comprehensive income

 $10,564  $5,000  $23,670  $9,412 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED BALANCE SHEETS

(Unaudited)

(Dollar amounts in thousands, except per share amounts)

 

  

September 30, 2022

  

December 31, 2021

 

Assets

        

Current assets:

        

Cash and cash equivalents

 $3,706  $2,997 

Trade and other receivables, less allowance for doubtful accounts of $498 and $503

  73,975   52,664 

Contract assets

  117,260   107,170 

Inventories

  71,578   59,651 

Prepaid expenses and other

  4,326   5,744 

Total current assets

  270,845   228,226 

Property and equipment, less accumulated depreciation and amortization of $115,377 and $106,957

  124,228   121,266 

Operating lease right-of-use assets

  94,166   98,507 

Goodwill

  55,504   53,684 

Intangible assets, net

  36,334   39,376 

Other assets

  5,400   6,620 

Total assets

 $586,477  $547,679 
         

Liabilities and Stockholders Equity

        

Current liabilities:

        
Current debt $3,525  $- 

Accounts payable

  40,444   32,267 

Accrued liabilities

  32,561   24,498 

Contract liabilities

  16,243   2,623 

Current portion of operating lease liabilities

  4,725   4,704 

Total current liabilities

  97,498   64,092 

Borrowings on line of credit

  71,817   86,761 

Operating lease liabilities

  90,231   93,725 

Deferred income taxes

  10,982   10,984 

Other long-term liabilities

  7,272   8,734 

Total liabilities

  277,800   264,296 
         

Commitments and contingencies (Note 10)

          
         

Stockholders’ equity:

        

Preferred stock, $.01 par value, 10,000,000 shares authorized, none issued or outstanding

  -   - 

Common stock, $.01 par value, 15,000,000 shares authorized, 9,927,360 and 9,870,567 shares issued and outstanding as of September 30, 2022 and December 31, 2021, respectively

  99   99 

Additional paid-in-capital

  126,686   125,062 

Retained earnings

  183,092   159,904 

Accumulated other comprehensive loss

  (1,200

)

  (1,682

)

Total stockholders’ equity

  308,677   283,383 

Total liabilities and stockholders’ equity

 $586,477  $547,679 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS EQUITY

(Unaudited)

(Dollar amounts in thousands)

 

                  

Accumulated

     
          

Additional

      

Other

  

Total

 
  

Common Stock

  

Paid-In-

  

Retained

  

Comprehensive

  

Stockholders

 
  

Shares

  

Amount

  

Capital

  

Earnings

  

Loss

  

Equity

 
                         

Balances, June 30, 2022

  9,927,360  $99  $125,517  $173,136  $(1,808

)

 $296,944 

Net income

  -   -   -   9,956   -   9,956 

Other comprehensive income:

                        

Pension liability adjustment, net of tax expense of $0

  -   -   -   -   22   22 

Unrealized gain on foreign currency forward contracts designated as cash flow hedges, net of tax benefit of $142

  -   -   -   -   158   158 

Unrealized gain on interest rate swap designated as cash flow hedge, net of tax expense of $141

  -   -   -   -   428   428 

Share-based compensation expense

  -   -   1,169   -   -   1,169 

Balances, September 30, 2022

  9,927,360  $99  $126,686  $183,092  $(1,200

)

 $308,677 

 

                  

Accumulated

     
          

Additional

      

Other

  

Total

 
  

Common Stock

  

Paid-In-

  

Retained

  

Comprehensive

  

Stockholders

 
  

Shares

  

Amount

  

Capital

  

Earnings

  

Loss

  

Equity

 
                         

Balances, June 30, 2021

  9,870,567  $99  $123,686  $152,687  $(1,760

)

 $274,712 

Net income

  -   -   -   4,946   -   4,946 

Other comprehensive income:

                        

Pension liability adjustment, net of tax expense of $0

  -   -   -   -   29   29 

Unrealized gain on foreign currency forward contracts designated as cash flow hedges, net of tax expense of $8

  -   -   -   -   25   25 

Share-based compensation expense

  -   -   597   -   -   597 

Balances, September 30, 2021

  9,870,567  $99  $124,283  $157,633  $(1,706

)

 $280,309 

 

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF STOCKHOLDERS EQUITY, Continued

(Unaudited)

(Dollar amounts in thousands)

 

                  

Accumulated

     
          

Additional

      

Other

  

Total

 
  

Common Stock

  

Paid-In-

  

Retained

  

Comprehensive

  

Stockholders

 
  

Shares

  

Amount

  

Capital

  

Earnings

  

Loss

  

Equity

 
                         

Balances, December 31, 2021

  9,870,567  $99  $125,062  $159,904  $(1,682

)

 $283,383 

Net income

  -   -   -   23,188   -   23,188 

Other comprehensive income (loss):

                        

Pension liability adjustment, net of tax expense of $0

  -   -   -   -   66   66 

Unrealized loss on foreign currency forward contracts designated as cash flow hedges, net of tax benefit of $83

  -   -   -   -   (245)  (245)

Unrealized gain on interest rate swap designated as cash flow hedge, net of tax expense of $218

  -   -   -   -   661   661 

Issuance of common stock under stock compensation plans, net of tax withholdings

  56,793   -   (853)  -   -   (853)

Share-based compensation expense

  -   -   2,477   -   -   2,477 

Balances, September 30, 2022

  9,927,360  $99  $126,686  $183,092  $(1,200

)

 $308,677 

 

                  

Accumulated

     
          

Additional

      

Other

  

Total

 
  

Common Stock

  

Paid-In-

  

Retained

  

Comprehensive

  

Stockholders

 
  

Shares

  

Amount

  

Capital

  

Earnings

  

Loss

  

Equity

 
                         

Balances, December 31, 2020

  9,805,437  $98  $123,013  $148,381  $(1,866

)

 $269,626 

Net income

  -   -   -   9,252   -   9,252 

Other comprehensive income:

                        

Pension liability adjustment, net of tax expense of $0

  -   -   -   -   87   87 

Unrealized gain on foreign currency forward contracts designated as cash flow hedges, net of tax expense of $21

  -   -   -   -   73   73 

Issuance of common stock under stock compensation plans, net of tax withholdings

  65,130   1   (1,167

)

  -   -   (1,166

)

Share-based compensation expense

  -   -   2,437   -   -   2,437 

Balances, September 30, 2021

  9,870,567  $99  $124,283  $157,633  $(1,706

)

 $280,309 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

CONDENSED CONSOLIDATED STATEMENTS OF CASH FLOWS

(Unaudited)

(In thousands)

 

  

Nine Months Ended September 30,

 
  

2022

  

2021

 

Cash flows from operating activities:

        

Net income

 $23,188  $9,252 
Adjustments to reconcile net income to net cash provided by (used in) operating activities:        

Depreciation and finance lease amortization

  9,321   8,358 

Amortization of intangible assets

  3,369   947 

Deferred income taxes

  (3)  (89

)

Share-based compensation expense

  2,477   2,437 

Other, net

  (305)  106 
Changes in operating assets and liabilities:        

Trade and other receivables

  (21,588)  3,181 

Contract assets, net

  3,531   (35,055

)

Inventories

  (11,927)  (13,813

)

Prepaid expenses and other assets

  8,789   6,383 

Accounts payable

  8,350   6,725 

Accrued and other liabilities

  315   (2,057

)

Net cash provided by (used in) operating activities

  25,517   (13,625

)

Cash flows from investing activities:

        

Purchases of property and equipment

  (11,792)  (8,126

)

Other investing activities

  (288)  304 

Net cash used in investing activities

  (12,080)  (7,822

)

Cash flows from financing activities:

        

Borrowings on line of credit

  121,103   4,720 

Repayments on line of credit

  (136,047)  (2,567

)

Borrowings on other debt  3,525   - 

Payments on other debt

  -   (13,762

)

Payments on finance lease obligations

  (409)  (297

)

Tax withholdings related to net share settlements of equity awards

  (853)  (1,166

)

Other financing activities

  (47)  (220

)

Net cash used in financing activities

  (12,728)  (13,292

)

Change in cash and cash equivalents

  709   (34,739

)

Cash and cash equivalents, beginning of period

  2,997   37,927 

Cash and cash equivalents, end of period

 $3,706  $3,188 
         

Noncash investing and financing activities:

        

Accrued property and equipment purchases

 $614  $756 

Accrued consideration in acquisition of business

 $1,820  $- 

Right-of-use assets obtained in exchange for operating lease liabilities

 $26  $4,669 

Right-of-use assets obtained in exchange for finance lease liabilities

 $894  $855 

 

The accompanying notes are an integral part of these condensed consolidated financial statements.

 

 

NORTHWEST PIPE COMPANY AND SUBSIDIARIES

NOTES TO CONDENSED CONSOLIDATED FINANCIAL STATEMENTS

(Unaudited)

 

 

 

1.

Organization and Basis of Presentation

 

Northwest Pipe Company (collectively with its subsidiaries, the “Company”) is a leading manufacturer of water related infrastructure products, and operates in two segments, Engineered Steel Pressure Pipe (“SPP”) and Precast Infrastructure and Engineered Systems (“Precast”). This segment presentation is consistent with how the Company’s chief operating decision maker, its Chief Executive Officer, evaluates performance of the Company and makes decisions regarding the allocation of resources.

 

In addition to being the largest manufacturer of engineered steel water pipeline systems in North America, the Company manufactures high-quality precast and reinforced concrete products; water, wastewater, and stormwater equipment; steel casing pipe, bar-wrapped concrete cylinder pipe, and one of the largest offerings of pipeline system joints, fittings, and specialized components. Strategically positioned to meet growing water and wastewater infrastructure needs, the Company provides solution-based products for a wide range of markets under the ParkUSA, Geneva Pipe and Precast, Permalok®, and Northwest Pipe Company lines. The Company is headquartered in Vancouver, Washington, and has 13 manufacturing facilities across North America.

 

The Condensed Consolidated Financial Statements are expressed in United States Dollars and include the accounts of the Company and its subsidiaries over which the Company exercises control as of the financial statement date. Intercompany accounts and transactions have been eliminated.

 

Effective in the fourth quarter of 2021, as a result of the acquisition of Park Environmental Equipment, LLC (“ParkUSA”), the Company revised its historical one segment position and identified the new operating segments, SPP and Precast, to align with changes made in its internal management structure and its reporting structure of financial information used to assess performance and allocate resources. See Note 15, “Segment Information” for detailed descriptions of these segments. As a result, certain amounts from the prior year financial statements have been reclassified in order to conform to the current year presentation.

 

The accompanying unaudited interim Condensed Consolidated Financial Statements have been prepared in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial information. The financial information as of December 31, 2021 is derived from the audited Consolidated Financial Statements presented in the Company’s Annual Report on Form 10‑K for the year ended December 31, 2021 (“2021 Form 10‑K”). Certain information and footnote disclosures normally included in consolidated financial statements prepared in accordance with U.S. GAAP have been condensed or omitted, pursuant to the rules and regulations of the Securities and Exchange Commission and the accounting standards for interim financial statements. In the opinion of management, the accompanying Condensed Consolidated Financial Statements include all adjustments necessary (which are of a normal and recurring nature) for the fair statement of the results of the interim periods presented. The Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements and Notes thereto together with management’s discussion and analysis of financial condition and results of operations contained in the Company’s 2021 Form 10‑K.

 

Operating results for the three and nine months ended September 30, 2022 are not necessarily indicative of the results that may be expected for the entire fiscal year ending December 31, 2022.

 

 

2.

Business Combination

 

On October 5, 2021, the Company completed the acquisition of 100% of Park Environmental Equipment, LLC (ParkUSA) for a purchase price of $90.2 million in cash which is included in the Precast segment for all periods following the acquisition date. ParkUSA is a precast concrete and steel fabrication-based company that develops and manufactures water, wastewater, and environmental solutions. Operations continue with ParkUSA’s previous management and workforce at its three Texas manufacturing facilities located in Houston, Dallas, and San Antonio.

 

8

 

The following table summarizes the purchase consideration and fair value of the assets acquired and liabilities assumed as of October 5, 2021 (in thousands):

 

Assets

    

Cash and cash equivalents

 $278 

Trade and other receivables

  11,034 

Inventories

  12,773 

Prepaid expenses and other

  293 

Property and equipment

  8,076 

Operating lease right-of-use assets

  58,301 

Intangible assets

  31,000 

Deferred income taxes

  347 

Total assets acquired

  122,102 
     

Liabilities

    

Accounts payable

  2,029 

Accrued liabilities

  4,067 

Operating lease liabilities

  58,301 

Total liabilities assumed

  64,397 
     

Goodwill

  32,519 
     

Total purchase consideration

 $90,224 

 

The tangible and intangible assets acquired and liabilities assumed were recognized based on their estimated fair values on the acquisition date, with the excess purchase consideration recorded as goodwill. As a result of additional information obtained during the measurement period about facts and circumstances that existed as of the acquisition date, the Company recorded measurement period adjustments during the three and nine months ended September 30, 2022 which resulted in a $1.8 million increase in goodwill and purchase consideration related to the settlement of working capital. The measurement period for the ParkUSA acquisition was complete as of September 30, 2022.

 

The following table summarizes the components of the intangible assets acquired and their estimated useful lives:

 

  

Estimated Useful Life

  

Fair Value

 
  

(In years)

  

(In thousands)

 
         

Customer relationships

  10.0  $19,800 

Trade names and trademarks

  10.0   9,600 

Patents

  21.0   1,300 

Backlog

  0.6   300 

Total intangible assets

  10.2  $31,000 

 

Goodwill arose from the acquisition of an assembled workforce, expansion of product offerings, and management’s industry know-how, and is deductible for tax purposes.

 

The Company incurred transaction costs associated with this acquisition of $0 and $0.1 million during the three and nine months ended September 30, 2022, respectively and $0.6 million and $0.8 million during the three and nine months ended September 30, 2021, respectively. These transaction costs are included in Selling, general, and administrative expense in the Condensed Consolidated Statements of Operations.

 

9

 

Unaudited Pro Forma Disclosures

 

The following unaudited pro forma summary presents the consolidated results of the Company as if the acquisition of ParkUSA had occurred on January 1 of the year prior to the acquisition (in thousands):

 

  Three Months Ended  Nine Months Ended 
  

September 30, 2021

  

September 30, 2021

 
         

Net sales

 $105,345  $283,005 

Net income

  2,477   12,247 

 

This unaudited pro forma consolidated financial data is included only for the purpose of illustration and does not necessarily indicate what the operating results would have been if the acquisition of ParkUSA had occurred on January 1 of the year prior to the acquisition. Moreover, this information is not indicative of what the Company’s future operating results will be. The information prior to the acquisition is included based on prior accounting records maintained by ParkUSA. The pro forma amounts have been calculated after applying the Company’s accounting policies and adjusting the results of ParkUSA to reflect the additional depreciation and amortization that would have been charged assuming the fair value adjustments to property and equipment and intangible assets had been applied on January 1 of the year prior to the acquisition. Adjustments also include an increase of interest expense as if the Company’s debt obtained in connection with the acquisition of ParkUSA had been outstanding since January 1 of the year prior to the acquisition. The provision for income taxes has also been adjusted for all periods, based upon the foregoing adjustments to historical results.

 

 

3.

Inventories

 

Inventories consist of the following (in thousands):

 

  

September 30, 2022

  

December 31, 2021

 
         

Raw materials

 $52,915  $44,697 

Work-in-process

  3,817   3,018 

Finished goods

  12,646   10,096 

Supplies

  2,200   1,840 

Total inventories

 $71,578  $59,651 

 

 

4.

Goodwill

 

The Company has recorded goodwill in connection with its business acquisitions within the Precast reportable segment. The changes in the carrying amount of goodwill for the nine months ended September 30, 2022 were as follows (in thousands):

 

Goodwill, December 31, 2021

 $53,684 

Measurement period adjustment (Note 2)

  1,820 

Goodwill, September 30, 2022

 $55,504 

 

 

5.

Current Debt

 

In August 2022, the Company entered into an Interim Funding Agreement (“IFA”) with Wells Fargo Equipment Finance, Inc. (“WFEF”) allowing for aggregate interim funding advances up to $13.5 million of equipment purchased for a new reinforced concrete pipe mill, to be converted into a term loan upon final delivery and acceptance of the financed equipment. The IFA bears interest at the Term Secured Overnight Finance Rate plus 1.75%, requires monthly payments of accrued interest, and grants a security interest in the equipment to WFEF. As of September 30, 2022, the outstanding balance was $3.5 million, which is classified as a current liability since there is not a firm commitment for long-term debt financing.

 

10

 
 

6.

Fair Value Measurements

 

Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability, in the principal or most advantageous market for the asset or liability, in an orderly transaction between market participants at the measurement date.

 

The authoritative guidance establishes a fair value hierarchy that prioritizes the inputs to valuation techniques used to measure fair value into three broad levels. These levels are: Level 1 (inputs are quoted prices in active markets for identical assets or liabilities); Level 2 (inputs are other than quoted prices that are observable, either directly or indirectly through corroboration with observable market data); and Level 3 (inputs are unobservable, with little or no market data that exists, such as internal financial forecasts). The Company is required to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value.

 

The following table summarizes information regarding the Company’s financial assets and liabilities that are measured at fair value on a recurring basis (in thousands):

 

  

Total

  

Level 1

  

Level 2

  

Level 3

 

As of September 30, 2022

                

Financial assets:

                

Deferred compensation plan

 $3,410  $2,902  $508  $- 

Interest rate swaps

  879   -   879   - 

Foreign currency forward contracts

  1,123   -   1,123   - 

Total financial assets

 $5,412  $2,902  $2,510  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(1,209

)

 $-  $(1,209

)

 $- 
                 

As of December 31, 2021

                

Financial assets:

                

Deferred compensation plan

 $4,321  $3,830  $491  $- 

Foreign currency forward contracts

  17   -   17   - 

Total financial assets

 $4,338  $3,830  $508  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(661

)

 $-  $(661

)

 $- 

 

The deferred compensation plan assets consist of cash and several publicly traded stock and bond mutual funds, valued using quoted market prices in active markets, classified as Level 1 within the fair value hierarchy, as well as guaranteed investment contracts, valued at principal plus interest credited at contract rates, classified as Level 2 within the fair value hierarchy. Deferred compensation plan assets are included within Other assets in the Condensed Consolidated Balance Sheets.

 

The foreign currency forward contracts and interest rate swaps are derivatives valued using various pricing models or discounted cash flow analyses that incorporate observable market parameters, such as interest rate yield curves and currency rates, and are classified as Level 2 within the fair value hierarchy. Derivative valuations incorporate credit risk adjustments that are necessary to reflect the probability of default by the counterparty or the Company. The foreign currency forward contracts and interest rate swaps are presented at their gross fair values. Foreign currency forward contract and interest rate swap assets are included within Prepaid expenses and other and foreign currency forward contract liabilities are included within Accrued liabilities in the Condensed Consolidated Balance Sheets.

 

The net carrying amounts of cash and cash equivalents, trade and other receivables, accounts payable, accrued liabilities, and borrowings on the line of credit approximate fair value due to the short-term nature of these instruments.

 

 

7.

Derivative Instruments and Hedging Activities

 

In the normal course of business, the Company is exposed to interest rate and foreign currency exchange rate fluctuations. Consistent with the Company’s strategy for financial risk management, the Company has established a program that utilizes foreign currency forward contracts and interest rate swaps to offset the risks associated with the effects of these exposures.

 

11

 

For each derivative entered into in which the Company seeks to obtain cash flow hedge accounting treatment, the Company formally documents all relationships between hedging instruments and hedged items, as well as its risk management objective and strategy for undertaking the hedge transaction, the nature of the risk being hedged, how the hedging instrument’s effectiveness in offsetting the hedged risk will be assessed prospectively and retrospectively, and a description of the method of measuring ineffectiveness. This process includes linking all derivatives to specific firm commitments or forecasted transactions and designating the derivatives as cash flow hedges. The Company also formally assesses, both at the hedge’s inception and on an ongoing basis, whether the derivatives that are used in hedging transactions are highly effective in offsetting changes in cash flows of hedged items. The effective portion of these hedged items is reflected in Unrealized gain (loss) on cash flow hedges on the Condensed Consolidated Statements of Comprehensive Income. If it is determined that a derivative is not highly effective, or that it has ceased to be a highly effective hedge, the Company is required to discontinue hedge accounting with respect to that derivative prospectively.

 

As of September 30, 2022, the total notional amount of the foreign currency forward contracts was $17.8 million (CAD$24.6 million) and $7.3 million (EUR$7.4 million), which included $0.7 million (CAD$1.0 million) of foreign currency forward contracts not designated as cash flow hedges. As of December 31, 2021, the total notional amount of the foreign currency forward contracts was $19.0 million (CAD$24.1 million), and all foreign currency forward contracts were designated as cash flow hedges. As of September 30, 2022, the Company’s foreign currency forward contracts mature at various dates through October 2023 and are subject to an enforceable master netting arrangement.

 

As of September 30, 2022, the interest rate swap, which effectively converts a portion of the Company’s variable-rate debt to fixed-rate debt, was designated as cash flow hedge. The Company receives floating interest payments monthly based on the Secured Overnight Financing Rate (“SOFR”) and pays a fixed rate of 1.941% to the counterparty. As of September 30, 2022, the total notional amount was $31.7 million, which amortizes ratably on a monthly basis to zero by the April 2024 maturity date.

 

On August 9, 2022, the Company entered into an interest rate swap transaction which will begin April 3, 2023 at a notional amount of $15.0 million, which will amortize ratably on a monthly basis to zero by the April 2028 maturity date. The Company will receive floating interest payments monthly based on the 30‑day Average SOFR and will pay a fixed rate of 2.96% to the counterparty.

 

The following table summarizes the gains (losses) recognized on derivatives in the Condensed Consolidated Financial Statements (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Foreign currency forward contracts:

                

Net sales

 $599  $145  $841  $44 

Property and equipment

  32   -   (95)  - 
                 

Interest rate swaps:

                

Interest expense

  4   -   (78)  - 

Total

 $635  $145  $668  $44 

 

As of September 30, 2022, unrealized pretax gains (losses) on outstanding cash flow hedges in Accumulated other comprehensive loss was $0.3 million, of which $0.4 million, $(1.1) million, and $0.6 million are expected to be reclassified to Net sales, Property and equipment, and Interest expense, respectively, within the next twelve months as a result of underlying hedged transactions also being recorded in these line items. See Note 13, “Accumulated Other Comprehensive Loss” for additional information regarding foreign currency forward contract gains and losses.

 

12

 
 

8.

Stockholders’ Equity

 

At-the-Market Offering

 

On September 2, 2022, the Company entered into an Open Market Sale Agreement (the “At-the-Market Offering”) with Jefferies LLC (“Jefferies”), pursuant to which the Company may issue and sell shares of its common stock, par value $0.01 per share, having aggregate offering sales proceeds of up to $50,000,000 (the “Shares”) from time to time through Jefferies as its sales agent. The Company may sell the Shares in amounts and at times to be determined by the Company from time to time subject to the terms and conditions of the At-the-Market Offering, but it has no obligation to sell any of the Shares under the At-the-Market Offering. The Shares to be sold under the At-the-Market Offering, if any, will be offered and sold pursuant to the Company’s shelf registration statement on Form S‑3 (File No. 333‑249637) filed with the Securities and Exchange Commission, which became effective on November 3, 2020, and the prospectus supplement dated September 2, 2022 filed by the Company. The Company will pay Jefferies a cash commission of up to 3.0% of gross proceeds from the sale of the Shares pursuant to the At-the-Market Offering. The Company has also agreed to provide Jefferies with customary indemnification and contribution rights. No proceeds were raised under the At-the-Market Offering during the three and nine months ended September 30, 2022.

 

 

9.

Share-based Compensation

 

The Company has one active stock incentive plan for employees and directors, the 2022 Stock Incentive Plan, which provides for awards of stock options to purchase shares of common stock, stock appreciation rights, restricted and unrestricted shares of common stock, restricted stock units (“RSUs”), and performance share awards (“PSAs”). In addition, the Company has one inactive stock incentive plan, the 2007 Stock Incentive Plan, under which previously granted awards remain outstanding.

 

The Company recognizes the compensation cost of employee and director services received in exchange for awards of equity instruments based on the grant date estimated fair value of the awards. The Company estimates the fair value of RSUs and PSAs using the value of the Company’s stock on the date of grant. Share-based compensation cost is recognized over the period during which the employee or director is required to provide service in exchange for the award and, as forfeitures occur, the associated compensation cost recognized to date is reversed. For awards with performance-based payout conditions, the Company recognizes compensation cost based on the probability of achieving the performance conditions, with changes in expectations recognized as an adjustment to earnings in the period of change. Any recognized compensation cost is reversed if the conditions are ultimately not met.

 

The following table summarizes share-based compensation expense recorded (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Cost of sales

 $474  $202  $822  $685 

Selling, general, and administrative expense

  695   395   1,655   1,752 

Total

 $1,169  $597  $2,477  $2,437 

 

Restricted Stock Units and Performance Share Awards

 

The Company’s stock incentive plan provides for equity instruments, such as RSUs and PSAs, which grant the right to receive a specified number of shares over a specified period of time. RSUs and PSAs are service-based awards that vest according to the terms of the grant. PSAs have performance-based payout conditions.

 

13

 

The following table summarizes the Company’s RSU and PSA activity:

 

  

Number of RSUs and PSAs (1)

  

Weighted-Average Grant Date Fair Value

 
         

Unvested RSUs and PSAs as of December 31, 2021

  161,131  $30.26 

RSUs and PSAs granted

  116,622   30.68 

Unvested RSUs and PSAs canceled

  (8,248

)

  31.18 

RSUs and PSAs vested (2)

  (68,581

)

  29.29 

Unvested RSUs and PSAs as of September 30, 2022

  200,924   30.80 

 

(1)

The number of PSAs disclosed in this table are at the target level of 100%.

  

(2)

For the PSAs vested on March 31, 2022, the actual number of common shares that were issued was determined by multiplying the PSAs at the target level of 100%, as disclosed in this table, by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the 2020-2021 performance period and 93% for the 2021 performance period.

 

The unvested balance of RSUs and PSAs as of September 30, 2022 includes approximately 149,000 PSAs at the target level of 100%. The vesting of these awards is subject to the achievement of specified performance-based conditions, and the actual number of common shares that will ultimately be issued will be determined by multiplying this number of PSAs by a payout percentage ranging from 0% to 200%.

 

Based on the estimated level of achievement of the performance targets associated with the PSAs as of September 30, 2022, unrecognized compensation expense related to the unvested portion of the Company’s RSUs and PSAs was $4.6 million, which is expected to be recognized over a weighted-average period of 1.6 years.

 

Stock Awards

 

For the nine months ended September 30, 2022 and 2021, stock awards of 11,380 shares and 12,606 shares, respectively, were granted to non-employee directors, which vested immediately upon issuance. The Company recorded compensation expense based on the weighted-average fair market value per share of the awards on the grant date of $30.75 in 2022 and $30.94 in 2021.

 

 

10.

Commitments and Contingencies

 

Portland Harbor Superfund Site

 

In December 2000, a section of the lower Willamette River known as the Portland Harbor Superfund Site was included on the National Priorities List at the request of the United States Environmental Protection Agency (“EPA”). While the Company’s Portland, Oregon manufacturing facility does not border the Willamette River, an outfall from the facility’s stormwater system drains into a neighboring property’s privately owned stormwater system and slip. Also in December 2000, the Company was notified by the EPA and the Oregon Department of Environmental Quality (“ODEQ”) of potential liability under the Comprehensive Environmental Response, Compensation, and Liability Act (“CERCLA”). A remedial investigation and feasibility study of the Portland Harbor Superfund Site was directed by a group of 14 potentially responsible parties known as the Lower Willamette Group under agreement with the EPA. The EPA finalized the remedial investigation report in February 2016, and the feasibility study in June 2016, which identified multiple remedial alternatives. In January 2017, the EPA issued its Record of Decision selecting the remedy for cleanup at the Portland Harbor Superfund Site, which it believes will cost approximately $1 billion at net present value and 13 years to complete. The EPA has not yet determined who is responsible for the costs of cleanup or how the cleanup costs will be allocated among the more than 150 potentially responsible parties. Because of the large number of potentially responsible parties and the variability in the range of remediation alternatives, the Company is unable to estimate an amount or an amount within a range of costs for its obligation with respect to the Portland Harbor Superfund Site matters, and no further adjustment to the Condensed Consolidated Financial Statements has been recorded as of the date of this filing.

 

The ODEQ is separately providing oversight of voluntary investigations and source control activities by the Company involving the Company’s site, which are focused on controlling any current “uplands” releases of contaminants into the Willamette River. No liabilities have been established in connection with these investigations because the extent of contamination and the Company’s responsibility for the contamination have not yet been determined.

 

14

 

Concurrent with the activities of the EPA and the ODEQ, the Portland Harbor Natural Resources Trustee Council (“Trustees”) sent some or all of the same parties, including the Company, a notice of intent to perform a Natural Resource Damage Assessment (“NRDA”) for the Portland Harbor Superfund Site to determine the nature and extent of natural resource damages under CERCLA Section 107. The Trustees for the Portland Harbor Superfund Site consist of representatives from several Northwest Indian Tribes, three federal agencies, and one state agency. The Trustees act independently of the EPA and the ODEQ. The Trustees have encouraged potentially responsible parties to voluntarily participate in the funding of their injury assessments and several of those parties have agreed to do so. In June 2014, the Company agreed to participate in the injury assessment process, which included funding $0.4 million of the assessment. The Company has not assumed any additional payment obligations or liabilities with the participation with the NRDA, nor does the Company expect to incur significant future costs in the resolution of the NRDA.

 

In January 2017, the Confederated Tribes and Bands of the Yakama Nation, a Trustee until they withdrew from the council in 2009, filed a complaint against the potentially responsible parties including the Company to recover costs related to their own injury assessment and compensation for natural resources damages. The Company does not have sufficient information to determine the likelihood of a loss in this matter or the amount of damages that could be allocated to the Company.

 

The Company has insurance policies for defense costs, as well as indemnification policies it believes will provide reimbursement for the remediation assessed. However, the Company can provide no assurance that those policies will cover all of the costs which the Company may incur.

 

All Sites

 

The Company operates its facilities under numerous governmental permits and licenses relating to air emissions, stormwater runoff, and other environmental matters. The Company’s operations are also governed by many other laws and regulations, including those relating to workplace safety and worker health, principally the Occupational Safety and Health Act and regulations there under which, among other requirements, establish noise and dust standards. The Company believes it is in material compliance with its permits and licenses and these laws and regulations, and the Company does not believe that future compliance with such laws and regulations will have a material adverse effect on its financial position, results of operations, or cash flows.

 

Other Contingencies and Legal Proceedings

 

From time to time, the Company is party to a variety of legal actions, including claims, suits, complaints, and investigations arising out of the ordinary course of its business. The Company maintains insurance coverage against potential claims in amounts that are believed to be adequate. To the extent that insurance does not cover legal, defense, and indemnification costs associated with a loss contingency, the Company records accruals when such losses are considered probable and reasonably estimable. The Company believes that it is not presently a party to legal actions, the outcomes of which would have a material adverse effect on its business, financial condition, results of operations, or cash flows.

 

Commitments

 

As of September 30, 2022, the Company’s commitments include approximately $7.3 million relating to its investment in a new reinforced concrete pipe mill for which the Company has not yet received the equipment.

 

Guarantees

 

The Company has entered into certain letters of credit that total $1.1 million as of September 30, 2022. The letters of credit relate to workers’ compensation insurance.

 

 

11.

Revenue

 

The Company manufactures water infrastructure steel pipe products, which are generally made to custom specifications for installation contractors serving projects funded by public water agencies, as well as precast and reinforced concrete products. Generally, each of the Company’s contracts with its customers contains a single performance obligation, as the promise to transfer products is not separately identifiable from other promises in the contract and, therefore, is not distinct.

 

15

 

SPP revenue for water infrastructure steel pipe products is recognized over time as the manufacturing process progresses because of the Company’s right to payment for work performed to date plus a reasonable profit on cancellations for unique products that have no alternative use to the Company. Revenue is measured by the costs incurred to date relative to the estimated total direct costs to fulfill each contract (cost-to-cost method). Contract costs include all material, labor, and other direct costs incurred in satisfying the performance obligations. The cost of steel material is recognized as a contract cost when the steel is introduced into the manufacturing process. Changes in job performance, job conditions, and estimated profitability, including those arising from contract change orders, contract penalty provisions, foreign currency exchange rate movements, changes in raw materials costs, and final contract settlements may result in revisions to estimates of revenue, costs, and income, and are recognized in the period in which the revisions are determined. Provisions for losses on uncompleted contracts, included in Accrued liabilities, are estimated by comparing total estimated contract revenue to the total estimated contract costs and a loss is recognized during the period in which it becomes probable and can be reasonably estimated.

 

Revisions in contract estimates resulted in an increase (decrease) in SPP net sales of $0.2 million and $(0.2) million for the three and nine months ended September 30, 2022, respectively, and approximately $0 and $2.1 million for the three and nine months ended September 30, 2021, respectively.

 

Precast revenue for water infrastructure concrete pipe and precast concrete products is recognized at the time control is transferred to customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for the products. All variable consideration that may affect the total transaction price, including contractual discounts, returns, and credits, is included in net sales. Estimates for variable consideration are based on historical experience, anticipated performance, and management’s judgment. The Company’s contracts do not contain significant financing.

 

The Company does not recognize revenue on a contract until the contract has approval and commitment from both parties, the contract rights and payment terms can be identified, the contract has commercial substance, and its collectability is probable.

 

Disaggregation of Revenue

 

The following table disaggregates revenue by recognition over time or at a point in time, as the Company believes it best depicts how the nature, amount, timing, and uncertainty of its revenue and cash flows are affected by economic factors (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Over time (Engineered Steel Pressure Pipe)

 $83,663  $69,439  $235,446  $188,244 

Point in time (Precast Infrastructure and Engineered Systems)

  39,321   15,204   115,391   42,522 

Net sales

 $122,984  $84,643  $350,837  $230,766 

 

Contract Assets and Liabilities

 

Contract assets primarily represent revenue earned over time but not yet billable based on the terms of the contracts. These amounts will be billed based on the terms of the contracts, which can include certain milestones, partial shipments, or completion of the contracts. Payment terms of amounts billed vary based on the customer, but are typically due within 30 days of invoicing.

 

Contract liabilities represent advance billings on contracts, typically for steel. The Company recognized revenue that was included in the contract liabilities balance at the beginning of each period of $2.8 million and $2.6 million during the three and nine months ended September 30, 2022, respectively and $1.5 million and $6.2 million during the three and nine months ended September 30, 2021, respectively.

 

Backlog

 

Backlog represents the balance of remaining performance obligations under signed contracts for SPP water infrastructure steel pipe products for which revenue is recognized over time. As of September 30, 2022, backlog was $295 million. The Company expects to recognize 25% of the remaining performance obligations in 2022, 52% in 2023, and the balance thereafter.

 

16

 
 

12.

Income Taxes

 

The Company files income tax returns in the United States Federal jurisdiction, in a limited number of foreign jurisdictions, and in many state jurisdictions. With few exceptions, the Company is no longer subject to United States Federal, state, or foreign income tax examinations for years before 2018.

 

The Company recorded income tax expense at an estimated effective income tax rate of 26.3% and 26.4% for the three and nine months ended September 30, 2022, respectively and 27.9% and 26.1% for the three and nine months ended September 30, 2021, respectively. The Company’s estimated effective income tax rates for the three and nine months ended September 30, 2022 and 2021 were primarily impacted by non-deductible permanent differences.

 

 

13.

Accumulated Other Comprehensive Loss

 

The following table summarizes changes in the components of Accumulated other comprehensive loss (in thousands). All amounts are net of income tax:

 

  

Pension Liability Adjustment

  

Unrealized Loss on Foreign Currency Forward Contracts Designated as Cash Flow Hedges

  

Unrealized Gain on Interest Rate Swap Designated as Cash Flow Hedge

  

Total

 
                 

Balances, December 31, 2021

 $(1,487

)

 $(195

)

 $-  $(1,682

)

                 

Other comprehensive income (loss) before reclassifications

  61   (383)  602   280 

Amounts reclassified from Accumulated other comprehensive loss

  5   138   59   202 

Net current period other comprehensive income (loss)

  66   (245)  661   482 
                 

Balances, September 30, 2022

 $(1,421

)

 $(440

)

 $661  $(1,200

)

 

17

 

The following table provides additional detail about Accumulated other comprehensive loss components that were reclassified to the Condensed Consolidated Statements of Operations (in thousands):

 

  

Amount reclassified from

 

Affected line item

  Accumulated Other Comprehensive Loss in the Condensed
  Three Months Ended  Nine Months Ended Consolidated
Details about Accumulated Other 

September 30,

  

September 30,

 Statements of
Comprehensive Loss Components 2022  

2021

  

2022

  

2021

 Operations
                  

Pension liability adjustment:

                 

Net periodic pension cost:

                 

Service cost

 $(2) $(4

)

 $(5) $(12

)

Cost of sales

   (2)  (4

)

  (5)  (12

)

Net of tax

                  

Unrealized gain (loss) on foreign currency forward contracts:

                 

Gain (loss) on cash flow hedges

  35   (15

)

  (56)  (71

)

Net sales

Loss on cash flow hedges

  -   -   (127)  - 

Property and equipment

Associated income tax benefit

  22   4   45   18 

Income tax expense

   57   (11

)

  (138)  (53

)

Net of tax

                  

Unrealized gain (loss) on interest rate swap:

                 

Gain (loss) on cash flow hedge

  4   -   (78)  - 

Interest expense

Associated income tax (expense) benefit

  (1)  -   19   - 

Income tax expense

   3   -   (59)  - 

Net of tax

                  

Total reclassifications for the period

 $58  $(15

)

 $(202) $(65

)

 

 

 

14.

Net Income per Share

 

Basic net income per share is computed by dividing net income by the weighted-average number of shares of common stock outstanding during the period. Diluted net income per share is computed by giving effect to all potential shares of common stock, including stock options, RSUs, and PSAs, to the extent dilutive. Performance-based PSAs are considered dilutive when the related performance conditions have been met assuming the end of the reporting period represents the end of the performance period. In periods with a net loss, all potential shares of common stock are excluded from the computation of diluted net loss per share as the impact would be antidilutive.

 

18

 

Net income per basic and diluted weighted-average common share outstanding was calculated as follows (in thousands, except per share amounts):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Net income

 $9,956  $4,946  $23,188  $9,252 
                 

Basic weighted-average common shares outstanding

  9,927   9,871   9,909   9,849 

Effect of potentially dilutive common shares (1)

  83   50   79   69 

Diluted weighted-average common shares outstanding

  10,010   9,921   9,988   9,918 
                 

Net income per common share:

                

Basic

 $1.00  $0.50  $2.34  $0.94 

Diluted

 $0.99  $0.50  $2.32  $0.93 

 

(1)

The weighted-average number of antidilutive shares not included in the computation of diluted net income per share was approximately 77,000 for the three months ended September 30, 2021. There were no antidilutive shares for the three and nine months ended September 30, 2022 and the nine months ended September 30, 2021.

 

 

15.

Segment Information

 

The operating segments reported below are based on the nature of the products sold and the manufacturing process used by the Company and are the segments of the Company for which separate financial information is available and for which operating results are regularly evaluated by the Company’s chief operating decision maker, its Chief Executive Officer, to make decisions about resources to be allocated to the segment and assess its performance. Management evaluates segment performance based on gross profit. The Company does not allocate selling, general, and administrative expenses, interest, other non-operating income or expense items, or taxes to segments.

 

The Company’s Engineered Steel Pressure Pipe segment (SPP) manufactures large-diameter, high-pressure steel pipeline systems for use in water infrastructure applications, which are primarily related to drinking water systems. These products are also used for hydroelectric power systems, wastewater systems, and other applications. In addition, SPP makes products for industrial plant piping systems and certain structural applications. SPP has manufacturing facilities located in Adelanto and Tracy, California; St. Louis, Missouri; Portland, Oregon; Saginaw, Texas; Parkersburg, West Virginia; and San Luis Río Colorado, Mexico.

 

The Company’s Precast Infrastructure and Engineered Systems segment (Precast) manufactures high-quality precast and reinforced concrete products, including manholes, box culverts, vaults, catch basins, oil water separators, pump lift stations, biofiltration, and other environmental and engineered solutions. Precast has manufacturing facilities located in Dallas, Houston, and San Antonio, Texas; and Orem, Salt Lake City, and St. George, Utah.

 

19

 

The following table disaggregates revenue and gross profit based on the Company’s reportable segments (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 

Net sales:

                

Engineered Steel Pressure Pipe

 $83,663  $69,439  $235,446  $188,244 

Precast Infrastructure and Engineered Systems

  39,321   15,204   115,391   42,522 

Total

 $122,984  $84,643  $350,837  $230,766 
                 

Gross profit:

                

Engineered Steel Pressure Pipe

 $14,196  $8,844  $32,490  $22,613 

Precast Infrastructure and Engineered Systems

  10,922   3,519   31,494   8,063 

Total

 $25,118  $12,363  $63,984  $30,676 

 

 

16.

Recent Accounting and Reporting Developments

 

There have been no developments to recently issued accounting standards, including the expected dates of adoption and estimated effects on the Company’s Condensed Consolidated Financial Statements and disclosures in Notes to Condensed Consolidated Financial Statements, from those disclosed in the Company’s 2021 Form 10‑K.

 

20

 
 

Item 2. Managements Discussion and Analysis of Financial Condition and Results of Operations

 

Forward-Looking Statements

 

This Management’s Discussion and Analysis of Financial Condition and Results of Operations and other sections of this Quarterly Report on Form 10‑Q for the quarter ended September 30, 2022 (“2022 Q3 Form 10‑Q”) contain “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995 and Section 21E of the Securities Exchange Act of 1934, as amended, that are based on current expectations, estimates, and projections about our business, management’s beliefs, and assumptions made by management. Words such as “expects,” “anticipates,” “intends,” “plans,” “believes,” “seeks,” “estimates,” “forecasts,” “should,” “could,” and variations of such words and similar expressions are intended to identify such forward-looking statements. These statements are not guarantees of future performance and involve risks and uncertainties that are difficult to predict. Therefore, actual outcomes and results may differ materially from what is expressed or forecasted in such forward-looking statements as a result of a variety of important factors. While it is impossible to identify all such factors, those that could cause actual results to differ materially from those estimated by us include:

 

 

changes in demand and market prices for our products;

 

product mix;

 

bidding activity and order cancelations;

 

timing of customer orders and deliveries;

 

production schedules;

 

price and availability of raw materials;

 

excess or shortage of production capacity;

 

international trade policy and regulations;

 

changes in tariffs and duties imposed on imports and exports and related impacts on us;

 

interest rate risk and changes in market interest rates, including the impact on our customers and related demand for our products;

 

our ability to identify and complete internal initiatives and/or acquisitions in order to grow our business;

 

our ability to effectively integrate Park Environmental Equipment, LLC (“ParkUSA”) and other acquisitions into our business and operations and achieve significant administrative and operational cost synergies and accretion to financial results;

  effects of security breaches, computer viruses, and cybersecurity incidents;
 

impacts of U.S. tax reform legislation on our results of operations;

 

adequacy of our insurance coverage;

 

supply chain challenges;

 

labor shortages;

 

ongoing military conflicts in Ukraine and related consequences;

 

operating problems at our manufacturing operations including fires, explosions, inclement weather, and floods and other natural disasters;

 

impacts of pandemics, epidemics, or other public health emergencies, such as coronavirus disease 2019 (“COVID‑19”); and

 

other risks discussed in our Annual Report on Form 10‑K for the year ended December 31, 2021 (“2021 Form 10‑K”) and from time to time in our other Securities and Exchange Commission (“SEC”) filings and reports.

 

Such forward-looking statements speak only as of the date on which they are made, and we do not undertake any obligation to update any forward-looking statement to reflect events or circumstances after the date of this 2022 Q3 Form 10‑Q. If we do update or correct one or more forward-looking statements, investors and others should not conclude that we will make additional updates or corrections with respect thereto or with respect to other forward-looking statements.

 

Overview

 

Northwest Pipe Company is a leading manufacturer of water related infrastructure products. In addition to being the largest manufacturer of engineered steel water pipeline systems in North America, we manufacture high-quality precast and reinforced concrete products; water, wastewater, and stormwater equipment; steel casing pipe, bar-wrapped concrete cylinder pipe, and one of the largest offerings of pipeline system joints, fittings, and specialized components. Strategically positioned to meet growing water and wastewater infrastructure needs, we provide solution-based products for a wide range of markets under the ParkUSA, Geneva Pipe and Precast, Permalok®, and Northwest Pipe Company lines. Our diverse team is committed to quality and innovation while demonstrating our core values of accountability, commitment, and teamwork. We are headquartered in Vancouver, Washington, and have 13 manufacturing facilities across North America.

 

 

Our water infrastructure products are sold generally to installation contractors, who include our products in their bids to federal, state, and municipal agencies, privately-owned water companies, or developers for specific projects. We believe our sales are substantially driven by spending on urban growth and new water infrastructure with a recent trend towards spending on water infrastructure replacement, repair, and upgrade. Within the total range of products, our steel pipe tends to fit the larger-diameter, higher-pressure pipeline applications, while our precast concrete products mainly serve stormwater and sanitary sewer systems.

 

In October 2021 we acquired Park Environmental Equipment, LLC (ParkUSA), a precast concrete and steel fabrication-based company in Texas that develops and manufactures water, wastewater, and environmental solutions. Effective in the fourth quarter of 2021, as a result of the acquisition of ParkUSA, we revised our historical one segment position and identified the new operating segments, Engineered Steel Pressure Pipe (“SPP”) and Precast Infrastructure and Engineered Systems (“Precast”), to align with changes made in our internal management structure and our reporting structure of financial information used to assess performance and allocate resources. For detailed descriptions of these segments, see Note 15, “Segment Information” of the Notes to Condensed Consolidated Financial Statements in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q.

 

Our Current Economic Environment

 

Demand for our Precast products is generally influenced by general economic conditions such as housing starts, population growth, interest rates, and rates of inflation. According to the United States Census Bureau, privately-owned housing starts in September 2022 were at a seasonally adjusted annual rate of 1.4 million, compared to a seasonally adjusted annual rate of 1.6 million in June 2022, and the population of the United States is expected to increase by approximately 2 million people in 2022. Additionally, while recent and anticipated future increases in the federal funds rate by the Federal Reserve are expected to temper demand for housing, the immediate impacts have been muted by the demand for housing, stymied by recent labor and commodity shortages currently limiting the supply of new homes.

 

Our SPP projects are often planned for many years in advance, as we operate that business with a long-term time horizon for which the projects are sometimes part of 50‑year build-out plans. Long-term demand for water infrastructure projects in the United States appears strong. Even though recent demand for engineered steel pressure pipe has improved, a shift to a recessionary economy could strain governmental and water agency budgets and financing which could impact prospects for our business in the medium term. Additionally, we have experienced effects of the current labor shortage at certain manufacturing facilities, for which we are mitigating the impact through the use of overtime and third-party outsourcing as warranted. It is possible that a prolonged shortage of qualified, available workers could have an adverse effect on our business.

 

Purchased steel typically represents between 25% and 35% of cost of sales, and higher steel costs generally result in higher selling prices and revenue; however, volatile fluctuations in steel markets can affect our business. SPP contracts are generally quoted on a fixed-price basis, and volatile steel markets can result in selling prices that no longer correlate to the cost available at the time of steel purchase. Steel markets have remained volatile through the first three quarters of 2022, with prices dropping significantly in the third quarter. The reduced steel costs have begun and will continue to be realized in our financial results.

 

Russia’s invasion of Ukraine is considered to be largely responsible for increased fuel costs, increasing our delivery costs. While these costs are generally passed along to the customer, there can be no assurance that all of these increased costs will be recouped, which could be material until world economic forces stabilize. Freight costs represent approximately 5% of cost of sales of our SPP business, for which the risk is more significant due to the long lead times between when an SPP contract is entered and the product is shipped.

 

Implementation of Enterprise Resource Planning System at ParkUSA

 

In the third quarter of 2022, we implemented our enterprise resource planning system at the ParkUSA manufacturing facilities. Due primarily to an underinvestment in systems preceding our acquisition, and vastly broader product offerings, this implementation has caused, and may continue to cause, disruption and inefficiencies in ParkUSA’s operations.

 

Impact of the COVID19 Pandemic on Our Business

 

In March 2020, the World Health Organization declared COVID‑19 a pandemic. The impacts of the COVID‑19 pandemic, and the resurgence of new COVID‑19 virus variants, on global and domestic economic conditions, including the impacts of labor and raw material shortages, the long-term potential to reduce or delay funding of municipal projects, and the continued disruptions to and volatility in the financial markets remain uncertain. While the COVID‑19 pandemic has caused various direct and indirect financial impacts associated with project bidding, execution, and product deliveries over the past couple of years, we remain unable to predict the ultimate impact that the COVID‑19 pandemic may have on our business, future results of operations, financial position, or cash flows. We continue to monitor the impact of the COVID‑19 pandemic on all aspects of our business.

 

 

Results of Operations

 

The following tables set forth, for the periods indicated, certain financial information regarding costs and expenses expressed in dollars (in thousands) and as a percentage of total net sales.

 

   

Three Months Ended September 30, 2022

   

Three Months Ended September 30, 2021

 
       $    

% of Net Sales

      $    

% of Net Sales

 
                                 

Net sales:

                               

Engineered Steel Pressure Pipe

  $ 83,663       68.0

%

  $ 69,439       82.0

%

Precast Infrastructure and Engineered Systems

    39,321       32.0       15,204       18.0  

Total net sales

    122,984       100.0       84,643       100.0  

Cost of sales:

                               

Engineered Steel Pressure Pipe

    69,467       56.5       60,595       71.6  

Precast Infrastructure and Engineered Systems

    28,399       23.1       11,685       13.8  

Total cost of sales

    97,866       79.6       72,280       85.4  

Gross profit:

                               

Engineered Steel Pressure Pipe

    14,196       11.5       8,844       10.4  

Precast Infrastructure and Engineered Systems

    10,922       8.9       3,519       4.2  

Total gross profit

    25,118       20.4       12,363       14.6  

Selling, general, and administrative expense

    10,654       8.6       5,562       6.6  

Operating income

    14,464       11.8       6,801       8.0  

Other income

    11       -       171       0.2  

Interest expense

    (964

)

    (0.8

)

    (112

)

    (0.1

)

Income before income taxes

    13,511       11.0       6,860       8.1  

Income tax expense

    3,555       2.9       1,914       2.3  

Net income

  $ 9,956       8.1

%

  $ 4,946       5.8

%

 

 

   

Nine Months Ended September 30, 2022

   

Nine Months Ended September 30, 2021

 
       $    

% of Net Sales

       $    

% of Net Sales

 
                                 

Net sales:

                               

Engineered Steel Pressure Pipe

  $ 235,446       67.1

%

  $ 188,244       81.6

%

Precast Infrastructure and Engineered Systems

    115,391       32.9       42,522       18.4  

Total net sales

    350,837       100.0       230,766       100.0  

Cost of sales:

                               

Engineered Steel Pressure Pipe

    202,956       57.9       165,631       71.8  

Precast Infrastructure and Engineered Systems

    83,897       23.9       34,459       14.9  

Total cost of sales

    286,853       81.8       200,090       86.7  

Gross profit:

                               

Engineered Steel Pressure Pipe

    32,490       9.2       22,613       9.8  

Precast Infrastructure and Engineered Systems

    31,494       9.0       8,063       3.5  

Total gross profit

    63,984       18.2       30,676       13.3  

Selling, general, and administrative expense

    30,149       8.6       17,729       7.7  

Operating income

    33,835       9.6       12,947       5.6  

Other income

    56       -       260       0.1  

Interest expense

    (2,393

)

    (0.6

)

    (687

)

    (0.3

)

Income before income taxes

    31,498       9.0       12,520       5.4  

Income tax expense

    8,310       2.4       3,268       1.4  

Net income

  $ 23,188       6.6

%

  $ 9,252       4.0

%

 

Three and Nine Months Ended September 30, 2022 Compared to Three and Nine Months Ended September 30, 2021

 

Net sales. Net sales increased 45.3% to $123.0 million in the third quarter of 2022 compared to $84.6 million in the third quarter of 2021 and increased 52.0% to $350.8 million in the first nine months of 2022 compared to $230.8 million in the first nine months of 2021.

 

SPP net sales were $83.7 million in the third quarter of 2022 compared to $69.4 million in the third quarter of 2021 and $235.4 million in the first nine months of 2022 compared to $188.2 million in the first nine months of 2021. The 20.5% increase in the third quarter of 2022 compared to the third quarter of 2021 was driven by a 17% increase in tons produced resulting from changes in project timing and a 3% increase in selling price per ton due to changes in product mix. The 25.1% increase in the first nine months of 2022 compared to the first nine months of 2021 was driven by a 37% increase in selling price per ton due to increased materials costs and changes in product mix, partially offset by a 9% decrease in tons produced resulting from changes in project timing. Bidding activity, backlog, and production levels may vary significantly from period to period affecting sales volumes.

 

Precast net sales were $39.3 million in the third quarter of 2022 compared to $15.2 million in the third quarter of 2021 and $115.4 million in the first nine months of 2022 compared to $42.5 million in the first nine months of 2021. The 158.6% increase in the third quarter of 2022 compared to the third quarter of 2021 was primarily due to the ParkUSA operations acquired in October 2021, which contributed $20.5 million in net sales. In addition, the segment realized a 23.9% increase in net sales at the pre-existing precast operations due to a 49% increase in selling prices due to the high demand for our concrete products coupled with increased material costs, partially offset by a 17% decrease in volume shipped due to changes in product mix. The 171.4% increase in the first nine months of 2022 compared to the first nine months of 2021 was primarily due to the acquired ParkUSA operations, which contributed $64.4 million in net sales. In addition, the segment realized a 20.0% increase in net sales at the pre-existing precast operations due to a 46% increase in selling prices due to the high demand for our concrete products coupled with increased material costs, partially offset by an 18% decrease in volume shipped due to changes in product mix.

 

Gross profit. Gross profit increased 103.2% to $25.1 million (20.4% of net sales) in the third quarter of 2022 compared to $12.4 million (14.6% of net sales) in the third quarter of 2021 and increased 108.6% to $64.0 million (18.2% of net sales) in the first nine months of 2022 compared to $30.7 million (13.3% of net sales) in the first nine months of 2021.

 

 

SPP gross profit increased 60.5% to $14.2 million (17.0% of SPP net sales) in the third quarter of 2022 compared to $8.8 million (12.7% of SPP net sales) in the third quarter of 2021 and increased 43.7% to $32.5 million (13.8% of SPP net sales) in the first nine months of 2022 compared to $22.6 million (12.0% of SPP net sales) in the first nine months of 2021. The increase in the third quarter of 2022 compared to the third quarter of 2021 was due to increased production volume and product pricing, while the increase in the first nine months of 2022 compared to the first nine months of 2021 was due entirely to improved product pricing. SPP gross profit in the first nine months of 2022 was reduced, in part, as a result of a $2.0 million product liability settlement reserve recorded in the first quarter.

 

Precast gross profit increased 210.4% to $10.9 million (27.8% of Precast net sales) in the third quarter of 2022 compared to $3.5 million (23.1% of Precast net sales) in the third quarter of 2021 and increased 290.6% to $31.5 million (27.3% of Precast net sales) in the first nine months of 2022 compared to $8.1 million (19.0% of Precast net sales) in the first nine months of 2021. The increase was due to contributions from the ParkUSA operations, as well as improved pricing at the pre-existing precast operations.

 

Selling, general, and administrative expense. Selling, general, and administrative expense increased 91.5% to $10.7 million (8.7% of net sales) in the third quarter of 2022 compared to $5.6 million (6.6% of net sales) in the third quarter of 2021 and increased 70.1% to $30.1 million (8.6% of net sales) in the first nine months of 2022 compared to $17.7 million (7.7% of net sales) in the first nine months of 2021. The increase in the third quarter of 2022 compared to the third quarter of 2021 was primarily due to the acquired ParkUSA operations, including $1.3 million in higher compensation-related expense and $0.8 million in higher amortization expense. We also incurred $3.1 million in higher compensation-related expense, $0.2 million in higher travel expense, and $0.5 million in lower professional fees compared to the third quarter of 2021. The increase in the first nine months of 2022 compared to the first nine months of 2021 was primarily due to the acquired ParkUSA operations, including $4.4 million in higher compensation-related expense and $2.4 million in higher amortization expense. We also incurred an additional $4.9 million in higher compensation-related expense and $0.5 million in higher travel expense compared to the first nine months of 2021.

 

Income taxes. Income tax expense was $3.6 million in the third quarter of 2022 (an effective income tax rate of 26.3%) compared to $1.9 million in the third quarter of 2021 (an effective income tax rate of 27.9%) and was $8.3 million in the first nine months of 2022 (an effective income tax rate of 26.4%) compared to $3.3 million in the first nine months of 2021 (an effective income tax rate of 26.1%). The estimated effective income tax rates for the third quarter of 2022 and 2021 and the first nine months of 2022 and 2021 were impacted by non-deductible permanent differences. The estimated effective income tax rate can change significantly depending on the relationship of permanent income tax differences and tax credits to estimated pre-tax income or loss and the changes in valuation allowances. Accordingly, the comparison of estimated effective income tax rates between periods is not meaningful in all situations.

 

Liquidity and Capital Resources

 

Sources and Uses of Cash

 

Our principal sources of liquidity generally include operating cash flows and the Credit Agreement dated June 30, 2021 with Wells Fargo Bank, National Association (“Wells Fargo”), as administrative agent, and the lenders from time to time party thereto, including the initial sole lender, Wells Fargo (the “Lenders”), as amended by the Incremental Amendment dated October 22, 2021 and the Second Amendment to Credit Agreement dated April 29, 2022 (together, the “Amended Credit Agreement”). From time to time our long-term capital needs may be met through the issuance of long-term debt or additional equity. Our principal uses of liquidity generally include capital expenditures, working capital, organic growth initiatives, acquisitions, and debt service. Information regarding our cash flows for the nine months ended September 30, 2022 and 2021 are presented in our Condensed Consolidated Statements of Cash Flows contained in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q, and are further discussed below. We are actively managing the business to maintain cash flow and believe we have liquidity to meet our anticipated funding requirements and other near-term obligations.

 

As of September 30, 2022, our working capital (current assets minus current liabilities) was $173.3 million compared to $164.1 million as of December 31, 2021. Cash and cash equivalents totaled $3.7 million and $3.0 million as of September 30, 2022 and December 31, 2021, respectively.

 

 

Fluctuations in SPP working capital accounts result from timing differences between production, shipment, invoicing, and collection, as well as changes in levels of production and costs of materials. We typically have a relatively large investment in working capital, as we generally pay for materials, labor, and other production costs in the initial stages of a project, while payments from our customers are generally received after finished product is delivered. A portion of our revenues are recognized over time as the manufacturing process progresses; therefore, cash receipts typically occur subsequent to when revenue is recognized and the elapsed time between when revenue is recorded and when cash is received can be significant. As such, our payment cycle is a significantly shorter interval than our collection cycle, although the effect of this difference in the cycles may vary by project, and from period to period. As of September 30, 2022, Inventories and Accounts payable included $4.1 million of steel for which we expect to settle a quality claim with the supplier.

 

As of September 30, 2022, we had $71.8 million of outstanding revolving loan borrowings, $3.5 million of outstanding current debt, $95.0 million of operating lease liabilities, and $2.7 million of finance lease liabilities. As of December 31, 2021, we had $86.8 million of outstanding revolving loan borrowings, $98.4 million of operating lease liabilities, and $2.2 million of finance lease liabilities.

 

Net Cash Provided by (Used in) Operating Activities

 

Net cash provided by (used in) operating activities was $25.5 million in the first nine months of 2022 compared to $(13.6) million in the first nine months of 2021. Net income, adjusted for non-cash items, provided $38.0 million of operating cash flow in the first nine months of 2022 compared to $21.0 million of operating cash flow in the first nine months of 2021. The net change in working capital used was $12.5 million of operating cash flow in the first nine months of 2022 compared to $34.6 million of operating cash flow in the first nine months of 2021.

 

Net Cash Used in Investing Activities

 

Net cash used in investing activities was $12.1 million in the first nine months of 2022 compared to $7.8 million in the first nine months of 2021. Capital expenditures were $11.8 million in the first nine months of 2022 compared to $8.1 million in the first nine months of 2021, which was primarily for standard capital replacement. We currently expect capital expenditures in 2022 to be approximately $25 million to $26 million, which includes approximately $9 million of investment in our new reinforced concrete pipe mill and the remainder primarily for standard capital replacement.

 

Net Cash Used in Financing Activities

 

Net cash used in financing activities was $12.7 million in the first nine months of 2022 compared to $13.3 million in the first nine months of 2021. Net borrowings (repayments) on the line of credit were $(14.9) million in the first nine months of 2022 compared to $2.2 million in the first nine months of 2021. Net borrowings (repayments) on other debt were $3.5 million in the first nine months of 2022 compared to $(13.8) million in the first nine months of 2021.

 

We anticipate that our existing cash and cash equivalents, cash flows expected to be generated by operations, and additional borrowing capacity under the Amended Credit Agreement and other loans will be adequate to fund our working capital, debt service, and capital expenditure requirements for at least the next twelve months. To the extent necessary, we may also satisfy capital requirements through additional bank borrowings, senior notes, term notes, subordinated debt, and finance and operating leases, if such resources are available on satisfactory terms. We have from time to time evaluated and continue to evaluate opportunities for acquisitions and expansion. Any such transactions, if consummated, may necessitate additional bank borrowings or other sources of funding. As previously discussed, we acquired ParkUSA in October 2021 which was funded primarily by borrowings on the line of credit.

 

On November 3, 2020, our shelf registration statement on Form S‑3 (Registration No. 333‑249637) covering the potential future sale of up to $150 million of our equity and/or debt securities or combinations thereof, was declared effective by the SEC. This shelf registration statement, which replaced the shelf registration statement on Form S‑3 that expired on September 15, 2020, provides another potential source of capital, in addition to other alternatives already in place. We cannot be certain that funding will be available on favorable terms or available at all. To the extent that we raise additional funds by issuing equity securities, our shareholders may experience significant dilution. As of the date of this 2022 Q3 Form 10‑Q, we have not yet sold any securities under this registration statement, nor do we have an obligation to do so. Please refer to the factors discussed in Part I – Item 1A. “Risk Factors” in our 2021 Form 10‑K.

 

 

On September 2, 2022, we entered into an Open Market Sale Agreement (the “At-the-Market Offering”) with Jefferies LLC (“Jefferies”), pursuant to which we may issue and sell shares of our common stock, par value $0.01 per share, having aggregate offering sales proceeds of up to $50,000,000 (the “Shares”) from time to time through Jefferies as our sales agent. We may sell the Shares in amounts and at times to be determined by us from time to time subject to the terms and conditions of the At-the-Market Offering, but we have no obligation to sell any of the Shares under the At-the-Market Offering. The Shares to be sold under the At-the-Market Offering, if any, will be offered and sold pursuant to our shelf registration statement on Form S‑3 discussed above, and the prospectus supplement dated September 2, 2022 filed by us. We will pay Jefferies a cash commission of up to 3.0% of gross proceeds from the sale of the Shares pursuant to the At-the-Market Offering. We have also agreed to provide Jefferies with customary indemnification and contribution rights. No proceeds were raised under the At-the-Market Offering during the three and nine months ended September 30, 2022.

 

Credit Agreement

 

The Amended Credit Agreement provides for a revolving loan, swingline loan, and letters of credit in the aggregate amount of up to $125 million (“Revolver Commitment”). The Amended Credit Agreement will expire, and all obligations outstanding will mature, on June 30, 2024. We may prepay outstanding amounts in our discretion without penalty at any time, subject to applicable notice requirements. As of September 30, 2022 under the Amended Credit Agreement, we had $71.8 million of outstanding revolving loan borrowings, $1.1 million of outstanding letters of credit, and additional borrowing capacity of $52 million. Based on our business plan and forecasts of operations, we expect to have sufficient credit available to support our operations for at least the next twelve months.

 

Revolving loans under the Amended Credit Agreement bear interest at rates related to, at our option and subject to the provisions of the Amended Credit Agreement, either: (i) Base Rate (as defined in the Amended Credit Agreement) plus the Applicable Margin; (ii) Adjusted Term Secured Overnight Financing Rate (“SOFR”) (as defined in the Amended Credit Agreement) plus the Applicable Margin; or (iii) Adjusted Daily Simple SOFR (as defined in the Amended Credit Agreement) plus the Applicable Margin. The “Applicable Margin” is 1.75% to 2.35%, depending on our Consolidated Senior Leverage Ratio (as defined in the Amended Credit Agreement) and the interest rate option chosen. Interest on outstanding revolving loans is payable monthly. Swingline loans under the Amended Credit Agreement bear interest at the Base Rate plus the Applicable Margin. The Amended Credit Agreement requires the payment of a commitment fee of between 0.30% and 0.40%, based on the amount by which the Revolver Commitment exceeds the average daily balance of outstanding borrowings (as defined in the Amended Credit Agreement). Such fee is payable monthly in arrears. We are also obligated to pay additional fees customary for credit facilities of this size and type.

 

The letters of credit outstanding as of September 30, 2022 relate to workers’ compensation insurance. Based on the nature of these arrangements and our historical experience, we do not expect to make any material payments under these arrangements.

 

The Amended Credit Agreement contains customary representations and warranties, as well as customary affirmative and negative covenants, events of default, and indemnification provisions in favor of the Lenders. The negative covenants include restrictions regarding the incurrence of liens and indebtedness, annual capital expenditures, certain investments, acquisitions, and dispositions, and other matters, all subject to certain exceptions. The Amended Credit Agreement requires us to regularly provide financial information to Wells Fargo and to maintain a consolidated senior leverage ratio no greater than 2.50 to 1.00 (subject to certain exceptions) and a minimum consolidated earnings before interest, taxes, depreciation, and amortization (as defined in the Amended Credit Agreement) of at least $31.5 million for the four consecutive fiscal quarters most recently ended. Pursuant to the Amended Credit Agreement, we have also agreed that we will not sell, assign, or otherwise dispose or encumber, any of our owned real property. The occurrence of an event of default could result in the acceleration of the obligations under the Amended Credit Agreement. We were in compliance with our financial covenants as of September 30, 2022. Based on our business plan and forecasts of operations, we believe we will remain in compliance with our financial covenants for the next twelve months.

 

Our obligations under the Amended Credit Agreement are secured by a senior security interest in substantially all of our and our subsidiaries’ assets.

 

 

Recent Accounting Pronouncements

 

For a description of recent accounting pronouncements affecting our company, including the dates of adoption and estimated effects on financial position, results of operations, and cash flows, see Note 16, “Recent Accounting and Reporting Developments” of the Notes to Condensed Consolidated Financial Statements in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q.

 

Critical Accounting Estimates

 

The discussion and analysis of our financial condition and results of operations are based upon our Condensed Consolidated Financial Statements included in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q, which have been prepared in accordance with accounting principles generally accepted in the United States of America. The preparation of our Condensed Consolidated Financial Statements requires us to make estimates and judgments that affect the reported amounts of assets, liabilities, revenues, and expenses, and disclosure of contingent assets and liabilities. We base our estimates on historical experience and on various other assumptions that are believed to be reasonable under the circumstances. On an ongoing basis, we evaluate all of our estimates, including those related to revenue recognition, business combinations, inventories, property and equipment, including depreciation and valuation, goodwill, intangible assets, including amortization, share-based compensation, allowance for doubtful accounts, income taxes, and litigation and other contingencies. Actual results may differ from these estimates under different assumptions or conditions.

 

There have been no significant changes in our critical accounting estimates during the nine months ended September 30, 2022 as compared to the critical accounting estimates disclosed in our 2021 Form 10‑K.

 

 

Item 3. Quantitative and Qualitative Disclosures About Market Risk

 

For a discussion of our market risk associated with commodity prices and foreign currencies, see Part II – Item 7A. “Quantitative and Qualitative Disclosures About Market Risk” of our 2021 Form 10‑K.

 

Interest Rate Risk

 

Our debt bears interest at both fixed and variable rates. As of September 30, 2022 and December 31, 2021, we had $75.3 million and $86.8 million, respectively, of variable-rate debt outstanding. We have managed a portion of our variable-rate debt with an interest rate swap agreement to effectively convert a portion of our variable-rate debt to fixed-rate debt. The principal objective of this contract is to reduce the variability of the cash flows in interest payments associated with a portion of our variable-rate debt, thus reducing the impact of interest rate changes on future interest payment cash flows. We have elected to apply the hedge accounting rules in accordance with authoritative guidance for this contract.

 

As of September 30, 2022, the total notional amount of the interest rate swap was $31.7 million, which will amortize ratably on a monthly basis to zero by the April 2024 maturity date. We receive floating interest payments monthly based on the SOFR and pay a fixed rate of 1.941% to the counterparty.

 

Assuming average interest rates and borrowings on variable-rate debt, a hypothetical 1.0%, or 100 basis points, change in interest rates would not have a material impact on our interest expense.

 

 

Item 4. Controls and Procedures

 

Evaluation of Disclosure Controls and Procedures

 

Disclosure controls and procedures (as defined in Rules 13a‑15(e) and 15d‑15(e) under the Securities Exchange Act of 1934, as amended (the “Exchange Act”)) are designed to provide reasonable assurance that information required to be disclosed in reports we file or submit under the Exchange Act is recorded, processed, summarized, and reported within the time periods specified in the rules and forms of the Securities and Exchange Commission (the “SEC”) and that such information is accumulated and communicated to our management, including our Chief Executive Officer (“CEO”) and Chief Financial Officer (“CFO”), as appropriate, to allow timely decisions regarding required disclosures.

 

In connection with the preparation of this Quarterly Report on Form 10‑Q for the quarter ended September 30, 2022, our management, under the supervision and with the participation of our CEO and CFO, evaluated the effectiveness of the design and operation of our disclosure controls and procedures as of September 30, 2022. As a result of the assessment, our CEO and CFO have concluded that, as of September 30, 2022, our disclosure controls and procedures were effective.

 

 

As discussed in Note 2, “Business Combination” of the Notes to Condensed Consolidated Financial Statements in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q, we completed the acquisition of 100% of Park Environmental Equipment, LLC (“ParkUSA”) on October 5, 2021. As part of our post-closing integration activities, we are engaged in the process of assessing the internal controls of ParkUSA. We have begun to integrate policies, processes, people, technology, and operations for the post-acquisition combined company, and we will continue to evaluate the impact of any related changes to internal control over financial reporting. As permitted for newly acquired businesses by interpretive guidance issued by the staff of the SEC, management has excluded the internal control over financial reporting of ParkUSA from the evaluation of the effectiveness of our disclosure controls and procedures as of September 30, 2022. We have reported the operating results of ParkUSA in our condensed consolidated statements of operations and cash flows from the acquisition date through September 30, 2022. As of September 30, 2022, total assets related to ParkUSA represented approximately 16.7% of our total assets, recorded on a preliminary basis as the measurement period for the business combination remained open as of September 30, 2022. Revenues from ParkUSA represented approximately 18.4% of our total consolidated revenues for the nine months ended September 30, 2022.

 

Changes in Internal Control over Financial Reporting

 

Except for changes in internal controls that we have made related to the integration of ParkUSA into the post-acquisition combined company, the most noteworthy of which are those controls impacted by the implementation of our enterprise resource planning system, there were no significant changes in our internal control over financial reporting that occurred during the quarter ended September 30, 2022 that materially affected, or are reasonably likely to materially affect, our internal control over financial reporting.

 

 

Part II  OTHER INFORMATION

 

Item 1. Legal Proceedings

 

We are party to a variety of legal actions arising out of the ordinary course of business. Plaintiffs occasionally seek punitive or exemplary damages. We do not believe that such normal and routine litigation will have a material impact on our consolidated financial results. We are also involved in other kinds of legal actions, some of which assert or may assert claims or seek to impose fines, penalties, and other costs in substantial amounts. See Note 10, “Commitments and Contingencies” of the Notes to Condensed Consolidated Financial Statements in Part I – Item 1. “Financial Statements” of this 2022 Q3 Form 10‑Q.

 

 

Item 1A. Risk Factors

 

In addition to the other information set forth in this 2022 Q3 Form 10‑Q, the factors discussed in Part I – Item 1A. “Risk Factors” in our 2021 Form 10‑K and any subsequently filed quarterly reports on Form 10‑Q could materially affect our business, financial condition, or operating results. The risks described in our 2021 Form 10‑K and subsequent Form 10‑Q’s are not the only risks facing us. There are additional risks and uncertainties not currently known to us or that we currently deem to be immaterial, that may also materially adversely affect our business, financial condition, or operating results.

 

 

Item 6. Exhibits

 

(a) The exhibits filed as part of this 2022 Q3 Form 10‑Q are listed below:

 

Exhibit Number

 

Description

     

1.1

 

Open Market Sale AgreementSM, dated September 2, 2022 between Northwest Pipe Company and Jefferies LLC, incorporated by reference to the Companys Current Report on Form 8K, as filed with the Securities and Exchange Commission on September 2, 2022

     

31.1

 

Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

     

31.2

 

Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 302 of the Sarbanes-Oxley Act of 2002

 

 

Exhibit Number

 

Description

     

32.1

 

Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002

     

32.2

 

Certification Pursuant to 18 U.S.C. Section 1350, as Adopted Pursuant to Section 906 of the Sarbanes-Oxley Act of 2002

     
99.1   Interim Funding Agreement dated August 2, 2022 by and between Wells Fargo Equipment Finance, Inc. and Geneva Pipe and Precast Company
     

101.INS

 

Inline XBRL Instance Document

     

101.SCH

 

Inline XBRL Taxonomy Extension Schema Document

     

101.CAL

 

Inline XBRL Taxonomy Extension Calculation Document

     

101.DEF

 

Inline XBRL Taxonomy Definition Linkbase Document

     

101.LAB

 

Inline XBRL Taxonomy Extension Label Linkbase Document

     

101.PRE

 

Inline XBRL Taxonomy Extension Presentation Linkbase Document

     

104

 

Cover Page Interactive Data File (formatted as Inline XBRL and contained in Exhibit 101)

 

SM “Open Market Sale Agreement” is a service mark of Jefferies LLC.

 

 

SIGNATURES

 

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.

 

Dated: November 9, 2022

 

 

 

NORTHWEST PIPE COMPANY

   
 

By: 

/s/ Scott Montross

     
   

Scott Montross

   

Director, President, and Chief Executive Officer

   

(principal executive officer)

     
 

By: 

/s/ Aaron Wilkins

     
   

Aaron Wilkins

   

Senior Vice President, Chief Financial Officer, and Corporate Secretary

   

(principal financial and accounting officer)

 

31
EX-31.1 2 ex_433123.htm EXHIBIT 31.1 ex_433123.htm

Exhibit 31.1

 

CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Scott Montross, certify that:

 

 

1.

I have reviewed this Quarterly Report on Form 10‑Q of Northwest Pipe 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: November 9, 2022

By:

/s/ Scott Montross

   

Scott Montross

   

Director, President, and Chief Executive Officer

   

(principal executive officer)

 

 
EX-31.2 3 ex_433124.htm EXHIBIT 31.2 ex_433124.htm

Exhibit 31.2

 

 

CERTIFICATION PURSUANT TO 18 U.S.C. SECTION 1350,

AS ADOPTED PURSUANT TO SECTION 302 OF THE SARBANES-OXLEY ACT OF 2002

 

I, Aaron Wilkins, certify that:

 

 

1.

I have reviewed this Quarterly Report on Form 10‑Q of Northwest Pipe 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: November 9, 2022

By:

/s/ Aaron Wilkins

   

Aaron Wilkins

   

Senior Vice President, Chief Financial Officer, and

Corporate Secretary

   

(principal financial officer)

 

 
EX-32.1 4 ex_433125.htm EXHIBIT 32.1 ex_433125.htm

Exhibit 32.1

 

 

CERTIFICATION 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 Northwest Pipe Company (the “Company”) on Form 10‑Q for the period ended September 30, 2022 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Scott Montross, Director, President, and Chief Executive Officer of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 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 the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

 

 

/s/ Scott Montross

 

Scott Montross

 

Director, President, and Chief Executive Officer

 

November 9, 2022

 

 

 
EX-32.2 5 ex_433126.htm EXHIBIT 32.2 ex_433126.htm

Exhibit 32.2

 

 

CERTIFICATION 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 Northwest Pipe Company (the “Company”) on Form 10‑Q for the period ended September 30, 2022 as filed with the Securities and Exchange Commission on the date hereof (the “Report”), I, Aaron Wilkins, Senior Vice President, Chief Financial Officer, and Corporate Secretary of the Company, certify, pursuant to 18 U.S.C. § 1350, as adopted pursuant to § 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 the Report fairly presents, in all material respects, the financial condition and results of operations of the Company.

 

 

/s/ Aaron Wilkins

 

Aaron Wilkins

 

Senior Vice President, Chief Financial Officer, and Corporate Secretary

 

November 9, 2022

 

 

 
EX-99.1 6 ex_440600.htm EXHIBIT 99.1 ex_433033.htm

Exhibit 99.1

 

Interim Funding Agreement

Wells Fargo Equipment Finance, Inc. I 600 South 4th Street I MAC N9300-100 I Minneapolis, MN 55415

wellsfargo.jpg

This Agreement dated as of August 2, 2022 by and between Wells Fargo Equipment Finance, Inc. ("Creditor") and the undersigned lessee or purchaser or borrower from Creditor, as the case may be (the "Customer").

 

WHEREAS Creditor has agreed to finance certain equipment for the Customer by way of lease, installment sale contract or promissory note (the "Contract"), such equipment being described as follows (the "Equipment"):

 

See attached Schedule A.

 

After Customer signs this Agreement, Customer authorizes Creditor to insert any missing information or change any inaccurate information (such as the model year of the Equipment or its serial number or VIN) into this Equipment description.

 

WHEREAS the vendor or vendors of the Equipment require progress payments to be made.

 

NOW THEREFORE the parties hereby agree as follows:

 

 

1.

Creditor agrees to make progress payments to the vendor or vendors of the Equipment subject to the terms of this Agreement.

     
 

2.

The aggregate amount advanced by Creditor hereunder shall not exceed $13,500,000, and Creditor shall not advance any progress payment hereunder without the prior written authorization of the Customer.

     
 

3.

Creditor shall not advance any progress payment hereunder until it shall have first received the following: (a) the Contract duly signed by the Customer and all other related documentation that can be delivered prior to the Customer's acceptance of the Equipment, and (b) all advance payments and security deposits required by the Contract.

     
 

4.

The term "Cutoff Date" as used in this Agreement means the earliest to occur of the following dates: (a) November 30, 2022 (or such later date as Creditor may in its sole discretion designate by written notice to Customer); (b) the date there occurs an Event of Default as defined in the Contract (notwithstanding that the Equipment has not then been delivered and accepted); or (c) the date there occurs a material adverse change in the financial condition, business, or prospects of the Customer from that considered by Creditor in making its decision to finance the Equipment. Notwithstanding the foregoing, if the date set forth in clause (a) above is later than August 20, 2022 (the "Approval Expiration Date") the Cutoff Date shall be the Approval Expiration Date unless Creditor extends the Approval Expiration Date after reviewing Customer's updated financial, credit, business and other information as may be required by Creditor.

     
 

5.

If on the Cutoff Date the Equipment has not been delivered to and accepted by the Customer under the Contract as evidenced by a delivery and acceptance certificate executed by the Customer in form and substance satisfactory to Creditor, then upon demand at any time after the Cutoff Date the Customer shall pay Creditor the total amount advanced hereunder and remaining unpaid on the Cutoff Date together with accrued but unpaid interest thereon determined as provided below, and Creditor shall no longer be obligated to make advances hereunder. Upon such payment, Creditor shall transfer all of its right, title, and interest in the Equipment and in progress payments advanced hereunder to the Customer without recourse or any warranty whatsoever. In order to protect its ability to acquire use of the Equipment, the Customer may, if Creditor has not demanded payment within 10 business days after the specific date set forth in clause (a) of the definition of Cutoff Date, pay Creditor within such period the amount that would have been due had such a demand been made, but if no such payment is made within such period, the Customer shall have no right to acquire use of the Equipment under the Contract, and Creditor may, at its option, by written notice to the Customer, declare the Contract and all of Creditor's obligations thereunder terminated and acquire the Equipment for its own account or make any other arrangement with the vendor it can negotiate or demand payment from the Customer as provided above.

 

THIS AGREEMENT INCLUDES THE TERMS ON THE ATTACHED PAGE(S).

 

 

Creditor: Wells Fargo Equipment Finance, Inc.

 

Customer: Geneva Pipe and Precast Company

     

/s/ Kathleen Hatella

 

/s/ Aaron Wilkins

By

 

By

     

Kathleen Hatella

Authorized Signer

 

Aaron Wilkins, CFO

Title

 

Print Name and Title

 

 

6.

Whether or not the Equipment Is accepted by the Customer under the Contract, the Customer agrees to pay Creditor interest on the unpaid balance of the amount advanced hereunder from the date of the initial advance until the advances are fully paid at an annual rate (computed on the basis of a 360‑day year, actual days elapsed) as follows: the rate per annum determined by Creditor equal to (i) Term SOFR plus (ii) 1.75%. "Term SOFR" means the Term SOFR Reference Rate for a tenor comparable to one month on the day (such day, the "Term SOFR Determination Day") that is two (2) Business Days prior to the date of determination, as such rate is published by the Term SOFR Administrator; provided, however, that (x) if as of 5:00 p.m. (New York time) on any Term SOFR Determination Day, the Term SOFR Reference Rate for the applicable tenor has not been published by the Term SOFR Administrator and a Benchmark Replacement Date with respect to the Term SOFR Reference Rate has not occurred, then Term SOFR will be the Term SOFR Reference Rate for such tenor as published by the Term SOFR Administrator on the first preceding Business Day for which such Term SOFR Reference Rate for such tenor was published by the Term SOFR Administrator, so long as such first preceding Business Day is not more than three (3) Business Days prior to such Term SOFR Determination Day; and (y) if Term SOFR determined as provided above (including pursuant to clause (x) of this proviso) shall ever be less than 0% (the "Benchmark Floor"), then Term SOFR shall be deemed to be the Benchmark Floor. "SOFR" means a rate per annum equal to the secured overnight financing rate as administered by the SOFR Administrator. "SOFR Administrator" means the Federal Reserve Bank of New York (or a successor administrator of the secured overnight financing rate). "Term SOFR Administrator" means CME Group Benchmark Administration Limited (CBA) (or a successor administrator of the Term SOFR Reference Rate selected by Creditor in its reasonable discretion). "Term SOFR Reference Rate" means the forward-looking term rate based on SOFR. "Business Day" means any day except (i) a Saturday, (ii) a Sunday, or (iii) any day on which the Securities Industry and Financial Markets Association, or any successor thereto, recommends that the fixed income departments of its members be closed for the entire day for purposes of trading in United States government securities. "Conforming Changes" means any technical, administrative or operational changes (including, without limitation, changes to the definition of "Business Day," the definition of "Interest Period" or any similar or analogous definition, the timing and frequency of determining rates and making payments of interest, prepayment provisions and other technical, administrative or operational matters) that Creditor decides may be appropriate to reflect the adoption and implementation of a Benchmark Replacement or to permit the use and administration of Term SOFR or a Benchmark Replacement by Creditor. The rate shall initially be determined on the first day of the month in which a progress payment is advanced hereunder and such initial rate shall remain in effect through the last day of the calendar month in which the advance is made. The interest rate in effect for each month thereafter during the term of this Agreement shall be the same percentage over Term SOFR, determined on the first day of each calendar month (each such monthly period, an "Interest Period"). In connection with the use or administration of Term SOFR, Creditor will have the right to make Conforming Changes from time to time and any amendments implementing such Conforming Changes will become effective without any further action or consent of Customer. Creditor will promptly notify Customer of the effectiveness of any Conforming Changes in connection with the use or administration of Term SOFR. Subject to paragraph 16 below, if Creditor determines (any determination of which shall be conclusive and binding on Customer) that either (i) Term SOFR for the applicable Interest Period cannot be determined pursuant to the definition thereof other than as a result of a Benchmark Transition Event (an "Inability Determination") or (ii) any law has made it unlawful, or that any governmental authority has asserted that it is unlawful, for Creditor to make or maintain an advance based on SOFR or Term SOFR, or to determine or charge interest rates based upon SOFR or Term SOFR (an "Illegality Determination"), then Creditor will so notify Customer. From the date of an Inability Determination or an Illegality Determination until Creditor revokes such Inability Determination or notifies Customer that the circumstances giving rise to such Illegality Determination no longer exist, as applicable, the Adjusted Prime Rate shall replace Term SOFR for any determination of interest hereunder for any affected Interest Period hereunder (with the margin that had been added to Term SOFR added to the Adjusted Prime Rate); provided, however, that no such determination of interest shall take effect during any applicable Interest Period as a result of an Inability Determination. Notwithstanding any of the foregoing to the contrary, if a Benchmark Replacement is subsequently determined in accordance with applicable Benchmark Replacement Provisions, that Benchmark Replacement, plus any applicable margin, will then supersede the foregoing with respect to the replaced Benchmark. "Adjusted Prime Rate" means, at any time, the amount equal to (a) the Prime Rate as of such time less (b) the amount (which may be a positive or negative number or zero and which amount shall remain the same from the date of an Inability Determination or an Illegality Determination until Creditor revokes such Inability Determination or notifies Customer that the circumstances giving rise to such Illegality Determination no longer exist, as applicable) equal to (i) the Prime Rate as of the date of the last available Term SOFR less (ii) the last available Term

 

 

 

    SOFR (if such Term SOFR is greater than the Prime Rate, so that (i) minus (ii) results in a negative number, then the negative number shall be added to (a) to arrive at the Adjusted Prime Rate); provided, however, that if Adjusted Prime Rate would be less than the Benchmark Floor, then Adjusted Prime Rate shall be deemed to be the Benchmark Floor. "Prime Rate" means at any time the rate of interest most recently announced within Wells Fargo Bank, National Association ("Bank") at its principal office as its Prime Rate, with the understanding that the Prime Rate is one of Bank's base rates and serves as the basis upon which effective rates of interest are calculated for those loans making reference thereto, and is evidenced by the recording thereof after its announcement in such internal publication or publications as Bank may designate. If the rate of interest announced by Bank as its Prime Rate at any time is less than the Benchmark Floor, then for purposes of this Agreement the Prime Rate shall be deemed to be the Benchmark Floor.
     
  7. Interest shall be payable monthly beginning with the 20th day of the month following the month in which the first advance is made and on the same day of each month thereafter and also on the maturity date. The maturity date of this obligation is the earliest of (x) the date Creditor demands payment pursuant to paragraph 5, (y) the date the Equipment is accepted by the Customer under the Contract, or (z) the date the Customer prepays as permitted by paragraph 5.
     
  8. Some items of Equipment may be delivered by the vendor to the Customer without the Customer having accepted the items under the Contract. The Customer agrees to maintain insurance on each item of Equipment as required by the Contract from the date it is delivered to the Customer regardless of whether the Customer has accepted the item under the Contract.
     
  9. Although the Customer has agreed to reimburse Creditor as provided in paragraph 5 for amounts advanced by Creditor hereunder, such amounts do not constitute loans to the Customer, and Creditor as the party making the progress payments to the vendor or vendors reserves for its own benefit all rights to the Equipment and to the benefits of amounts advanced hereunder subject only to its obligations under the Contract and under this Agreement.
     
  10. Creditor makes no representation as to when the Equipment may be delivered by the vendor thereof.
     
 

11.

This Agreement may not be assigned by the Customer without the prior written consent of Creditor. This Agreement shall be binding upon and inure to the benefit of the successors and assigns of the parties hereto.

     
 

12.

This Agreement shall be governed by the same substantive laws that govern the Contract.

     
 

13.

If Customer is not an individual, (i) the execution, delivery and performance of this Agreement has been duly authorized by all necessary action on the part of Customer and will not violate any provision of Customer's governing documents; (ii) the person signing on behalf of Customer is duly authorized; and (iii) this Agreement constitutes a legal, valid and binding obligation of Customer.

     
 

14.

Customer hereby grants to Creditor a security interest in any and all right, title or interest that Customer now has or may hereafter acquire in or to the Equipment to secure Customer's now existing and hereafter arising obligations and indebtedness to Creditor (except QFC Obligations) whether arising hereunder, under the Contract or under any other agreement or transaction at any time owing by Customer to Creditor. Upon the occurrence of any default in making payment hereunder or any event of default under any other agreement made by Customer in favor of Creditor, Creditor shall have all of the rights and remedies of a secured party under the Uniform Commercial Code. "QFC Obligations" means obligations arising under a securities contract, commodities contract, forward contract, repurchase agreement, swap agreement, or any similar agreement (as defined for purposes of Treasury Part 148 under 12 U.S.C. 5390(c)(8)(H) or FDIC Part 371 under 12 U.S.C. 1821(e)(8)(D)) that the FDIC determines by regulation, resolution, or order to be a qualified financial contract.

     
 

15.

Creditor may in its sole discretion, accept a photocopy, electronically transmitted facsimile, pdf or other reproduction of this Agreement and/or any document related hereto (a "Counterpart") as the binding and effective record of this Agreement and/or such other document, whether or not an ink signed copy hereof or thereof is also received by Creditor from Customer, provided, however, that if Creditor accepts a Counterpart as the binding and effective record of this Agreement or any other document, the Counterpart acknowledged by Creditor (either in ink or electronically) shall constitute the record hereof or thereof. Customer represents that the signature that appears on the Counterpart that is transmitted by Customer to Creditor in any manner described above is intended by Customer to authenticate the Counterpart notwithstanding that such signature is electronic, facsimile or a reproduction and Customer further agrees that a Counterpart of this Agreement or such other document received by Creditor, shall, when acknowledged by Creditor (either in ink or electronically), constitute an original document for the purposes of establishing the provisions hereof or thereof and shall be legally admissible under the best evidence rule and binding on and

 

 

 

   

enforceable against Customer. If Creditor accepts a Counterpart of a document as the binding and effective record thereof, only such Counterpart acknowledged by Creditor's ink or electronic signature may be marked "Original" and perfection of a security interest by possession or control may only be accomplished by possession or control of the Counterpart that bears Creditor's acknowledgement.

 

  16. Benchmark Replacement Provisions. Notwithstanding anything to the contrary contained herein:

 

 

(a) Benchmark Replacement. If a Benchmark Transition Event occurs, the applicable Benchmark Replacement will replace the then-current Benchmark for all purposes hereunder on the Benchmark Replacement Date without any further action or consent of Customer.

   
 

(b) Benchmark Replacement Conforming Changes. In connection with the use, administration, adoption or implementation of a Benchmark Replacement, Creditor will have the right to make Conforming Changes from time to time and any amendments implementing such Conforming Changes will become effective without any further action or consent of Customer.

   
 

(c) Notices: Standards for Decisions and Determinations. Creditor will promptly notify Customer of (i) the implementation of any Benchmark Replacement, and (ii) the effectiveness of any Conforming Changes in connection with the use, administration, adoption or implementation of a Benchmark Replacement. Any determination, decision or election that may be made by Creditor pursuant to these provisions, including any determination with respect to a tenor, rate or adjustment or of the occurrence or non-occurrence of an event, circumstance or date and any decision to take or refrain from taking any action or any selection, will be conclusive and binding absent manifest error and will be made in its sole discretion and without Customer consent.

   
 

(d) Certain Defined Terms. As used herein:

   
  "Benchmark" means, initially, the Term SOFR Reference Rate for a tenor comparable to one month; provided, however, that if a Benchmark Transition Event has occurred with respect to the Term SOFR Reference Rate for a tenor comparable to one month or the then-current Benchmark, then "Benchmark" means the applicable Benchmark Replacement to the extent that such Benchmark Replacement has become effective pursuant to the provisions of this Agreement.
   
  "Benchmark Administrator" means, initially, the Term SOFR Administrator or any successor administrator of the then-current Benchmark or any insolvency or resolution official with authority over such administrator.
   
  "Benchmark Replacement" means the sum of: (x) the alternate rate of interest that has been selected by Creditor as the replacement for the then-current Benchmark and (y) the spread adjustment, or method for calculating or determining such spread adjustment, (which may be a positive or negative value or zero) that has been selected by Creditor, in each case giving due consideration to (i) any selection or recommendation by the Relevant Governmental Body at such time for a replacement rate, the mechanism for determining such a rate, the methodology or conventions applicable to such rate, or the spread adjustment, or method for calculating or determining such spread adjustment, for such rate or (ii) any evolving or then­ prevailing market convention for determining a rate of interest as a replacement to the then-current Benchmark, the methodology or conventions applicable to such rate, or the spread adjustment, or method for calculating or determining such spread adjustment, for such rate for U.S. dollar-denominated syndicated or bilateral credit facilities; provided, however, that if the Benchmark Replacement as determined as provided would be less than the Benchmark Floor, then the Benchmark Replacement shall be deemed to be the Benchmark Floor for the purposes hereof.
   
  "Benchmark Replacement Date" means the date specified by Creditor in a notice to Customer following a Benchmark Transition Event.
   
  "Benchmark Transition Event" means the occurrence of one or more of the following events with respect to the then-current Benchmark: a public statement or publication of information by or on behalf of the Benchmark Administrator or a regulatory supervisor for the Benchmark Administrator announcing that (a) the Benchmark Administrator has ceased or will cease to provide the Benchmark, permanently or indefinitely or (b) the Benchmark is not, or as of a specified future date will not be, representative.
   
  "Relevant Governmental Body" means the Board of Governors of the Federal Reserve System and/or the Federal Reserve Bank of New York, or a committee officially endorsed or convened by the Board of Governors of the Federal Reserve System and/or the Federal Reserve Bank of New York or any successor thereto.

 

 
EX-101.SCH 7 nwpx-20220930.xsd XBRL TAXONOMY EXTENSION SCHEMA 000 - Document - Document And Entity Information link:calculationLink link:definitionLink link:presentationLink 001 - Statement - Condensed Consolidated Statements of Operations (Unaudited) link:calculationLink link:definitionLink link:presentationLink 002 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited) link:calculationLink link:definitionLink link:presentationLink 003 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) link:calculationLink link:definitionLink link:presentationLink 004 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 005 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) link:calculationLink link:definitionLink link:presentationLink 006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals) link:calculationLink link:definitionLink link:presentationLink 007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) link:calculationLink link:definitionLink link:presentationLink 008 - Disclosure - Note 1 - Organization and Basis of Presentation link:calculationLink link:definitionLink link:presentationLink 009 - Disclosure - Note 2 - Business Combination link:calculationLink link:definitionLink link:presentationLink 010 - Disclosure - Note 3 - Inventories link:calculationLink link:definitionLink link:presentationLink 011 - Disclosure - Note 4 - Goodwill link:calculationLink link:definitionLink link:presentationLink 012 - Disclosure - Note 5 - Current Debt link:calculationLink link:definitionLink link:presentationLink 013 - Disclosure - Note 6 - Fair Value Measurements link:calculationLink link:definitionLink link:presentationLink 014 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities link:calculationLink link:definitionLink link:presentationLink 015 - Disclosure - Note 8 - Stockholders' Equity link:calculationLink link:definitionLink link:presentationLink 016 - Disclosure - Note 9 - Share-based Compensation link:calculationLink link:definitionLink link:presentationLink 017 - Disclosure - Note 10 - Commitments and Contingencies link:calculationLink link:definitionLink link:presentationLink 018 - Disclosure - Note 11 - Revenue link:calculationLink link:definitionLink link:presentationLink 019 - Disclosure - Note 12 - Income Taxes link:calculationLink link:definitionLink link:presentationLink 020 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss link:calculationLink link:definitionLink link:presentationLink 021 - Disclosure - Note 14 - Net Income Per Share link:calculationLink link:definitionLink link:presentationLink 022 - Disclosure - Note 15 - Segment Information link:calculationLink link:definitionLink link:presentationLink 023 - Disclosure - Note 16 - Recent Accounting and Reporting Developments link:calculationLink link:definitionLink link:presentationLink 024 - Disclosure - Note 2 - Business Combination (Tables) link:calculationLink link:definitionLink link:presentationLink 025 - Disclosure - Note 3 - Inventories (Tables) link:calculationLink link:definitionLink link:presentationLink 026 - Disclosure - Note 4 - Goodwill (Tables) link:calculationLink link:definitionLink link:presentationLink 027 - Disclosure - Note 6 - Fair Value Measurements (Tables) link:calculationLink link:definitionLink link:presentationLink 028 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Tables) link:calculationLink link:definitionLink link:presentationLink 029 - Disclosure - Note 9 - Share-based Compensation (Tables) link:calculationLink link:definitionLink link:presentationLink 030 - Disclosure - Note 11 - Revenue (Tables) link:calculationLink link:definitionLink link:presentationLink 031 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss (Tables) link:calculationLink link:definitionLink link:presentationLink 032 - Disclosure - Note 14 - Net Income Per Share (Tables) link:calculationLink link:definitionLink link:presentationLink 033 - Disclosure - Note 15 - Segment Information (Tables) link:calculationLink link:definitionLink link:presentationLink 034 - Disclosure - Note 1 - Organization and Basis of Presentation (Details Textual) link:calculationLink link:definitionLink link:presentationLink 035 - Disclosure - Note 2 - Business Combination (Details Textual) link:calculationLink link:definitionLink link:presentationLink 036 - Disclosure - Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details) link:calculationLink link:definitionLink link:presentationLink 037 - Disclosure - Note 2 - Business Combination - Intangible Assets Acquired (Details) link:calculationLink link:definitionLink link:presentationLink 038 - Disclosure - Note 2 - Business Combination - Pro Forma Summary (Details) link:calculationLink link:definitionLink link:presentationLink 039 - Disclosure - Note 3 - Inventories - Components of Inventories (Details) link:calculationLink link:definitionLink link:presentationLink 040 - Disclosure - Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details) link:calculationLink link:definitionLink link:presentationLink 041 - Disclosure - Note 5 - Current Debt (Details Textual) link:calculationLink link:definitionLink link:presentationLink 042 - Disclosure - Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details) link:calculationLink link:definitionLink link:presentationLink 043 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Details Textual) link:calculationLink link:definitionLink link:presentationLink 044 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) link:calculationLink link:definitionLink link:presentationLink 045 - Disclosure - Note 8 - Stockholders' Equity (Details Textual) link:calculationLink link:definitionLink link:presentationLink 046 - Disclosure - Note 9 - Share-based Compensation (Details Textual) link:calculationLink link:definitionLink link:presentationLink 047 - Disclosure - Note 9 - Share-based Compensation - Share-based Compensation Expense (Details) link:calculationLink link:definitionLink link:presentationLink 048 - Disclosure - Note 9 - Share-based Compensation - RSU and PSA Activity (Details) link:calculationLink link:definitionLink link:presentationLink 049 - Disclosure - Note 10 - Commitments and Contingencies (Details Textual) link:calculationLink link:definitionLink link:presentationLink 050 - Disclosure - Note 11 - Revenue 1 (Details Textual) link:calculationLink link:definitionLink link:presentationLink 051 - Disclosure - Note 11 - Revenue 2 (Details Textual) link:calculationLink link:definitionLink link:presentationLink 052 - Disclosure - Note 11 - Revenue - Disaggregation of Revenue (Details) link:calculationLink link:definitionLink link:presentationLink 053 - Disclosure - Note 12 - Income Taxes (Details Textual) link:calculationLink link:definitionLink link:presentationLink 054 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details) link:calculationLink link:definitionLink link:presentationLink 055 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details) link:calculationLink link:definitionLink link:presentationLink 056 - Disclosure - Note 14 - Net Income Per Share (Details Textual) link:calculationLink link:definitionLink link:presentationLink 057 - Disclosure - Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details) link:calculationLink link:definitionLink link:presentationLink 058 - Disclosure - Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details) link:calculationLink link:definitionLink link:presentationLink EX-101.CAL 8 nwpx-20220930_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE EX-101.DEF 9 nwpx-20220930_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE EX-101.LAB 10 nwpx-20220930_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE Document And Entity Information us-gaap_DerivativeNotionalAmount Derivative, Notional Amount Note To Financial Statement Details Textual Intangible assets us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill Note 2 - Business Combination Note 3 - Inventories Note 4 - Goodwill Note 6 - Fair Value Measurements Note 7 - Derivative Instruments and Hedging Activities Note 9 - Share-based Compensation Not Designated as Hedging Instrument [Member] Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block] Note 11 - Revenue Note 13 - Accumulated Other Comprehensive Loss Prepaid expenses and other us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets Note 14 - Net Income Per Share Trade and other receivables us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables Income Tax Disclosure [Text Block] Note 15 - Segment Information Borrowings on line of credit Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details) Hedging Designation [Axis] Cash and cash equivalents us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents Note 2 - Business Combination - Intangible Assets Acquired (Details) Hedging Designation [Domain] Inventories us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory Other assets us-gaap_ShareBasedCompensation Share-based compensation expense Note 2 - Business Combination - Pro Forma Summary (Details) Designated as Hedging Instrument [Member] us-gaap_LiabilitiesCurrent Total current liabilities Note 3 - Inventories - Components of Inventories (Details) Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details) Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details) Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) Assets Note 9 - Share-based Compensation - Share-based Compensation Expense (Details) Note 9 - Share-based Compensation - RSU and PSA Activity (Details) Note 11 - Revenue - Disaggregation of Revenue (Details) Total purchase consideration us-gaap_BusinessCombinationConsiderationTransferred1 Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent Pension liability adjustment Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details) Intangible Asset Acquired, Fair Value Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details) nwpx_PerformanceShareAwardTargetLevelPercentage Performance Share Award Target Level, Percentage Represents the target level percentage for performance share awards. Intangible Asset Acquired, Useful Life (Year) Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details) Notes To Financial Statements Notes To Financial Statements [Abstract] Schedule of Changes in Accumulated Other Comprehensive Income Loss [Table Text Block] Represents schedule of changes in accumulated other comprehensive income loss. Total financial assets RSUs and PSAs granted, weighted average grant date fair value (in dollars 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 (in dollars per share) us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired Business Acquisition, Percentage of Voting Interests Acquired RSUs and PSAs vested, weighted average grant date fair value (in dollars per share) Unvested RSUs and PSAs canceled, weighted average grant date fair value (in dollars per share) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share) Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod Unvested RSUs and PSAs canceled (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber Unvested RSUs and PSAs (in shares) Unvested RSUs and PSAs (in shares) Reclassified to Property and Equipment [Member] Related to reclassified to property and equipment. Other comprehensive income (loss) before reclassifications Reclassified to Interest Expense [Member] Related to reclassified to interest expense. us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent Amounts reclassified from Accumulated other comprehensive loss RSUs and PSAs granted (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod RSUs and PSAs vested (in shares) Current debt Reclassified to Net Sales [Member] Related to reclassified to net sales. Other comprehensive income (loss), net of tax: us-gaap_AssetsCurrent Total current assets Net income us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss Stockholders' Equity Note Disclosure [Text Block] Business Acquisition, Pro Forma Information [Table Text Block] Net sales us-gaap_BusinessAcquisitionsProFormaRevenue nwpx_NumberOfManufacturingFacilities Number of Manufacturing Facilities Represents number of manufacturing facilities. Operating lease liabilities nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilities Amount of operating lease liabilities assumed at the acquisition date. Operating lease right-of-use assets nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets Amount of operating lease right-of-use assets acquired at the acquisition date. Common stock, $.01 par value, 15,000,000 shares authorized, 9,927,360 and 9,870,567 shares issued and outstanding as of September 30, 2022 and December 31, 2021, respectively Adjustments to reconcile net income to net cash provided by (used in) operating activities: Common stock, shares authorized (in shares) Common stock, shares issued (in shares) Contract liabilities Common stock, par value (in dollars per share) Common Stock, Par or Stated Value Per Share (in dollars per share) Schedule of Goodwill [Table Text Block] Accrued liabilities Statistical Measurement [Domain] Pension Plan [Member] Maximum [Member] Noncash investing and financing activities: Minimum [Member] Accounts payable Statistical Measurement [Axis] Retirement Plan Type [Axis] Retirement Plan Type [Domain] Accrued property and equipment purchases Accrued consideration in acquisition of business The total amount of consideration accrued in acquiring a business or in consideration for an asset received in a noncash (or part noncash) acquisition. Contract assets Preferred stock, $.01 par value, 10,000,000 shares authorized, none issued or outstanding Preferred stock, shares issued (in shares) us-gaap_PolicyTextBlockAbstract Accounting Policies Trademarks and Trade Names [Member] Preferred stock, shares authorized (in shares) Depreciation and finance lease amortization The amount of expense recognized in the current period that reflects the allocation of the cost of tangible assets over the assets' useful lives and amount of amortization expense attributable to right-of-use asset from finance lease. Inventories Total inventories Preferred stock, par value (in dollars per share) Portland Harbor Superfund Site [Member] Represents the Portland Harbor Superfund Site. Net sales Fair Value, Inputs, Level 3 [Member] us-gaap_PaymentsToAcquirePropertyPlantAndEquipment Purchases of property and equipment Fair Value Hierarchy and NAV [Domain] Fair Value, Inputs, Level 1 [Member] Fair Value, Inputs, Level 2 [Member] Shares used in per share calculations: Fair Value Hierarchy and NAV [Axis] Goodwill Disclosure [Text Block] Property and equipment Current liabilities: us-gaap_LossContingencyAccrualCarryingValueCurrent Loss Contingency, Accrual, Current us-gaap_Assets Total assets Trade and other receivables, less allowance for doubtful accounts of $498 and $503 Patents [Member] nwpx_OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived Other Commitment, Amount Paid for Equipment Purchased Yet Not Received Amount of commitment of payment for equipment purchased but not received. Cash flows from operating activities: us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1 Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) Schedule of Segment Reporting Information, by Segment [Table Text Block] Customer Relationships [Member] Statement [Line Items] Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member] us-gaap_NumberOfOperatingSegments Number of Operating Segments Engineered Steel Pressure Pipe [Member] Represents Engineered Steel Pressure Pipe segment. Precast Infrastructure and Engineered Systems [Member] Represents Precast Infrastructure and Engineered Systems segment. Backlog [Member] Represents information related to backlog. Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member] Deferred compensation plan Share-Based Payment Arrangement [Text Block] Finite-Lived Intangible Assets by Major Class [Axis] Finite-Lived Intangible Assets, Major Class Name [Domain] Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block] Additional paid-in-capital AOCI Attributable to Parent [Member] Stockholders’ equity: Other income Segment Reporting Disclosure [Text Block] Award Type [Domain] Current assets: Fair Value Disclosures [Text Block] Award Type [Axis] Net income Net income Intangible assets, net us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations Cash and cash equivalents, beginning of period Cash and cash equivalents, end of period us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect Change in cash and cash equivalents us-gaap_Liabilities Total liabilities us-gaap_NetCashProvidedByUsedInFinancingActivities Net cash used in financing activities Commitments and contingencies (Note 10) Sale of Stock [Axis] Director [Member] Sale of Stock [Domain] Performance Shares [Member] us-gaap_OperatingIncomeLoss Operating income us-gaap_ContractWithCustomerLiabilityRevenueRecognized Contract with Customer, Liability, Revenue Recognized us-gaap_NetCashProvidedByUsedInOperatingActivities Net cash provided by (used in) operating activities Prepaid expenses and other us-gaap_NetCashProvidedByUsedInInvestingActivities Net cash used in investing activities Loss Contingency, Nature [Domain] Measurement period adjustment (Note 2) Goodwill, Purchase Accounting Adjustments Gross profit Gross profit Cost of sales Counterparty Name [Axis] Counterparty Name [Domain] Loss Contingency Nature [Axis] us-gaap_DeferredIncomeTaxLiabilitiesNet Deferred income taxes Consolidation Items [Domain] Accumulated depreciation and amortization Business Combination Disclosure [Text Block] Commitments and Contingencies Disclosure [Text Block] Schedule of Business Acquisitions, by Acquisition [Table Text Block] Property and equipment, less accumulated depreciation and amortization of $115,377 and $106,957 us-gaap_DerivativeLiabilities Foreign currency forward contracts Goodwill Goodwill Goodwill Goodwill Consolidation Items [Axis] Other financing activities Park Environmental Equipment, LLC [Member] Represents Park Environmental Equipment, LLC. us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation Tax withholdings related to net share settlements of equity awards us-gaap_LettersOfCreditOutstandingAmount Letters of Credit Outstanding, Amount us-gaap_DerivativeAssets Derivative assets Derivative Instrument [Axis] Derivative Contract [Domain] Cash flows from investing activities: Scenario [Domain] Forecast [Member] us-gaap_EarningsPerShareAbstract Net income per share: Retained Earnings [Member] Earnings Per Share [Text Block] nwpx_NumberOfInactiveStockIncentivePlans Number Of Inactive Stock Incentive Plans The number of inactive stock incentive plans. Title of Individual [Domain] Title of Individual [Axis] Scenario [Axis] Additional Paid-in Capital [Member] Common Stock [Member] Income tax expense Tax (expense) benefit Equity Components [Axis] Equity Component [Domain] us-gaap_ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months us-gaap_LongTermDebt Long-Term Debt, Total nwpx_IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax Increase (Decrease) in Revenue from Contract with Customers, Including Assessed Tax The increase (decrease) during the period of the amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Environmental Remediation Site [Domain] us-gaap_RevenueRemainingPerformanceObligationPercentage Revenue, Remaining Performance Obligation, Percentage us-gaap_IncreaseDecreaseInAccountsPayable Accounts payable Gains (losses) recognized on derivatives us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period (Year) us-gaap_RevenueRemainingPerformanceObligation Revenue, Remaining Performance Obligation, Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Environmental Remediation Site [Axis] Interim Funding AgreementIFA [Member] Represents the Interim Funding Agreement with Wells Fargo Finance Inc. us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest Income before income taxes Reclassification out of Accumulated Other Comprehensive Income [Member] Pension liability adjustment, tax expense/benefit Reclassification out of Accumulated Other Comprehensive Income [Axis] Reclassification out of Accumulated Other Comprehensive Income [Domain] Comprehensive Income (Loss) Note [Text Block] Stock Awards [Member] Represents stock awards. Reclassification out of Accumulated Other Comprehensive Income [Table Text Block] Cash and cash equivalents Timing of Transfer of Good or Service [Domain] Transferred at Point in Time [Member] Transferred over Time [Member] Disaggregation of Revenue [Table Text Block] us-gaap_AllocatedShareBasedCompensationExpense Share-based compensation expense Timing of Transfer of Good or Service [Axis] us-gaap_RepaymentsOfLongTermDebt Payments on other debt Unrealized gain (loss) on cash flow hedges, tax expense/benefit Revenue from Contract with Customer [Text Block] Schedule Of Inventory Current And Non Current [Table Text Block] 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. Includes current and non-current inventory balances. Document Quarterly Report Amendment Flag Entity Incorporation, State or Country Code Accounting Policies [Abstract] us-gaap_ComprehensiveIncomeNetOfTax Comprehensive income Document Transition Report City Area Code nwpx_EstimatedCostOfEPASelectedRemedy Estimated Cost of EPA Selected Remedy The estimated cost of the remedy selected by EPA. nwpx_EstimatedTimeToCompleteSelectedEPARemedy Estimated Time to Complete Selected EPA Remedy (Year) The estimated amount of time to complete the selected EPA remedy. Selling, General and Administrative Expenses [Member] Entity Interactive Data Current nwpx_NumberOfPotentiallyResponsibleParties Number Of Potentially Responsible Parties Number of potentially responsible parties for Portland Harbor Superfund site. Portland Harbor Natural Resources Trustee Council [Member] The name or description of the loss contingency by its nature. us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities Accrued and other liabilities nwpx_NumberOfActiveStockIncentivePlans Number Of Active Stock Incentive Plans The number of active stock incentive plans. Interest Expense [Member] us-gaap_SharesOutstanding Balances (in shares) Balances (in shares) Security Exchange Name Common stock, shares outstanding (in shares) nwpx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumberAtTargetLevelOfPerformance Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Nonvested Number At Target Level Of Performance (in shares) The number of non-vested equity-based payment instruments at a target level of performance, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date. Preferred stock, shares outstanding (in shares) nwpx_PerformanceAwardsIssuedMultiplier Performance Awards Issued Multiplier The percentage of the performance awards issued multiplier. Title of 12(b) Security Restricted Stock Units and Performance Stock Awards [Member] The type or description of the award. Current Fiscal Year End Date us-gaap_DebtInstrumentBasisSpreadOnVariableRate1 Debt Instrument, Basis Spread on Variable Rate Borrowings on other debt Cost of Sales [Member] us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets Prepaid expenses and other assets Document Fiscal Period Focus Sales [Member] Document Fiscal Year Focus Right-of-use assets obtained in exchange for finance lease liabilities Document Period End Date Right-of-use assets obtained in exchange for operating lease liabilities Income Statement Location [Axis] Income Statement Location [Domain] Entity File Number Entity Emerging Growth Company us-gaap_DebtInstrumentFaceAmount Debt Instrument, Face Amount Document Type Entity Small Business Entity Shell Company Document Information [Line Items] Document Information [Table] Entity Filer Category Debt Instrument [Axis] Entity Current Reporting Status Debt Instrument, Name [Domain] us-gaap_BusinessCombinationAcquisitionRelatedCosts Business Combination, Acquisition Related Costs Segments [Axis] Segments [Domain] Variable Rate [Domain] Effect of potentially dilutive common shares (in shares) Property and Equipment [Member] Represents property and equipment. us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares) Variable Rate [Axis] us-gaap_RepaymentsOfLinesOfCredit Repayments on line of credit us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding Diluted (in shares) Diluted weighted-average common shares outstanding (in shares) nwpx_EquityOfferingMaximumOfferingAmount Equity Offering, Maximum Offering Amount Maximum value of company's equity authorized for issuance under equity offering. At-the-Market Offering [Member] Represents the At-the-Market Offering Share-based compensation expense us-gaap_IncreaseDecreaseInAccountsAndOtherReceivables Trade and other receivables Statement of Comprehensive Income [Abstract] Entity Tax Identification Number Entity Central Index Key Entity Registrant Name us-gaap_ProceedsFromLinesOfCredit Borrowings on line of credit Entity [Domain] Legal Entity [Axis] Statement [Table] Entity Address, Address Line One Statement of Financial Position [Abstract] Diluted (in dollars per share) Diluted (in dollars per share) Basic (in shares) us-gaap_AmortizationOfIntangibleAssets Amortization of intangible assets Entity Address, City or Town us-gaap_EffectiveIncomeTaxRateContinuingOperations Effective Income Tax Rate Reconciliation, Percent, Total Entity Address, Postal Zip Code Business Acquisition [Axis] Basic (in dollars per share) Basic (in dollars per share) Entity Address, State or Province Business Acquisition, Acquiree [Domain] Allowance for doubtful accounts Statement of Cash Flows [Abstract] Entity Common Stock, Shares Outstanding Statement of Stockholders' Equity [Abstract] us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent Net current period other comprehensive income (loss) Income Statement [Abstract] nwpx_EquityOfferingCommissionPercentageOfGrossProceeds Equity Offering, Commission, Percentage of Gross Proceeds Represents the cash commission percentage of gross proceeds Long-Term Debt [Text Block] us-gaap_IncreaseDecreaseInInventories Inventories Trading Symbol Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred Local Phone Number us-gaap_TableTextBlock Notes Tables Accounting Standards Update and Change in Accounting Principle [Text Block] Issuance of common stock under stock compensation plans, net of tax withholdings (in shares) Selling, general, and administrative expense Issuance of common stock under stock compensation plans, net of tax withholdings us-gaap_PaymentsForProceedsFromOtherInvestingActivities Other investing activities Cash flows from financing activities: Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block] Other long-term liabilities Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member] Raw materials Supplies Accrued liabilities nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities Amount of accrued liabilities, assumed at the acquisition date. us-gaap_LiabilitiesAndStockholdersEquity Total liabilities and stockholders’ equity Finished goods Work-in-process Schedule of Unvested Restricted Stock Units and Performance Share Awards Activity [Table Text Block] Tabular disclosure of the change in restricted stock units (RSUs) and performance share awards (PSAs). us-gaap_IncreaseDecreaseInContractWithCustomerAsset Contract assets, net Retained earnings Accumulated other comprehensive loss Second Foreign Exchange Forward Contract [Member] Related to the second foreign exchange forward contract. Derivative Instruments, Gain (Loss) [Table Text Block] Interest expense Interest expense Lower Willamette Group [Member] Refers to information regarding the Lower Willamette Group. Foreign Exchange Forward [Member] us-gaap_StockholdersEquity Total stockholders’ equity Balance Balance us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities Total liabilities assumed us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired Payments to Acquire Businesses, Net of Cash Acquired, Total us-gaap_DisclosureTextBlockAbstract Notes to Financial Statements Derivative Instruments and Hedging Activities Disclosure [Text Block] us-gaap_OtherNoncashIncomeExpense Other, net Inventory Disclosure [Text Block] Operating lease liabilities Class of Stock [Axis] Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Current portion of operating lease liabilities us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets Total assets acquired Liabilities Interest Rate Swap [Member] Reclassification, Type [Domain] Reclassification, Type [Axis] Accounts payable us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable Unrealized gain (loss) on cash flow hedges Operating Segments [Member] us-gaap_DerivativeFixedInterestRate Derivative, Fixed Interest Rate us-gaap_OperatingLeaseRightOfUseAsset Operating lease right-of-use assets Deferred income taxes us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets us-gaap_FinanceLeasePrincipalPayments Payments on finance lease obligations Deferred income taxes Property and equipment us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment EX-101.PRE 11 nwpx-20220930_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE GRAPHIC 12 wellsfargo.jpg begin 644 wellsfargo.jpg M_]C_X 02D9)1@ ! 0$ 8 !@ #_X1#N17AI9@ 34T *@ @ ! $[ ( M , (2H=I 0 ! (5IR= $ 8 0SNH< < @, /@ M FMC.60G/SX-"CQX.GAM<&UE=&$@ M>&UL;G,Z>#TB861O8F4Z;G,Z;65T82\B/CQR9&8Z4D1&('AM;&YS.G)D9CTB M:'1T<#HO+W=W=RYW,RYO&UL;G,Z M)R$;'24=%Q@B+B(E*"DK+"L:("\S+RHR)RHK*O_; $,!!P@("@D*% L+%"H< M&!PJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ*BHJ M*BHJ*BHJ*O_ !$( (< A ,!(@ "$0$#$0'_Q ? !!0$! 0$! 0 M 0(#! 4&!P@)"@O_Q "U$ " 0,# @0#!04$! 7T! @, !!$%$B$Q M008346$'(G$4,H&1H0@C0K'!%5+1\"0S8G*""0H6%Q@9&B4F)R@I*C0U-CH.$A8:'B(F*DI.4 ME9:7F)F:HJ.DI::GJ*FJLK.TM;:WN+FZPL/$Q<;'R,G*TM/4U=;7V-G:X>+C MY.7FY^CIZO'R\_3U]O?X^?K_Q ? 0 # 0$! 0$! 0$! 0(#! 4& M!P@)"@O_Q "U$0 " 0($! ,$!P4$! ! G< 0(#$00%(3$&$D%1!V%Q$R(R M@0@40I&AL<$)(S-2\!5B7J"@X2%AH>(B8J2DY25EI>8F9JB MHZ2EIJ>HJ:JRL[2UMK>XN;K"P\3%QL?(RKR M\_3U]O?X^?K_V@ , P$ A$#$0 _ /8_%/C_ ,.^#)[:'Q%?&U>Z5FB A=]P M4@'[H..HK!_X7IX _P"@TW_@++_\37G7[37_ "'/#O\ U[7'_H<=>(4#L?6G M_"]/ '_0:;_P%E_^)H_X7IX _P"@TW_@++_\37R710%CZT_X7IX _P"@TW_@ M++_\31_PO3P!_P!!IO\ P%E_^)KY+HH"Q]:?\+T\ ?\ 0:;_ ,!9?_B:/^%Z M> /^@TW_ ("R_P#Q-?)=% 6/K3_A>G@#_H--_P" LO\ \31_PO3P!_T&F_\ M 67_ .)KY+HH"Q]:?\+T\ ?]!IO_ %E_P#B:/\ A>G@#_H--_X"R_\ Q-?) M=% 6/K3_ (7IX _Z#3?^ LO_ ,31_P +T\ ?]!IO_ 67_P")KY+HH"Q]:?\ M"]/ '_0:;_P%E_\ B:D@^-O@.YN8K>'66:2:18T'V6499C@#[OJ:^1ZO:)_R M,6F?]?L'_HQ: L?=-%%% CYW_::_Y#GAW_KVN/\ T..O$*]O_::_Y#GAW_KV MN/\ T..O$*"@HHHH **** "BBB@ HHHH **** "BBB@ J]HG_(Q:9_U^P?\ MHQ:HU>T3_D8M,_Z_8/\ T8M 'W311102?._[37_(<\._]>UQ_P"AQUXA7M_[ M37_(<\._]>UQ_P"AQUQOPIT#PCXIUMM%\4'4$OKEB;)[:4)&0J996/\ >.#C MB@KH<%17I/Q!\.^"/!WCJQT:.VULVUNPDU(M*K&6)D!3R3QSG(.<=#73>*OA M[\.M ^'D'BBV37+B"^1!:M'.&VM(A*%P<87(P: /$**];^&W@SP#XM\*WEWJ MZZQ;W6D6XEU*X\X) ]31H_$,+V>PNMU.$+*V< M$8S_ '30!X=17IK0?"99[M%TGQC)'9R,D\T3*R1X8KDG/ R#UJUXS\(^ /#M MOX5UFP;5;O1-6:5IS'/F5D$>5V[@-IW$9SZ$4 >445[IJ'P_^%^F_#VV\8S) MX@?3[I8FCC2X'FDR' !!X'/7FO$K\VC:E?E#>^.M $% M%>I?"WPMX#\:R0Z-J<>LIK8@DGEDCF"0,%8#Y>ISAE[>M8_Q*TKP7X?U.?1? M#$6K#4K*Y\NYDNY T)79DA>^WK0!PM%:_A3P[<>+?%5AH=G(L4MVY!D89 M$:@%F;'? !X[UZ+K=C\)/!VK3:!J&F:[J]Y:X2ZNTG*[7P"0H#*,C/88]S0! MY'5[1/\ D8M,_P"OV#_T8M>A^,OA_P"%=*^&:^+/"VIW>H0WE[&EMYQ \F-L MAD88Y8,#R<$=/<^>:)_R,6F?]?L'_HQ: /NFBBB@D^=_VFO^0YX=_P"O:X_] M#CKQO2=4FT/6[+5;7_76,Z7">^TY(_$9'XU[)^TU_P ASP[_ ->UQ_Z''7B% M!1[_ /&WPO\ \)=<>$M*]0CAO--=T@C>)G9 MXQ\T9! (R =O7M7'_"KXD6^C_$;6-4\3W8M;/6DDDN)&!94EW[DX )/!9?RH M$7+P'P5^S9:VQ'E:AXLN/-D&/F6$@-C_ +X51_P/%:G[,O\ R%O$?_7"V_\ M0I*Y#XS>-+'Q?XLMQH4ZSZ5I]J(K=XU*JSMRY (&.BK^%=E\)-=^'_@*SN+R M\\8I)>ZE##YUNUJZBW*@DID*=QRQ&?:@.@V5?!@^%7Q%/@Y]0:[)_P!.%]P0 M?-.-F.-N=_OZUY'?/KS>'=+743>?V,K2?V=YJ_N_E9[B"*PD"R N6VL.C8SQD5?\&]"\2I#I>FM,EQ=^0 M[-"ICR'8%1DLX[=S0!K^*?\ DTW0?I9_^C*\2T[3;W5[Z.RTJTFO+J0$I# A M9VP,G 'H!FO=M6UOX;ZG\*['P6OCJ.*.S$(%V;.1BWEMG[NW'/UK/^'K?"[P M)K[ZP_CI=2NA$T4(>S>-8PV-QP%.3@8]@3ZT <_^SZ,?%< C!&G7 /\ WU'7 M.?%/_DK'B7_K^/\ Z E=A\)+_P $>%M23Q)K/BU;?4)(9H7T]K9R(PSC!W@' M/"@_C3?$^E?#;Q+XMU#6W^)"VWVZ?SFA33W;9P!@$CV]* ZG'^#%\2>'/%FA M:YI6BW5U+,SO9Q"(XO(PI$@0]_E)Y'2O7;WQ'\'/']P;CQ- NF:LW[N5KI'M MY59>"&D3Y3C&,D]JIW'C;P'IWC#X?KHFMQOI&@07<,TICD_=!H55"WRY)8@] M!7.:QH_PY\=:K<:QH_BY/#5S@Z4 7_B+\-9- M!^'[:AX-\0W&H>&%E6YFL'E65%)( F1U^]@D9S]<\5Y-HG_(Q:9_U^P?^C%K MT_7O%GA?PG\)[CP-X1U637;B_=C=7FPK%$&(+[>W(& !GJ237F&B?\C%IG_7 M[!_Z,6@9]TT444$GSO\ M-?\ASP[_P!>UQ_Z''7B%>W_ +37_(<\._\ 7MAH*(-Z]F'YT;U_O#\Z^D M]#U32=5^"U_XQE\'>'8[ZU2\<6\LFBWOB;P!X7@ MT/6+QK**[MK5%='4X+%6!^4'KTH \2SGGK0&ST;/T->HQ>$[/Q/^T;>:3900 MC2HK[SY4MU B$"(A*@+P S87_@1KJ/C%X:T#5_A];^*?!UG9PQ:?=R0W)M(% MB#IO,;$A0,[74<^A- '@Q?'5L?C2>8/[P_.N[^%OB"'3_$UEHMWH&DZI#JM_ M##)+?6XDDA!.T[">!ZUZ'\6/%&G^ ?%=KI>E^#/#%Q#-9+<,]SIZ[@QD=<#; M@8PHH \"#9Z'/XTN3ZG\Z]UUO1O#7CCX&3^,K?P]9Z!J=M&\BM:($1RC[2. M RMVR,@]^."8;HR(QEY&7^+!!4 \9!XZ4 M >,B9"=JR*3Z!A3MW.,_K7J]U\=/MMZ8+CP=HLV@,=OV%XW^'?!^A?#_P"& \=>+=,CU;4KA$>SL;@?NXS)Q&N#D;CG<6(. M!T''.):?'"ZN+U8O%'AS0KW1G;$UM'9X,:9Y*Y)R0.<$7?6KVB?\C% MIG_7[!_Z,6O0_C%\-K'PF;/7?#7&C:@P3RAX\\T3_D M8M,_Z_8/_1BT ?=-%%%!)\[_ +37_(<\._\ 7M*VDD$5];R7RV5O?I!]K=K:Y7='* _W6'<&N%^(WC'3/%OPU\+"QMK+3KBVNITFTRU=< M0*$*@A!@JK=1D=ZTK'XT>&M.\)R^&K3P%(FDS*ZR6YU/=N#G+98KNR<]6YSVZ4 >L?!ZQT[PK\-]9\6ZW?II MU(FQM+QHB_E*,@,JCDYD)./]@5T7PLM?!TGA_5_!6F>+?^$ABOHY)FA>U:%H MT90CD%ASR5/KGFN$UGXM^%];\,6N@77@.1=.LL&U@BU0QK$P4@'Y5&<9/7OS M7._#OQQH_@:5+^[\.3:GK$3OY=ZE^855&4*4\O!4]SD^OM0(J^%]*N="^,>C M:5?#%Q9:W#!(<=2LF,_0C!_&O7/C)XWM/#'CNPM[SPEHNN*U@LQEO809@/-< M;%8@@#C/3J37'WOQ9\):CXKA\2W7P^=M6A=)%N%U0KED^ZQ4+M8C ZCL*H>/ M?B9X?\>0O/=^#Y8=66W\BVOCJ)(A&XL,H W)/7UH ['XWS75_\ #_P]J>BW MTT.B:@8U_LJ.-50[D+H?E&3C;C;TS@BM3P:K:Q^R]?:?8*?M<%K>6\D0'S"0 M,S8QUR00<>]"-%TKQ)X=N[Z^T-HY+-X9%$9DB&(W)W J<=1AA7 M,>$/BUK/A3Q1J6J^2EY;:M<-<7ED7*@NS$[D;G:P!QWR.M '*^'=1TC3=66\ M\0Z.=9L%B;=:",'COFO7_BWX4\!^$/ \-QI/A0)?:NK16THNI M8&\O=N(+$,>V*P;SQG\*)-0.K0> ]0>_+^:;9[A8[8OG.2H<;<>U97Q# M^*[[P4D$;3UVGOR"*TK+Q;\*M$U!-4TKP;J]S>PMYD,%[=*88W!X(R[9QVR# MB@9W7QD8:5\"M"TJ_;-Z3:0[6^\6CCRY_#'ZUX)HG_(Q:9_U^P?^C%K4\:^- M]6\=ZW_:&KLJ)&I2WMHL^7 IY(&>I/=CUXZ 5EZ)_R,6F?]?L'_ *,6@#[I MHHHH)/G?]IK_ )#GAW_KVN/_ $..O$*]O_::_P"0YX=_Z]KC_P!#CKQ"@H** M** "BBB@ HHHH **** "BBB@ HHHH *O:)_R,6F?]?L'_HQ:HU>T3_D8M,_Z M_8/_ $8M 'W311102?._[37_ "'/#O\ U[7'_H<=>(5[?^TR"=<\.X'_ "[7 M'_H<=>(X/H?RH*$HI<'T/Y48/H?RH 2BEP?0_E1@^A_*@!**7!]#^5&#Z'\J M $HI<'T/Y48/H?RH 2BEP?0_E1@^A_*@!**7!]#^5&#Z'\J $J]HG_(Q:9_U M^P?^C%JE@^A_*KNB _\ "1:9P?\ C]@[?]-%H ^Z:***"3 \2>!_#GBZ6WD\ M1Z5#?O;AEB,A8; <$]"/05B?\*7^'W_0L6G_ 'W)_P#%444 '_"E_A]_T+%I M_P!]R?\ Q5'_ I?X??]"Q:?]]R?_%444 '_ I?X??]"Q:?]]R?_%4?\*7^ M'W_0L6G_ 'W)_P#%444 '_"E_A]_T+%I_P!]R?\ Q5'_ I?X??]"Q:?]]R? M_%444 '_ I?X??]"Q:?]]R?_%4?\*7^'W_0L6G_ 'W)_P#%444 '_"E_A]_ MT+%I_P!]R?\ Q5'_ I?X??]"Q:?]]R?_%444 '_ I?X??]"Q:?]]R?_%4? M\*7^'W_0L6G_ 'W)_P#%444 '_"E_A]_T+%I_P!]R?\ Q520?![P%:W,4\'A 8JU26)PZ,&?Y6!R#][U%%% ';4444 ?_9 end XML 13 R1.htm IDEA: XBRL DOCUMENT v3.22.2.2
Document And Entity Information - shares
9 Months Ended
Sep. 30, 2022
Nov. 01, 2022
Document Information [Line Items]    
Entity Central Index Key 0001001385  
Entity Registrant Name Northwest Pipe Co.  
Amendment Flag false  
Current Fiscal Year End Date --12-31  
Document Fiscal Period Focus Q3  
Document Fiscal Year Focus 2022  
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Sep. 30, 2022  
Document Transition Report false  
Entity File Number 0-27140  
Entity Incorporation, State or Country Code OR  
Entity Tax Identification Number 93-0557988  
Entity Address, Address Line One 201 NE Park Plaza Drive, Suite 100  
Entity Address, City or Town Vancouver  
Entity Address, State or Province WA  
Entity Address, Postal Zip Code 98684  
City Area Code 360  
Local Phone Number 397‑6250  
Title of 12(b) Security Common Stock, par value $0.01 per share  
Trading Symbol NWPX  
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   9,927,360
XML 14 R2.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Statements of Operations (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Net sales $ 122,984 $ 84,643 $ 350,837 $ 230,766
Cost of sales 97,866 72,280 286,853 200,090
Gross profit 25,118 12,363 63,984 30,676
Selling, general, and administrative expense 10,654 5,562 30,149 17,729
Operating income 14,464 6,801 33,835 12,947
Other income 11 171 56 260
Interest expense (964) (112) (2,393) (687)
Income before income taxes 13,511 6,860 31,498 12,520
Income tax expense 3,555 1,914 8,310 3,268
Net income $ 9,956 $ 4,946 $ 23,188 $ 9,252
us-gaap_EarningsPerShareAbstract        
Basic (in dollars per share) $ 1.00 $ 0.50 $ 2.34 $ 0.94
Diluted (in dollars per share) $ 0.99 $ 0.50 $ 2.32 $ 0.93
Shares used in per share calculations:        
Basic (in shares) 9,927 9,871 9,909 9,849
Diluted (in shares) 10,010 9,921 9,988 9,918
XML 15 R3.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Statements of Comprehensive Income (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Net income $ 9,956 $ 4,946 $ 23,188 $ 9,252
Other comprehensive income (loss), net of tax:        
Net current period other comprehensive income (loss) 608 54 482 160
Comprehensive income 10,564 5,000 23,670 9,412
Foreign Exchange Forward [Member]        
Other comprehensive income (loss), net of tax:        
Unrealized gain (loss) on cash flow hedges 158 25 (245) 73
Interest Rate Swap [Member]        
Other comprehensive income (loss), net of tax:        
Unrealized gain (loss) on cash flow hedges 428 0 661 0
Pension Plan [Member]        
Other comprehensive income (loss), net of tax:        
Pension liability adjustment $ 22 $ 29 $ 66 $ 87
XML 16 R4.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Balance Sheets (Current Period Unaudited) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Current assets:    
Cash and cash equivalents $ 3,706 $ 2,997
Trade and other receivables, less allowance for doubtful accounts of $498 and $503 73,975 52,664
Contract assets 117,260 107,170
Inventories 71,578 59,651
Prepaid expenses and other 4,326 5,744
Total current assets 270,845 228,226
Property and equipment, less accumulated depreciation and amortization of $115,377 and $106,957 124,228 121,266
Operating lease right-of-use assets 94,166 98,507
Goodwill 55,504 53,684
Intangible assets, net 36,334 39,376
Other assets 5,400 6,620
Total assets 586,477 547,679
Current liabilities:    
Current debt 3,525 0
Accounts payable 40,444 32,267
Accrued liabilities 32,561 24,498
Contract liabilities 16,243 2,623
Current portion of operating lease liabilities 4,725 4,704
Total current liabilities 97,498 64,092
Borrowings on line of credit 71,817 86,761
Operating lease liabilities 90,231 93,725
Deferred income taxes 10,982 10,984
Other long-term liabilities 7,272 8,734
Total liabilities 277,800 264,296
Commitments and contingencies (Note 10)
Stockholders’ equity:    
Preferred stock, $.01 par value, 10,000,000 shares authorized, none issued or outstanding 0 0
Common stock, $.01 par value, 15,000,000 shares authorized, 9,927,360 and 9,870,567 shares issued and outstanding as of September 30, 2022 and December 31, 2021, respectively 99 99
Additional paid-in-capital 126,686 125,062
Retained earnings 183,092 159,904
Accumulated other comprehensive loss (1,200) (1,682)
Total stockholders’ equity 308,677 283,383
Total liabilities and stockholders’ equity $ 586,477 $ 547,679
XML 17 R5.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Allowance for doubtful accounts $ 498 $ 503
Accumulated depreciation and amortization $ 115,377 $ 106,957
Preferred stock, par value (in dollars per share) $ 0.01 $ 0.01
Preferred stock, shares authorized (in shares) 10,000,000 10,000,000
Preferred stock, shares issued (in shares) 0 0
Preferred stock, shares outstanding (in shares) 0 0
Common stock, par value (in dollars per share) $ 0.01 $ 0.01
Common stock, shares authorized (in shares) 15,000,000 15,000,000
Common stock, shares issued (in shares) 9,927,360 9,870,567
Common stock, shares outstanding (in shares) 9,927,360 9,870,567
XML 18 R6.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Statements of Stockholders' Equity (Unaudited) - USD ($)
$ in Thousands
Pension Plan [Member]
Common Stock [Member]
Pension Plan [Member]
Additional Paid-in Capital [Member]
Pension Plan [Member]
Retained Earnings [Member]
Pension Plan [Member]
AOCI Attributable to Parent [Member]
Pension Plan [Member]
Foreign Exchange Forward [Member]
Common Stock [Member]
Foreign Exchange Forward [Member]
Additional Paid-in Capital [Member]
Foreign Exchange Forward [Member]
Retained Earnings [Member]
Foreign Exchange Forward [Member]
AOCI Attributable to Parent [Member]
Foreign Exchange Forward [Member]
Interest Rate Swap [Member]
Common Stock [Member]
Interest Rate Swap [Member]
Additional Paid-in Capital [Member]
Interest Rate Swap [Member]
Retained Earnings [Member]
Interest Rate Swap [Member]
AOCI Attributable to Parent [Member]
Interest Rate Swap [Member]
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
AOCI Attributable to Parent [Member]
Total
Balances (in shares) at Dec. 31, 2020                               9,805,437        
Balance at Dec. 31, 2020                               $ 98 $ 123,013 $ 148,381 $ (1,866) $ 269,626
Net income                               0 0 9,252 0 9,252
Pension liability adjustment $ 0 $ 0 $ 0 $ 87 $ 87                              
Unrealized gain (loss) on cash flow hedges           $ 0 $ 0 $ 0 $ 73 $ 73         $ 0          
Share-based compensation expense                               $ 0 2,437 0 0 2,437
Issuance of common stock under stock compensation plans, net of tax withholdings (in shares)                               65,130        
Issuance of common stock under stock compensation plans, net of tax withholdings                               $ 1 (1,167) 0 0 (1,166)
Balances (in shares) at Sep. 30, 2021                               9,870,567        
Balance at Sep. 30, 2021                               $ 99 124,283 157,633 (1,706) 280,309
Balances (in shares) at Jun. 30, 2021                               9,870,567        
Balance at Jun. 30, 2021                               $ 99 123,686 152,687 (1,760) 274,712
Net income                               0 0 4,946 0 4,946
Pension liability adjustment 0 0 0 29 29                              
Unrealized gain (loss) on cash flow hedges           0 0 0 25 25         0          
Share-based compensation expense                               $ 0 597 0 0 597
Balances (in shares) at Sep. 30, 2021                               9,870,567        
Balance at Sep. 30, 2021                               $ 99 124,283 157,633 (1,706) 280,309
Balances (in shares) at Dec. 31, 2021                               9,870,567        
Balance at Dec. 31, 2021                               $ 99 125,062 159,904 (1,682) 283,383
Net income                               0 0 23,188 0 23,188
Pension liability adjustment 0 0 0 66 66                              
Unrealized gain (loss) on cash flow hedges           0 0 0 (245) (245) $ 0 $ 0 $ 0 $ 661 661          
Share-based compensation expense                               $ 0 2,477 0 0 2,477
Issuance of common stock under stock compensation plans, net of tax withholdings (in shares)                               56,793        
Issuance of common stock under stock compensation plans, net of tax withholdings                               $ 0 (853) 0 0 (853)
Balances (in shares) at Sep. 30, 2022                               9,927,360        
Balance at Sep. 30, 2022                               $ 99 126,686 183,092 (1,200) 308,677
Balances (in shares) at Jun. 30, 2022                               9,927,360        
Balance at Jun. 30, 2022                               $ 99 125,517 173,136 (1,808) 296,944
Net income                               0 0 9,956 0 9,956
Pension liability adjustment $ 0 $ 0 $ 0 $ 22 $ 22                              
Unrealized gain (loss) on cash flow hedges           $ 0 $ 0 $ 0 $ 158 $ 158 $ 0 $ 0 $ 0 $ 428 $ 428          
Share-based compensation expense                               $ 0 1,169 0 0 1,169
Balances (in shares) at Sep. 30, 2022                               9,927,360        
Balance at Sep. 30, 2022                               $ 99 $ 126,686 $ 183,092 $ (1,200) $ 308,677
XML 19 R7.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Pension Plan [Member]        
Pension liability adjustment, tax expense/benefit $ 0 $ 0 $ 0 $ 0
Foreign Exchange Forward [Member]        
Unrealized gain (loss) on cash flow hedges, tax expense/benefit 142 $ 8 83 $ 21
Interest Rate Swap [Member]        
Unrealized gain (loss) on cash flow hedges, tax expense/benefit $ 141   $ 218  
XML 20 R8.htm IDEA: XBRL DOCUMENT v3.22.2.2
Condensed Consolidated Statements of Cash Flows (Unaudited) - USD ($)
$ in Thousands
9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Cash flows from operating activities:    
Net income $ 23,188 $ 9,252
Adjustments to reconcile net income to net cash provided by (used in) operating activities:    
Depreciation and finance lease amortization 9,321 8,358
Amortization of intangible assets 3,369 947
Deferred income taxes (3) (89)
Share-based compensation expense 2,477 2,437
Other, net (305) 106
Trade and other receivables (21,588) 3,181
Contract assets, net 3,531 (35,055)
Inventories (11,927) (13,813)
Prepaid expenses and other assets 8,789 6,383
Accounts payable 8,350 6,725
Accrued and other liabilities 315 (2,057)
Net cash provided by (used in) operating activities 25,517 (13,625)
Cash flows from investing activities:    
Purchases of property and equipment (11,792) (8,126)
Other investing activities (288) 304
Net cash used in investing activities (12,080) (7,822)
Cash flows from financing activities:    
Borrowings on line of credit 121,103 4,720
Repayments on line of credit (136,047) (2,567)
Borrowings on other debt 3,525 0
Payments on other debt 0 (13,762)
Payments on finance lease obligations (409) (297)
Tax withholdings related to net share settlements of equity awards (853) (1,166)
Other financing activities (47) (220)
Net cash used in financing activities (12,728) (13,292)
Change in cash and cash equivalents 709 (34,739)
Cash and cash equivalents, beginning of period 2,997 37,927
Cash and cash equivalents, end of period 3,706 3,188
Noncash investing and financing activities:    
Accrued property and equipment purchases 614 756
Accrued consideration in acquisition of business 1,820 0
Right-of-use assets obtained in exchange for operating lease liabilities 26 4,669
Right-of-use assets obtained in exchange for finance lease liabilities $ 894 $ 855
XML 21 R9.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 1 - Organization and Basis of Presentation
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]

1.

Organization and Basis of Presentation

 

Northwest Pipe Company (collectively with its subsidiaries, the “Company”) is a leading manufacturer of water related infrastructure products, and operates in two segments, Engineered Steel Pressure Pipe (“SPP”) and Precast Infrastructure and Engineered Systems (“Precast”). This segment presentation is consistent with how the Company’s chief operating decision maker, its Chief Executive Officer, evaluates performance of the Company and makes decisions regarding the allocation of resources.

 

In addition to being the largest manufacturer of engineered steel water pipeline systems in North America, the Company manufactures high-quality precast and reinforced concrete products; water, wastewater, and stormwater equipment; steel casing pipe, bar-wrapped concrete cylinder pipe, and one of the largest offerings of pipeline system joints, fittings, and specialized components. Strategically positioned to meet growing water and wastewater infrastructure needs, the Company provides solution-based products for a wide range of markets under the ParkUSA, Geneva Pipe and Precast, Permalok®, and Northwest Pipe Company lines. The Company is headquartered in Vancouver, Washington, and has 13 manufacturing facilities across North America.

 

The Condensed Consolidated Financial Statements are expressed in United States Dollars and include the accounts of the Company and its subsidiaries over which the Company exercises control as of the financial statement date. Intercompany accounts and transactions have been eliminated.

 

Effective in the fourth quarter of 2021, as a result of the acquisition of Park Environmental Equipment, LLC (“ParkUSA”), the Company revised its historical one segment position and identified the new operating segments, SPP and Precast, to align with changes made in its internal management structure and its reporting structure of financial information used to assess performance and allocate resources. See Note 15, “Segment Information” for detailed descriptions of these segments. As a result, certain amounts from the prior year financial statements have been reclassified in order to conform to the current year presentation.

 

The accompanying unaudited interim Condensed Consolidated Financial Statements have been prepared in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial information. The financial information as of December 31, 2021 is derived from the audited Consolidated Financial Statements presented in the Company’s Annual Report on Form 10‑K for the year ended December 31, 2021 (“2021 Form 10‑K”). Certain information and footnote disclosures normally included in consolidated financial statements prepared in accordance with U.S. GAAP have been condensed or omitted, pursuant to the rules and regulations of the Securities and Exchange Commission and the accounting standards for interim financial statements. In the opinion of management, the accompanying Condensed Consolidated Financial Statements include all adjustments necessary (which are of a normal and recurring nature) for the fair statement of the results of the interim periods presented. The Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements and Notes thereto together with management’s discussion and analysis of financial condition and results of operations contained in the Company’s 2021 Form 10‑K.

 

Operating results for the three and nine months ended September 30, 2022 are not necessarily indicative of the results that may be expected for the entire fiscal year ending December 31, 2022.

 

XML 22 R10.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Business Combination Disclosure [Text Block]

2.

Business Combination

 

On October 5, 2021, the Company completed the acquisition of 100% of Park Environmental Equipment, LLC (ParkUSA) for a purchase price of $90.2 million in cash which is included in the Precast segment for all periods following the acquisition date. ParkUSA is a precast concrete and steel fabrication-based company that develops and manufactures water, wastewater, and environmental solutions. Operations continue with ParkUSA’s previous management and workforce at its three Texas manufacturing facilities located in Houston, Dallas, and San Antonio.

 

The following table summarizes the purchase consideration and fair value of the assets acquired and liabilities assumed as of October 5, 2021 (in thousands):

 

Assets

    

Cash and cash equivalents

 $278 

Trade and other receivables

  11,034 

Inventories

  12,773 

Prepaid expenses and other

  293 

Property and equipment

  8,076 

Operating lease right-of-use assets

  58,301 

Intangible assets

  31,000 

Deferred income taxes

  347 

Total assets acquired

  122,102 
     

Liabilities

    

Accounts payable

  2,029 

Accrued liabilities

  4,067 

Operating lease liabilities

  58,301 

Total liabilities assumed

  64,397 
     

Goodwill

  32,519 
     

Total purchase consideration

 $90,224 

 

The tangible and intangible assets acquired and liabilities assumed were recognized based on their estimated fair values on the acquisition date, with the excess purchase consideration recorded as goodwill. As a result of additional information obtained during the measurement period about facts and circumstances that existed as of the acquisition date, the Company recorded measurement period adjustments during the three and nine months ended September 30, 2022 which resulted in a $1.8 million increase in goodwill and purchase consideration related to the settlement of working capital. The measurement period for the ParkUSA acquisition was complete as of September 30, 2022.

 

The following table summarizes the components of the intangible assets acquired and their estimated useful lives:

 

  

Estimated Useful Life

  

Fair Value

 
  

(In years)

  

(In thousands)

 
         

Customer relationships

  10.0  $19,800 

Trade names and trademarks

  10.0   9,600 

Patents

  21.0   1,300 

Backlog

  0.6   300 

Total intangible assets

  10.2  $31,000 

 

Goodwill arose from the acquisition of an assembled workforce, expansion of product offerings, and management’s industry know-how, and is deductible for tax purposes.

 

The Company incurred transaction costs associated with this acquisition of $0 and $0.1 million during the three and nine months ended September 30, 2022, respectively and $0.6 million and $0.8 million during the three and nine months ended September 30, 2021, respectively. These transaction costs are included in Selling, general, and administrative expense in the Condensed Consolidated Statements of Operations.

 

Unaudited Pro Forma Disclosures

 

The following unaudited pro forma summary presents the consolidated results of the Company as if the acquisition of ParkUSA had occurred on January 1 of the year prior to the acquisition (in thousands):

 

  Three Months Ended  Nine Months Ended 
  

September 30, 2021

  

September 30, 2021

 
         

Net sales

 $105,345  $283,005 

Net income

  2,477   12,247 

 

This unaudited pro forma consolidated financial data is included only for the purpose of illustration and does not necessarily indicate what the operating results would have been if the acquisition of ParkUSA had occurred on January 1 of the year prior to the acquisition. Moreover, this information is not indicative of what the Company’s future operating results will be. The information prior to the acquisition is included based on prior accounting records maintained by ParkUSA. The pro forma amounts have been calculated after applying the Company’s accounting policies and adjusting the results of ParkUSA to reflect the additional depreciation and amortization that would have been charged assuming the fair value adjustments to property and equipment and intangible assets had been applied on January 1 of the year prior to the acquisition. Adjustments also include an increase of interest expense as if the Company’s debt obtained in connection with the acquisition of ParkUSA had been outstanding since January 1 of the year prior to the acquisition. The provision for income taxes has also been adjusted for all periods, based upon the foregoing adjustments to historical results.

 

XML 23 R11.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 3 - Inventories
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Inventory Disclosure [Text Block]

3.

Inventories

 

Inventories consist of the following (in thousands):

 

  

September 30, 2022

  

December 31, 2021

 
         

Raw materials

 $52,915  $44,697 

Work-in-process

  3,817   3,018 

Finished goods

  12,646   10,096 

Supplies

  2,200   1,840 

Total inventories

 $71,578  $59,651 

 

XML 24 R12.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 4 - Goodwill
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Goodwill Disclosure [Text Block]

4.

Goodwill

 

The Company has recorded goodwill in connection with its business acquisitions within the Precast reportable segment. The changes in the carrying amount of goodwill for the nine months ended September 30, 2022 were as follows (in thousands):

 

Goodwill, December 31, 2021

 $53,684 

Measurement period adjustment (Note 2)

  1,820 

Goodwill, September 30, 2022

 $55,504 

 

XML 25 R13.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 5 - Current Debt
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Long-Term Debt [Text Block]

5.

Current Debt

 

In August 2022, the Company entered into an Interim Funding Agreement (“IFA”) with Wells Fargo Equipment Finance, Inc. (“WFEF”) allowing for aggregate interim funding advances up to $13.5 million of equipment purchased for a new reinforced concrete pipe mill, to be converted into a term loan upon final delivery and acceptance of the financed equipment. The IFA bears interest at the Term Secured Overnight Finance Rate plus 1.75%, requires monthly payments of accrued interest, and grants a security interest in the equipment to WFEF. As of September 30, 2022, the outstanding balance was $3.5 million, which is classified as a current liability since there is not a firm commitment for long-term debt financing.

 

XML 26 R14.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 6 - Fair Value Measurements
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Fair Value Disclosures [Text Block]

6.

Fair Value Measurements

 

Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability, in the principal or most advantageous market for the asset or liability, in an orderly transaction between market participants at the measurement date.

 

The authoritative guidance establishes a fair value hierarchy that prioritizes the inputs to valuation techniques used to measure fair value into three broad levels. These levels are: Level 1 (inputs are quoted prices in active markets for identical assets or liabilities); Level 2 (inputs are other than quoted prices that are observable, either directly or indirectly through corroboration with observable market data); and Level 3 (inputs are unobservable, with little or no market data that exists, such as internal financial forecasts). The Company is required to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value.

 

The following table summarizes information regarding the Company’s financial assets and liabilities that are measured at fair value on a recurring basis (in thousands):

 

  

Total

  

Level 1

  

Level 2

  

Level 3

 

As of September 30, 2022

                

Financial assets:

                

Deferred compensation plan

 $3,410  $2,902  $508  $- 

Interest rate swaps

  879   -   879   - 

Foreign currency forward contracts

  1,123   -   1,123   - 

Total financial assets

 $5,412  $2,902  $2,510  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(1,209

)

 $-  $(1,209

)

 $- 
                 

As of December 31, 2021

                

Financial assets:

                

Deferred compensation plan

 $4,321  $3,830  $491  $- 

Foreign currency forward contracts

  17   -   17   - 

Total financial assets

 $4,338  $3,830  $508  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(661

)

 $-  $(661

)

 $- 

 

The deferred compensation plan assets consist of cash and several publicly traded stock and bond mutual funds, valued using quoted market prices in active markets, classified as Level 1 within the fair value hierarchy, as well as guaranteed investment contracts, valued at principal plus interest credited at contract rates, classified as Level 2 within the fair value hierarchy. Deferred compensation plan assets are included within Other assets in the Condensed Consolidated Balance Sheets.

 

The foreign currency forward contracts and interest rate swaps are derivatives valued using various pricing models or discounted cash flow analyses that incorporate observable market parameters, such as interest rate yield curves and currency rates, and are classified as Level 2 within the fair value hierarchy. Derivative valuations incorporate credit risk adjustments that are necessary to reflect the probability of default by the counterparty or the Company. The foreign currency forward contracts and interest rate swaps are presented at their gross fair values. Foreign currency forward contract and interest rate swap assets are included within Prepaid expenses and other and foreign currency forward contract liabilities are included within Accrued liabilities in the Condensed Consolidated Balance Sheets.

 

The net carrying amounts of cash and cash equivalents, trade and other receivables, accounts payable, accrued liabilities, and borrowings on the line of credit approximate fair value due to the short-term nature of these instruments.

 

XML 27 R15.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 7 - Derivative Instruments and Hedging Activities
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Derivative Instruments and Hedging Activities Disclosure [Text Block]

7.

Derivative Instruments and Hedging Activities

 

In the normal course of business, the Company is exposed to interest rate and foreign currency exchange rate fluctuations. Consistent with the Company’s strategy for financial risk management, the Company has established a program that utilizes foreign currency forward contracts and interest rate swaps to offset the risks associated with the effects of these exposures.

 

For each derivative entered into in which the Company seeks to obtain cash flow hedge accounting treatment, the Company formally documents all relationships between hedging instruments and hedged items, as well as its risk management objective and strategy for undertaking the hedge transaction, the nature of the risk being hedged, how the hedging instrument’s effectiveness in offsetting the hedged risk will be assessed prospectively and retrospectively, and a description of the method of measuring ineffectiveness. This process includes linking all derivatives to specific firm commitments or forecasted transactions and designating the derivatives as cash flow hedges. The Company also formally assesses, both at the hedge’s inception and on an ongoing basis, whether the derivatives that are used in hedging transactions are highly effective in offsetting changes in cash flows of hedged items. The effective portion of these hedged items is reflected in Unrealized gain (loss) on cash flow hedges on the Condensed Consolidated Statements of Comprehensive Income. If it is determined that a derivative is not highly effective, or that it has ceased to be a highly effective hedge, the Company is required to discontinue hedge accounting with respect to that derivative prospectively.

 

As of September 30, 2022, the total notional amount of the foreign currency forward contracts was $17.8 million (CAD$24.6 million) and $7.3 million (EUR$7.4 million), which included $0.7 million (CAD$1.0 million) of foreign currency forward contracts not designated as cash flow hedges. As of December 31, 2021, the total notional amount of the foreign currency forward contracts was $19.0 million (CAD$24.1 million), and all foreign currency forward contracts were designated as cash flow hedges. As of September 30, 2022, the Company’s foreign currency forward contracts mature at various dates through October 2023 and are subject to an enforceable master netting arrangement.

 

As of September 30, 2022, the interest rate swap, which effectively converts a portion of the Company’s variable-rate debt to fixed-rate debt, was designated as cash flow hedge. The Company receives floating interest payments monthly based on the Secured Overnight Financing Rate (“SOFR”) and pays a fixed rate of 1.941% to the counterparty. As of September 30, 2022, the total notional amount was $31.7 million, which amortizes ratably on a monthly basis to zero by the April 2024 maturity date.

 

On August 9, 2022, the Company entered into an interest rate swap transaction which will begin April 3, 2023 at a notional amount of $15.0 million, which will amortize ratably on a monthly basis to zero by the April 2028 maturity date. The Company will receive floating interest payments monthly based on the 30‑day Average SOFR and will pay a fixed rate of 2.96% to the counterparty.

 

The following table summarizes the gains (losses) recognized on derivatives in the Condensed Consolidated Financial Statements (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Foreign currency forward contracts:

                

Net sales

 $599  $145  $841  $44 

Property and equipment

  32   -   (95)  - 
                 

Interest rate swaps:

                

Interest expense

  4   -   (78)  - 

Total

 $635  $145  $668  $44 

 

As of September 30, 2022, unrealized pretax gains (losses) on outstanding cash flow hedges in Accumulated other comprehensive loss was $0.3 million, of which $0.4 million, $(1.1) million, and $0.6 million are expected to be reclassified to Net sales, Property and equipment, and Interest expense, respectively, within the next twelve months as a result of underlying hedged transactions also being recorded in these line items. See Note 13, “Accumulated Other Comprehensive Loss” for additional information regarding foreign currency forward contract gains and losses.

 

XML 28 R16.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 8 - Stockholders' Equity
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Stockholders' Equity Note Disclosure [Text Block]

8.

Stockholders’ Equity

 

At-the-Market Offering

 

On September 2, 2022, the Company entered into an Open Market Sale Agreement (the “At-the-Market Offering”) with Jefferies LLC (“Jefferies”), pursuant to which the Company may issue and sell shares of its common stock, par value $0.01 per share, having aggregate offering sales proceeds of up to $50,000,000 (the “Shares”) from time to time through Jefferies as its sales agent. The Company may sell the Shares in amounts and at times to be determined by the Company from time to time subject to the terms and conditions of the At-the-Market Offering, but it has no obligation to sell any of the Shares under the At-the-Market Offering. The Shares to be sold under the At-the-Market Offering, if any, will be offered and sold pursuant to the Company’s shelf registration statement on Form S‑3 (File No. 333‑249637) filed with the Securities and Exchange Commission, which became effective on November 3, 2020, and the prospectus supplement dated September 2, 2022 filed by the Company. The Company will pay Jefferies a cash commission of up to 3.0% of gross proceeds from the sale of the Shares pursuant to the At-the-Market Offering. The Company has also agreed to provide Jefferies with customary indemnification and contribution rights. No proceeds were raised under the At-the-Market Offering during the three and nine months ended September 30, 2022.

 

XML 29 R17.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 9 - Share-based Compensation
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Share-Based Payment Arrangement [Text Block]

9.

Share-based Compensation

 

The Company has one active stock incentive plan for employees and directors, the 2022 Stock Incentive Plan, which provides for awards of stock options to purchase shares of common stock, stock appreciation rights, restricted and unrestricted shares of common stock, restricted stock units (“RSUs”), and performance share awards (“PSAs”). In addition, the Company has one inactive stock incentive plan, the 2007 Stock Incentive Plan, under which previously granted awards remain outstanding.

 

The Company recognizes the compensation cost of employee and director services received in exchange for awards of equity instruments based on the grant date estimated fair value of the awards. The Company estimates the fair value of RSUs and PSAs using the value of the Company’s stock on the date of grant. Share-based compensation cost is recognized over the period during which the employee or director is required to provide service in exchange for the award and, as forfeitures occur, the associated compensation cost recognized to date is reversed. For awards with performance-based payout conditions, the Company recognizes compensation cost based on the probability of achieving the performance conditions, with changes in expectations recognized as an adjustment to earnings in the period of change. Any recognized compensation cost is reversed if the conditions are ultimately not met.

 

The following table summarizes share-based compensation expense recorded (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Cost of sales

 $474  $202  $822  $685 

Selling, general, and administrative expense

  695   395   1,655   1,752 

Total

 $1,169  $597  $2,477  $2,437 

 

Restricted Stock Units and Performance Share Awards

 

The Company’s stock incentive plan provides for equity instruments, such as RSUs and PSAs, which grant the right to receive a specified number of shares over a specified period of time. RSUs and PSAs are service-based awards that vest according to the terms of the grant. PSAs have performance-based payout conditions.

 

The following table summarizes the Company’s RSU and PSA activity:

 

  

Number of RSUs and PSAs (1)

  

Weighted-Average Grant Date Fair Value

 
         

Unvested RSUs and PSAs as of December 31, 2021

  161,131  $30.26 

RSUs and PSAs granted

  116,622   30.68 

Unvested RSUs and PSAs canceled

  (8,248

)

  31.18 

RSUs and PSAs vested (2)

  (68,581

)

  29.29 

Unvested RSUs and PSAs as of September 30, 2022

  200,924   30.80 

 

(1)

The number of PSAs disclosed in this table are at the target level of 100%.

  

(2)

For the PSAs vested on March 31, 2022, the actual number of common shares that were issued was determined by multiplying the PSAs at the target level of 100%, as disclosed in this table, by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the 2020-2021 performance period and 93% for the 2021 performance period.

 

The unvested balance of RSUs and PSAs as of September 30, 2022 includes approximately 149,000 PSAs at the target level of 100%. The vesting of these awards is subject to the achievement of specified performance-based conditions, and the actual number of common shares that will ultimately be issued will be determined by multiplying this number of PSAs by a payout percentage ranging from 0% to 200%.

 

Based on the estimated level of achievement of the performance targets associated with the PSAs as of September 30, 2022, unrecognized compensation expense related to the unvested portion of the Company’s RSUs and PSAs was $4.6 million, which is expected to be recognized over a weighted-average period of 1.6 years.

 

Stock Awards

 

For the nine months ended September 30, 2022 and 2021, stock awards of 11,380 shares and 12,606 shares, respectively, were granted to non-employee directors, which vested immediately upon issuance. The Company recorded compensation expense based on the weighted-average fair market value per share of the awards on the grant date of $30.75 in 2022 and $30.94 in 2021.

 

XML 30 R18.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 10 - Commitments and Contingencies
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Commitments and Contingencies Disclosure [Text Block]

10.

Commitments and Contingencies

 

Portland Harbor Superfund Site

 

In December 2000, a section of the lower Willamette River known as the Portland Harbor Superfund Site was included on the National Priorities List at the request of the United States Environmental Protection Agency (“EPA”). While the Company’s Portland, Oregon manufacturing facility does not border the Willamette River, an outfall from the facility’s stormwater system drains into a neighboring property’s privately owned stormwater system and slip. Also in December 2000, the Company was notified by the EPA and the Oregon Department of Environmental Quality (“ODEQ”) of potential liability under the Comprehensive Environmental Response, Compensation, and Liability Act (“CERCLA”). A remedial investigation and feasibility study of the Portland Harbor Superfund Site was directed by a group of 14 potentially responsible parties known as the Lower Willamette Group under agreement with the EPA. The EPA finalized the remedial investigation report in February 2016, and the feasibility study in June 2016, which identified multiple remedial alternatives. In January 2017, the EPA issued its Record of Decision selecting the remedy for cleanup at the Portland Harbor Superfund Site, which it believes will cost approximately $1 billion at net present value and 13 years to complete. The EPA has not yet determined who is responsible for the costs of cleanup or how the cleanup costs will be allocated among the more than 150 potentially responsible parties. Because of the large number of potentially responsible parties and the variability in the range of remediation alternatives, the Company is unable to estimate an amount or an amount within a range of costs for its obligation with respect to the Portland Harbor Superfund Site matters, and no further adjustment to the Condensed Consolidated Financial Statements has been recorded as of the date of this filing.

 

The ODEQ is separately providing oversight of voluntary investigations and source control activities by the Company involving the Company’s site, which are focused on controlling any current “uplands” releases of contaminants into the Willamette River. No liabilities have been established in connection with these investigations because the extent of contamination and the Company’s responsibility for the contamination have not yet been determined.

 

Concurrent with the activities of the EPA and the ODEQ, the Portland Harbor Natural Resources Trustee Council (“Trustees”) sent some or all of the same parties, including the Company, a notice of intent to perform a Natural Resource Damage Assessment (“NRDA”) for the Portland Harbor Superfund Site to determine the nature and extent of natural resource damages under CERCLA Section 107. The Trustees for the Portland Harbor Superfund Site consist of representatives from several Northwest Indian Tribes, three federal agencies, and one state agency. The Trustees act independently of the EPA and the ODEQ. The Trustees have encouraged potentially responsible parties to voluntarily participate in the funding of their injury assessments and several of those parties have agreed to do so. In June 2014, the Company agreed to participate in the injury assessment process, which included funding $0.4 million of the assessment. The Company has not assumed any additional payment obligations or liabilities with the participation with the NRDA, nor does the Company expect to incur significant future costs in the resolution of the NRDA.

 

In January 2017, the Confederated Tribes and Bands of the Yakama Nation, a Trustee until they withdrew from the council in 2009, filed a complaint against the potentially responsible parties including the Company to recover costs related to their own injury assessment and compensation for natural resources damages. The Company does not have sufficient information to determine the likelihood of a loss in this matter or the amount of damages that could be allocated to the Company.

 

The Company has insurance policies for defense costs, as well as indemnification policies it believes will provide reimbursement for the remediation assessed. However, the Company can provide no assurance that those policies will cover all of the costs which the Company may incur.

 

All Sites

 

The Company operates its facilities under numerous governmental permits and licenses relating to air emissions, stormwater runoff, and other environmental matters. The Company’s operations are also governed by many other laws and regulations, including those relating to workplace safety and worker health, principally the Occupational Safety and Health Act and regulations there under which, among other requirements, establish noise and dust standards. The Company believes it is in material compliance with its permits and licenses and these laws and regulations, and the Company does not believe that future compliance with such laws and regulations will have a material adverse effect on its financial position, results of operations, or cash flows.

 

Other Contingencies and Legal Proceedings

 

From time to time, the Company is party to a variety of legal actions, including claims, suits, complaints, and investigations arising out of the ordinary course of its business. The Company maintains insurance coverage against potential claims in amounts that are believed to be adequate. To the extent that insurance does not cover legal, defense, and indemnification costs associated with a loss contingency, the Company records accruals when such losses are considered probable and reasonably estimable. The Company believes that it is not presently a party to legal actions, the outcomes of which would have a material adverse effect on its business, financial condition, results of operations, or cash flows.

 

Commitments

 

As of September 30, 2022, the Company’s commitments include approximately $7.3 million relating to its investment in a new reinforced concrete pipe mill for which the Company has not yet received the equipment.

 

Guarantees

 

The Company has entered into certain letters of credit that total $1.1 million as of September 30, 2022. The letters of credit relate to workers’ compensation insurance.

 

XML 31 R19.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 11 - Revenue
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Revenue from Contract with Customer [Text Block]

11.

Revenue

 

The Company manufactures water infrastructure steel pipe products, which are generally made to custom specifications for installation contractors serving projects funded by public water agencies, as well as precast and reinforced concrete products. Generally, each of the Company’s contracts with its customers contains a single performance obligation, as the promise to transfer products is not separately identifiable from other promises in the contract and, therefore, is not distinct.

 

SPP revenue for water infrastructure steel pipe products is recognized over time as the manufacturing process progresses because of the Company’s right to payment for work performed to date plus a reasonable profit on cancellations for unique products that have no alternative use to the Company. Revenue is measured by the costs incurred to date relative to the estimated total direct costs to fulfill each contract (cost-to-cost method). Contract costs include all material, labor, and other direct costs incurred in satisfying the performance obligations. The cost of steel material is recognized as a contract cost when the steel is introduced into the manufacturing process. Changes in job performance, job conditions, and estimated profitability, including those arising from contract change orders, contract penalty provisions, foreign currency exchange rate movements, changes in raw materials costs, and final contract settlements may result in revisions to estimates of revenue, costs, and income, and are recognized in the period in which the revisions are determined. Provisions for losses on uncompleted contracts, included in Accrued liabilities, are estimated by comparing total estimated contract revenue to the total estimated contract costs and a loss is recognized during the period in which it becomes probable and can be reasonably estimated.

 

Revisions in contract estimates resulted in an increase (decrease) in SPP net sales of $0.2 million and $(0.2) million for the three and nine months ended September 30, 2022, respectively, and approximately $0 and $2.1 million for the three and nine months ended September 30, 2021, respectively.

 

Precast revenue for water infrastructure concrete pipe and precast concrete products is recognized at the time control is transferred to customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for the products. All variable consideration that may affect the total transaction price, including contractual discounts, returns, and credits, is included in net sales. Estimates for variable consideration are based on historical experience, anticipated performance, and management’s judgment. The Company’s contracts do not contain significant financing.

 

The Company does not recognize revenue on a contract until the contract has approval and commitment from both parties, the contract rights and payment terms can be identified, the contract has commercial substance, and its collectability is probable.

 

Disaggregation of Revenue

 

The following table disaggregates revenue by recognition over time or at a point in time, as the Company believes it best depicts how the nature, amount, timing, and uncertainty of its revenue and cash flows are affected by economic factors (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Over time (Engineered Steel Pressure Pipe)

 $83,663  $69,439  $235,446  $188,244 

Point in time (Precast Infrastructure and Engineered Systems)

  39,321   15,204   115,391   42,522 

Net sales

 $122,984  $84,643  $350,837  $230,766 

 

Contract Assets and Liabilities

 

Contract assets primarily represent revenue earned over time but not yet billable based on the terms of the contracts. These amounts will be billed based on the terms of the contracts, which can include certain milestones, partial shipments, or completion of the contracts. Payment terms of amounts billed vary based on the customer, but are typically due within 30 days of invoicing.

 

Contract liabilities represent advance billings on contracts, typically for steel. The Company recognized revenue that was included in the contract liabilities balance at the beginning of each period of $2.8 million and $2.6 million during the three and nine months ended September 30, 2022, respectively and $1.5 million and $6.2 million during the three and nine months ended September 30, 2021, respectively.

 

Backlog

 

Backlog represents the balance of remaining performance obligations under signed contracts for SPP water infrastructure steel pipe products for which revenue is recognized over time. As of September 30, 2022, backlog was $295 million. The Company expects to recognize 25% of the remaining performance obligations in 2022, 52% in 2023, and the balance thereafter.

 

XML 32 R20.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 12 - Income Taxes
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Income Tax Disclosure [Text Block]

12.

Income Taxes

 

The Company files income tax returns in the United States Federal jurisdiction, in a limited number of foreign jurisdictions, and in many state jurisdictions. With few exceptions, the Company is no longer subject to United States Federal, state, or foreign income tax examinations for years before 2018.

 

The Company recorded income tax expense at an estimated effective income tax rate of 26.3% and 26.4% for the three and nine months ended September 30, 2022, respectively and 27.9% and 26.1% for the three and nine months ended September 30, 2021, respectively. The Company’s estimated effective income tax rates for the three and nine months ended September 30, 2022 and 2021 were primarily impacted by non-deductible permanent differences.

 

XML 33 R21.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 13 - Accumulated Other Comprehensive Loss
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Comprehensive Income (Loss) Note [Text Block]

13.

Accumulated Other Comprehensive Loss

 

The following table summarizes changes in the components of Accumulated other comprehensive loss (in thousands). All amounts are net of income tax:

 

  

Pension Liability Adjustment

  

Unrealized Loss on Foreign Currency Forward Contracts Designated as Cash Flow Hedges

  

Unrealized Gain on Interest Rate Swap Designated as Cash Flow Hedge

  

Total

 
                 

Balances, December 31, 2021

 $(1,487

)

 $(195

)

 $-  $(1,682

)

                 

Other comprehensive income (loss) before reclassifications

  61   (383)  602   280 

Amounts reclassified from Accumulated other comprehensive loss

  5   138   59   202 

Net current period other comprehensive income (loss)

  66   (245)  661   482 
                 

Balances, September 30, 2022

 $(1,421

)

 $(440

)

 $661  $(1,200

)

 

The following table provides additional detail about Accumulated other comprehensive loss components that were reclassified to the Condensed Consolidated Statements of Operations (in thousands):

 

  

Amount reclassified from

 

Affected line item

  Accumulated Other Comprehensive Loss in the Condensed
  Three Months Ended  Nine Months Ended Consolidated
Details about Accumulated Other 

September 30,

  

September 30,

 Statements of
Comprehensive Loss Components 2022  

2021

  

2022

  

2021

 Operations
                  

Pension liability adjustment:

                 

Net periodic pension cost:

                 

Service cost

 $(2) $(4

)

 $(5) $(12

)

Cost of sales

   (2)  (4

)

  (5)  (12

)

Net of tax

                  

Unrealized gain (loss) on foreign currency forward contracts:

                 

Gain (loss) on cash flow hedges

  35   (15

)

  (56)  (71

)

Net sales

Loss on cash flow hedges

  -   -   (127)  - 

Property and equipment

Associated income tax benefit

  22   4   45   18 

Income tax expense

   57   (11

)

  (138)  (53

)

Net of tax

                  

Unrealized gain (loss) on interest rate swap:

                 

Gain (loss) on cash flow hedge

  4   -   (78)  - 

Interest expense

Associated income tax (expense) benefit

  (1)  -   19   - 

Income tax expense

   3   -   (59)  - 

Net of tax

                  

Total reclassifications for the period

 $58  $(15

)

 $(202) $(65

)

 

 

XML 34 R22.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 14 - Net Income Per Share
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Earnings Per Share [Text Block]

14.

Net Income per Share

 

Basic net income per share is computed by dividing net income by the weighted-average number of shares of common stock outstanding during the period. Diluted net income per share is computed by giving effect to all potential shares of common stock, including stock options, RSUs, and PSAs, to the extent dilutive. Performance-based PSAs are considered dilutive when the related performance conditions have been met assuming the end of the reporting period represents the end of the performance period. In periods with a net loss, all potential shares of common stock are excluded from the computation of diluted net loss per share as the impact would be antidilutive.

 

Net income per basic and diluted weighted-average common share outstanding was calculated as follows (in thousands, except per share amounts):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Net income

 $9,956  $4,946  $23,188  $9,252 
                 

Basic weighted-average common shares outstanding

  9,927   9,871   9,909   9,849 

Effect of potentially dilutive common shares (1)

  83   50   79   69 

Diluted weighted-average common shares outstanding

  10,010   9,921   9,988   9,918 
                 

Net income per common share:

                

Basic

 $1.00  $0.50  $2.34  $0.94 

Diluted

 $0.99  $0.50  $2.32  $0.93 

 

(1)

The weighted-average number of antidilutive shares not included in the computation of diluted net income per share was approximately 77,000 for the three months ended September 30, 2021. There were no antidilutive shares for the three and nine months ended September 30, 2022 and the nine months ended September 30, 2021.

 

XML 35 R23.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 15 - Segment Information
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Segment Reporting Disclosure [Text Block]

15.

Segment Information

 

The operating segments reported below are based on the nature of the products sold and the manufacturing process used by the Company and are the segments of the Company for which separate financial information is available and for which operating results are regularly evaluated by the Company’s chief operating decision maker, its Chief Executive Officer, to make decisions about resources to be allocated to the segment and assess its performance. Management evaluates segment performance based on gross profit. The Company does not allocate selling, general, and administrative expenses, interest, other non-operating income or expense items, or taxes to segments.

 

The Company’s Engineered Steel Pressure Pipe segment (SPP) manufactures large-diameter, high-pressure steel pipeline systems for use in water infrastructure applications, which are primarily related to drinking water systems. These products are also used for hydroelectric power systems, wastewater systems, and other applications. In addition, SPP makes products for industrial plant piping systems and certain structural applications. SPP has manufacturing facilities located in Adelanto and Tracy, California; St. Louis, Missouri; Portland, Oregon; Saginaw, Texas; Parkersburg, West Virginia; and San Luis Río Colorado, Mexico.

 

The Company’s Precast Infrastructure and Engineered Systems segment (Precast) manufactures high-quality precast and reinforced concrete products, including manholes, box culverts, vaults, catch basins, oil water separators, pump lift stations, biofiltration, and other environmental and engineered solutions. Precast has manufacturing facilities located in Dallas, Houston, and San Antonio, Texas; and Orem, Salt Lake City, and St. George, Utah.

 

The following table disaggregates revenue and gross profit based on the Company’s reportable segments (in thousands):

 

  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 

Net sales:

                

Engineered Steel Pressure Pipe

 $83,663  $69,439  $235,446  $188,244 

Precast Infrastructure and Engineered Systems

  39,321   15,204   115,391   42,522 

Total

 $122,984  $84,643  $350,837  $230,766 
                 

Gross profit:

                

Engineered Steel Pressure Pipe

 $14,196  $8,844  $32,490  $22,613 

Precast Infrastructure and Engineered Systems

  10,922   3,519   31,494   8,063 

Total

 $25,118  $12,363  $63,984  $30,676 

 

XML 36 R24.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 16 - Recent Accounting and Reporting Developments
9 Months Ended
Sep. 30, 2022
Notes to Financial Statements  
Accounting Standards Update and Change in Accounting Principle [Text Block]

16.

Recent Accounting and Reporting Developments

 

There have been no developments to recently issued accounting standards, including the expected dates of adoption and estimated effects on the Company’s Condensed Consolidated Financial Statements and disclosures in Notes to Condensed Consolidated Financial Statements, from those disclosed in the Company’s 2021 Form 10‑K.

 

XML 37 R25.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Business Acquisitions, by Acquisition [Table Text Block]

Assets

    

Cash and cash equivalents

 $278 

Trade and other receivables

  11,034 

Inventories

  12,773 

Prepaid expenses and other

  293 

Property and equipment

  8,076 

Operating lease right-of-use assets

  58,301 

Intangible assets

  31,000 

Deferred income taxes

  347 

Total assets acquired

  122,102 
     

Liabilities

    

Accounts payable

  2,029 

Accrued liabilities

  4,067 

Operating lease liabilities

  58,301 

Total liabilities assumed

  64,397 
     

Goodwill

  32,519 
     

Total purchase consideration

 $90,224 
Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]
  

Estimated Useful Life

  

Fair Value

 
  

(In years)

  

(In thousands)

 
         

Customer relationships

  10.0  $19,800 

Trade names and trademarks

  10.0   9,600 

Patents

  21.0   1,300 

Backlog

  0.6   300 

Total intangible assets

  10.2  $31,000 
Business Acquisition, Pro Forma Information [Table Text Block]
  Three Months Ended  Nine Months Ended 
  

September 30, 2021

  

September 30, 2021

 
         

Net sales

 $105,345  $283,005 

Net income

  2,477   12,247 
XML 38 R26.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 3 - Inventories (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule Of Inventory Current And Non Current [Table Text Block]
  

September 30, 2022

  

December 31, 2021

 
         

Raw materials

 $52,915  $44,697 

Work-in-process

  3,817   3,018 

Finished goods

  12,646   10,096 

Supplies

  2,200   1,840 

Total inventories

 $71,578  $59,651 
XML 39 R27.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 4 - Goodwill (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Goodwill [Table Text Block]

Goodwill, December 31, 2021

 $53,684 

Measurement period adjustment (Note 2)

  1,820 

Goodwill, September 30, 2022

 $55,504 
XML 40 R28.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 6 - Fair Value Measurements (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Fair Value, Assets and Liabilities Measured on Recurring Basis [Table Text Block]
  

Total

  

Level 1

  

Level 2

  

Level 3

 

As of September 30, 2022

                

Financial assets:

                

Deferred compensation plan

 $3,410  $2,902  $508  $- 

Interest rate swaps

  879   -   879   - 

Foreign currency forward contracts

  1,123   -   1,123   - 

Total financial assets

 $5,412  $2,902  $2,510  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(1,209

)

 $-  $(1,209

)

 $- 
                 

As of December 31, 2021

                

Financial assets:

                

Deferred compensation plan

 $4,321  $3,830  $491  $- 

Foreign currency forward contracts

  17   -   17   - 

Total financial assets

 $4,338  $3,830  $508  $- 
                 

Financial liabilities:

                

Foreign currency forward contracts

 $(661

)

 $-  $(661

)

 $- 
XML 41 R29.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 7 - Derivative Instruments and Hedging Activities (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Derivative Instruments, Gain (Loss) [Table Text Block]
  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Foreign currency forward contracts:

                

Net sales

 $599  $145  $841  $44 

Property and equipment

  32   -   (95)  - 
                 

Interest rate swaps:

                

Interest expense

  4   -   (78)  - 

Total

 $635  $145  $668  $44 
XML 42 R30.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 9 - Share-based Compensation (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]
  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Cost of sales

 $474  $202  $822  $685 

Selling, general, and administrative expense

  695   395   1,655   1,752 

Total

 $1,169  $597  $2,477  $2,437 
Schedule of Unvested Restricted Stock Units and Performance Share Awards Activity [Table Text Block]
  

Number of RSUs and PSAs (1)

  

Weighted-Average Grant Date Fair Value

 
         

Unvested RSUs and PSAs as of December 31, 2021

  161,131  $30.26 

RSUs and PSAs granted

  116,622   30.68 

Unvested RSUs and PSAs canceled

  (8,248

)

  31.18 

RSUs and PSAs vested (2)

  (68,581

)

  29.29 

Unvested RSUs and PSAs as of September 30, 2022

  200,924   30.80 
XML 43 R31.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 11 - Revenue (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Disaggregation of Revenue [Table Text Block]
  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Over time (Engineered Steel Pressure Pipe)

 $83,663  $69,439  $235,446  $188,244 

Point in time (Precast Infrastructure and Engineered Systems)

  39,321   15,204   115,391   42,522 

Net sales

 $122,984  $84,643  $350,837  $230,766 
XML 44 R32.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 13 - Accumulated Other Comprehensive Loss (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Changes in Accumulated Other Comprehensive Income Loss [Table Text Block]
  

Pension Liability Adjustment

  

Unrealized Loss on Foreign Currency Forward Contracts Designated as Cash Flow Hedges

  

Unrealized Gain on Interest Rate Swap Designated as Cash Flow Hedge

  

Total

 
                 

Balances, December 31, 2021

 $(1,487

)

 $(195

)

 $-  $(1,682

)

                 

Other comprehensive income (loss) before reclassifications

  61   (383)  602   280 

Amounts reclassified from Accumulated other comprehensive loss

  5   138   59   202 

Net current period other comprehensive income (loss)

  66   (245)  661   482 
                 

Balances, September 30, 2022

 $(1,421

)

 $(440

)

 $661  $(1,200

)

Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]
  

Amount reclassified from

 

Affected line item

  Accumulated Other Comprehensive Loss in the Condensed
  Three Months Ended  Nine Months Ended Consolidated
Details about Accumulated Other 

September 30,

  

September 30,

 Statements of
Comprehensive Loss Components 2022  

2021

  

2022

  

2021

 Operations
                  

Pension liability adjustment:

                 

Net periodic pension cost:

                 

Service cost

 $(2) $(4

)

 $(5) $(12

)

Cost of sales

   (2)  (4

)

  (5)  (12

)

Net of tax

                  

Unrealized gain (loss) on foreign currency forward contracts:

                 

Gain (loss) on cash flow hedges

  35   (15

)

  (56)  (71

)

Net sales

Loss on cash flow hedges

  -   -   (127)  - 

Property and equipment

Associated income tax benefit

  22   4   45   18 

Income tax expense

   57   (11

)

  (138)  (53

)

Net of tax

                  

Unrealized gain (loss) on interest rate swap:

                 

Gain (loss) on cash flow hedge

  4   -   (78)  - 

Interest expense

Associated income tax (expense) benefit

  (1)  -   19   - 

Income tax expense

   3   -   (59)  - 

Net of tax

                  

Total reclassifications for the period

 $58  $(15

)

 $(202) $(65

)

 
XML 45 R33.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 14 - Net Income Per Share (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]
  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 
                 

Net income

 $9,956  $4,946  $23,188  $9,252 
                 

Basic weighted-average common shares outstanding

  9,927   9,871   9,909   9,849 

Effect of potentially dilutive common shares (1)

  83   50   79   69 

Diluted weighted-average common shares outstanding

  10,010   9,921   9,988   9,918 
                 

Net income per common share:

                

Basic

 $1.00  $0.50  $2.34  $0.94 

Diluted

 $0.99  $0.50  $2.32  $0.93 
XML 46 R34.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 15 - Segment Information (Tables)
9 Months Ended
Sep. 30, 2022
Notes Tables  
Schedule of Segment Reporting Information, by Segment [Table Text Block]
  

Three Months Ended September 30,

  

Nine Months Ended September 30,

 
  

2022

  

2021

  

2022

  

2021

 

Net sales:

                

Engineered Steel Pressure Pipe

 $83,663  $69,439  $235,446  $188,244 

Precast Infrastructure and Engineered Systems

  39,321   15,204   115,391   42,522 

Total

 $122,984  $84,643  $350,837  $230,766 
                 

Gross profit:

                

Engineered Steel Pressure Pipe

 $14,196  $8,844  $32,490  $22,613 

Precast Infrastructure and Engineered Systems

  10,922   3,519   31,494   8,063 

Total

 $25,118  $12,363  $63,984  $30,676 
XML 47 R35.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 1 - Organization and Basis of Presentation (Details Textual)
9 Months Ended
Sep. 30, 2022
Number of Operating Segments 2
Number of Manufacturing Facilities 13
XML 48 R36.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination (Details Textual) - Park Environmental Equipment, LLC [Member] - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Oct. 05, 2021
Business Acquisition, Percentage of Voting Interests Acquired         100.00%
Payments to Acquire Businesses, Net of Cash Acquired, Total     $ 90,200    
Goodwill, Purchase Accounting Adjustments $ 1,800   1,820    
Business Combination, Acquisition Related Costs 0 $ 600 100 $ 800  
Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred $ 1,800   $ 1,800    
XML 49 R37.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details) - USD ($)
$ in Thousands
Oct. 05, 2021
Sep. 30, 2022
Dec. 31, 2021
Liabilities      
Goodwill   $ 55,504 $ 53,684
Park Environmental Equipment, LLC [Member]      
Assets      
Cash and cash equivalents $ 278    
Trade and other receivables 11,034    
Inventories 12,773    
Prepaid expenses and other 293    
Property and equipment 8,076    
Operating lease right-of-use assets 58,301    
Intangible assets 31,000    
Deferred income taxes 347    
Total assets acquired 122,102    
Liabilities      
Accounts payable 2,029    
Accrued liabilities 4,067    
Operating lease liabilities 58,301    
Total liabilities assumed 64,397    
Goodwill 32,519    
Total purchase consideration $ 90,224    
XML 50 R38.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination - Intangible Assets Acquired (Details) - Park Environmental Equipment, LLC [Member]
$ in Millions
Oct. 05, 2021
USD ($)
Intangible Asset Acquired, Useful Life (Year) 10 years 2 months 12 days
Intangible Asset Acquired, Fair Value $ 31.0
Customer Relationships [Member]  
Intangible Asset Acquired, Useful Life (Year) 10 years
Intangible Asset Acquired, Fair Value $ 19.8
Trademarks and Trade Names [Member]  
Intangible Asset Acquired, Useful Life (Year) 10 years
Intangible Asset Acquired, Fair Value $ 9.6
Patents [Member]  
Intangible Asset Acquired, Useful Life (Year) 21 years
Intangible Asset Acquired, Fair Value $ 1.3
Backlog [Member]  
Intangible Asset Acquired, Useful Life (Year) 7 months 6 days
Intangible Asset Acquired, Fair Value $ 0.3
XML 51 R39.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 2 - Business Combination - Pro Forma Summary (Details) - Park Environmental Equipment, LLC [Member] - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2021
Sep. 30, 2021
Net sales $ 105,345 $ 283,005
Net income $ 2,477 $ 12,247
XML 52 R40.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 3 - Inventories - Components of Inventories (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Raw materials $ 52,915 $ 44,697
Work-in-process 3,817 3,018
Finished goods 12,646 10,096
Supplies 2,200 1,840
Total inventories $ 71,578 $ 59,651
XML 53 R41.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2022
Goodwill   $ 53,684
Goodwill $ 55,504 55,504
Park Environmental Equipment, LLC [Member]    
Measurement period adjustment (Note 2) $ 1,800 $ 1,820
XML 54 R42.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 5 - Current Debt (Details Textual) - Interim Funding AgreementIFA [Member] - USD ($)
$ in Millions
1 Months Ended
Aug. 31, 2022
Sep. 30, 2022
Debt Instrument, Face Amount $ 13.5  
Long-Term Debt, Total   $ 3.5
Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]    
Debt Instrument, Basis Spread on Variable Rate 1.75%  
XML 55 R43.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details) - USD ($)
$ in Thousands
Sep. 30, 2022
Dec. 31, 2021
Deferred compensation plan $ 3,410 $ 4,321
Total financial assets 5,412 4,338
Foreign currency forward contracts (1,209) (661)
Interest Rate Swap [Member]    
Derivative assets 879  
Foreign Exchange Forward [Member]    
Derivative assets 1,123 17
Fair Value, Inputs, Level 1 [Member]    
Deferred compensation plan 2,902 3,830
Total financial assets 2,902 3,830
Foreign currency forward contracts 0 0
Fair Value, Inputs, Level 1 [Member] | Interest Rate Swap [Member]    
Derivative assets 0  
Fair Value, Inputs, Level 1 [Member] | Foreign Exchange Forward [Member]    
Derivative assets 0 0
Fair Value, Inputs, Level 2 [Member]    
Deferred compensation plan 508 491
Total financial assets 2,510 508
Foreign currency forward contracts (1,209) (661)
Fair Value, Inputs, Level 2 [Member] | Interest Rate Swap [Member]    
Derivative assets 879  
Fair Value, Inputs, Level 2 [Member] | Foreign Exchange Forward [Member]    
Derivative assets 1,123 17
Fair Value, Inputs, Level 3 [Member]    
Deferred compensation plan 0 0
Total financial assets 0 0
Foreign currency forward contracts 0 0
Fair Value, Inputs, Level 3 [Member] | Interest Rate Swap [Member]    
Derivative assets 0  
Fair Value, Inputs, Level 3 [Member] | Foreign Exchange Forward [Member]    
Derivative assets $ 0 $ 0
XML 56 R44.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 7 - Derivative Instruments and Hedging Activities (Details Textual)
€ in Millions, $ in Millions, $ in Millions
Apr. 03, 2023
USD ($)
Sep. 30, 2022
USD ($)
Sep. 30, 2022
CAD ($)
Sep. 30, 2022
EUR (€)
Dec. 31, 2021
USD ($)
Dec. 31, 2021
CAD ($)
Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months   $ (0.3)        
Reclassified to Net Sales [Member]            
Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months   0.4        
Reclassified to Property and Equipment [Member]            
Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months   (1.1)        
Reclassified to Interest Expense [Member]            
Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months   0.6        
Interest Rate Swap [Member]            
Derivative, Notional Amount   $ 31.7        
Derivative, Fixed Interest Rate   1.941% 1.941% 1.941%    
Interest Rate Swap [Member] | Forecast [Member]            
Derivative, Notional Amount $ 15.0          
Derivative, Fixed Interest Rate 2.96%          
Designated as Hedging Instrument [Member] | Foreign Exchange Forward [Member]            
Derivative, Notional Amount   $ 17.8 $ 24.6   $ 19.0 $ 24.1
Designated as Hedging Instrument [Member] | Second Foreign Exchange Forward Contract [Member]            
Derivative, Notional Amount   7.3   € 7.4    
Not Designated as Hedging Instrument [Member] | Foreign Exchange Forward [Member]            
Derivative, Notional Amount   $ 0.7 $ 1.0      
XML 57 R45.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) - Not Designated as Hedging Instrument [Member] - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Gains (losses) recognized on derivatives $ 635 $ 145 $ 668 $ 44
Foreign Exchange Forward [Member] | Sales [Member]        
Gains (losses) recognized on derivatives 599 145 841 44
Foreign Exchange Forward [Member] | Property and Equipment [Member]        
Gains (losses) recognized on derivatives 32 0 (95) 0
Interest Rate Swap [Member] | Interest Expense [Member]        
Gains (losses) recognized on derivatives $ 4 $ 0 $ (78) $ 0
XML 58 R46.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 8 - Stockholders' Equity (Details Textual) - USD ($)
Sep. 30, 2022
Sep. 02, 2022
Dec. 31, 2021
Common Stock, Par or Stated Value Per Share (in dollars per share) $ 0.01 $ 0.01 $ 0.01
At-the-Market Offering [Member]      
Equity Offering, Maximum Offering Amount   $ 50,000,000  
Equity Offering, Commission, Percentage of Gross Proceeds   3.00%  
XML 59 R47.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 9 - Share-based Compensation (Details Textual)
$ / shares in Units, $ in Millions
9 Months Ended 12 Months Ended
Sep. 30, 2022
USD ($)
$ / shares
shares
Sep. 30, 2021
$ / shares
shares
Dec. 31, 2021
Dec. 31, 2020
Number Of Active Stock Incentive Plans 1      
Number Of Inactive Stock Incentive Plans 1      
Performance Shares [Member]        
Performance Share Award Target Level, Percentage 100.00%      
Performance Awards Issued Multiplier     93.00% 141.00%
Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Nonvested Number At Target Level Of Performance (in shares) 149,000      
Performance Shares [Member] | Minimum [Member]        
Performance Awards Issued Multiplier 0.00%      
Performance Shares [Member] | Maximum [Member]        
Performance Awards Issued Multiplier 200.00%      
Restricted Stock Units and Performance Stock Awards [Member]        
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value | $ $ 4.6      
Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year) 1 year 7 months 6 days      
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) [1] 116,622      
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | $ / shares $ 30.68      
Stock Awards [Member] | Director [Member]        
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares) 11,380 12,606    
Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share) | $ / shares $ 30.75 $ 30.94    
[1] The number of PSAs disclosed in this table are at the target level of 100%.
XML 60 R48.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 9 - Share-based Compensation - Share-based Compensation Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Share-based compensation expense $ 1,169 $ 597 $ 2,477 $ 2,437
Cost of Sales [Member]        
Share-based compensation expense 474 202 822 685
Selling, General and Administrative Expenses [Member]        
Share-based compensation expense $ 695 $ 395 $ 1,655 $ 1,752
XML 61 R49.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 9 - Share-based Compensation - RSU and PSA Activity (Details) - Restricted Stock Units and Performance Stock Awards [Member]
9 Months Ended
Sep. 30, 2022
$ / shares
shares
Unvested RSUs and PSAs (in shares) | shares 161,131 [1]
Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share) | $ / shares $ 30.26
RSUs and PSAs granted (in shares) | shares 116,622 [1]
RSUs and PSAs granted, weighted average grant date fair value (in dollars per share) | $ / shares $ 30.68
Unvested RSUs and PSAs canceled (in shares) | shares (8,248) [1]
Unvested RSUs and PSAs canceled, weighted average grant date fair value (in dollars per share) | $ / shares $ 31.18
RSUs and PSAs vested (in shares) | shares (68,581) [1],[2]
RSUs and PSAs vested, weighted average grant date fair value (in dollars per share) | $ / shares $ 29.29 [2]
Unvested RSUs and PSAs (in shares) | shares 200,924 [1]
Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share) | $ / shares $ 30.80
[1] The number of PSAs disclosed in this table are at the target level of 100%.
[2] For the PSAs vested on March 31, 2022, the actual number of common shares that were issued was determined by multiplying the PSAs by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the 2020-2021 performance period and 93% for the 2021 performance period.
XML 62 R50.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 10 - Commitments and Contingencies (Details Textual)
$ in Millions
1 Months Ended
Jan. 31, 2017
USD ($)
Sep. 30, 2022
USD ($)
Jun. 30, 2014
USD ($)
Other Commitment, Amount Paid for Equipment Purchased Yet Not Received   $ 7.3  
Letters of Credit Outstanding, Amount   $ 1.1  
Portland Harbor Natural Resources Trustee Council [Member]      
Loss Contingency, Accrual, Current     $ 0.4
Portland Harbor Superfund Site [Member]      
Number Of Potentially Responsible Parties 150    
Estimated Cost of EPA Selected Remedy $ 1,000.0    
Estimated Time to Complete Selected EPA Remedy (Year) 13 years    
Lower Willamette Group [Member]      
Number Of Potentially Responsible Parties 14    
XML 63 R51.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 11 - Revenue 1 (Details Textual) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Increase (Decrease) in Revenue from Contract with Customers, Including Assessed Tax $ 200 $ 0 $ 200 $ 2,100
Contract with Customer, Liability, Revenue Recognized 2,800 $ 1,500 2,600 $ 6,200
Revenue, Remaining Performance Obligation, Amount $ 295,000   $ 295,000  
XML 64 R52.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 11 - Revenue 2 (Details Textual)
Sep. 30, 2022
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2022-10-01  
Revenue, Remaining Performance Obligation, Percentage 25.00%
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period (Year) 3 months
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-01-01  
Revenue, Remaining Performance Obligation, Percentage 52.00%
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period (Year) 1 year
XML 65 R53.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 11 - Revenue - Disaggregation of Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Net sales $ 122,984 $ 84,643 $ 350,837 $ 230,766
Transferred over Time [Member]        
Net sales 83,663 69,439 235,446 188,244
Transferred at Point in Time [Member]        
Net sales $ 39,321 $ 15,204 $ 115,391 $ 42,522
XML 66 R54.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 12 - Income Taxes (Details Textual)
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Effective Income Tax Rate Reconciliation, Percent, Total 26.30% 27.90% 26.40% 26.10%
XML 67 R55.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Balance $ 296,944 $ 274,712 $ 283,383 $ 269,626
Net current period other comprehensive income (loss) 608 54 482 160
Balance 308,677 280,309 308,677 280,309
Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]        
Balance     (1,487)  
Other comprehensive income (loss) before reclassifications     61  
Amounts reclassified from Accumulated other comprehensive loss     5  
Net current period other comprehensive income (loss)     66  
Balance (1,421)   (1,421)  
Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member] | Foreign Exchange Forward [Member]        
Balance     (195)  
Other comprehensive income (loss) before reclassifications     (383)  
Amounts reclassified from Accumulated other comprehensive loss     138  
Net current period other comprehensive income (loss)     (245)  
Balance (440)   (440)  
Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member] | Interest Rate Swap [Member]        
Balance     0  
Other comprehensive income (loss) before reclassifications     602  
Amounts reclassified from Accumulated other comprehensive loss     59  
Net current period other comprehensive income (loss)     661  
Balance 661   661  
AOCI Attributable to Parent [Member]        
Balance (1,808) (1,760) (1,682) (1,866)
Other comprehensive income (loss) before reclassifications     280  
Amounts reclassified from Accumulated other comprehensive loss     202  
Net current period other comprehensive income (loss)     482  
Balance $ (1,200) $ (1,706) $ (1,200) $ (1,706)
XML 68 R56.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Cost of sales $ 97,866 $ 72,280 $ 286,853 $ 200,090
Net income 9,956 4,946 23,188 9,252
Net sales 122,984 84,643 350,837 230,766
Tax (expense) benefit (3,555) (1,914) (8,310) (3,268)
Interest expense 964 112 2,393 687
Income tax expense 3,555 1,914 8,310 3,268
Reclassification out of Accumulated Other Comprehensive Income [Member]        
Net income 58 (15) (202) (65)
Reclassification out of Accumulated Other Comprehensive Income [Member] | Foreign Exchange Forward [Member]        
Net income 57 (11) (138) (53)
Net sales 35 (15) (56) (71)
Property and equipment 0 0 (127) 0
Tax (expense) benefit 22 4 45 18
Income tax expense (22) (4) (45) (18)
Reclassification out of Accumulated Other Comprehensive Income [Member] | Interest Rate Swap [Member]        
Net income 3 0 (59) 0
Tax (expense) benefit 1 0 (19) 0
Interest expense 4 0 (78) 0
Income tax expense (1) 0 19 0
Reclassification out of Accumulated Other Comprehensive Income [Member] | Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]        
Cost of sales (2) (4) (5) (12)
Net income $ (2) $ (4) $ (5) $ (12)
XML 69 R57.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 14 - Net Income Per Share (Details Textual) - shares
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares) 0 77,000 0 0
XML 70 R58.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details) - USD ($)
$ / shares in Units, shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Net income $ 9,956 $ 4,946 $ 23,188 $ 9,252
Basic (in shares) 9,927 9,871 9,909 9,849
Effect of potentially dilutive common shares (in shares) [1] 83 50 79 69
Diluted weighted-average common shares outstanding (in shares) 10,010 9,921 9,988 9,918
Basic (in dollars per share) $ 1.00 $ 0.50 $ 2.34 $ 0.94
Diluted (in dollars per share) $ 0.99 $ 0.50 $ 2.32 $ 0.93
[1] There were no antidilutive shares for the years ended December 31, 2021, 2020 or 2019.
XML 71 R59.htm IDEA: XBRL DOCUMENT v3.22.2.2
Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Sep. 30, 2022
Sep. 30, 2021
Sep. 30, 2022
Sep. 30, 2021
Net sales $ 122,984 $ 84,643 $ 350,837 $ 230,766
Gross profit 25,118 12,363 63,984 30,676
Operating Segments [Member] | Engineered Steel Pressure Pipe [Member]        
Net sales 83,663 69,439 235,446 188,244
Gross profit 14,196 8,844 32,490 22,613
Operating Segments [Member] | Precast Infrastructure and Engineered Systems [Member]        
Net sales 39,321 15,204 115,391 42,522
Gross profit $ 10,922 $ 3,519 $ 31,494 $ 8,063
XML 72 nwpx20220930_10q_htm.xml IDEA: XBRL DOCUMENT 0001001385 2022-01-01 2022-09-30 0001001385 2022-11-01 0001001385 2022-07-01 2022-09-30 0001001385 2021-07-01 2021-09-30 0001001385 2021-01-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember 2022-07-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember 2021-07-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember 2022-01-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember 2021-01-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember 2021-07-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember 2021-01-01 2021-09-30 0001001385 2022-09-30 0001001385 2021-12-31 0001001385 us-gaap:CommonStockMember 2022-06-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2022-06-30 0001001385 us-gaap:RetainedEarningsMember 2022-06-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-06-30 0001001385 2022-06-30 0001001385 us-gaap:CommonStockMember 2022-07-01 2022-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2022-07-01 2022-09-30 0001001385 us-gaap:RetainedEarningsMember 2022-07-01 2022-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:CommonStockMember 2022-07-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AdditionalPaidInCapitalMember 2022-07-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:RetainedEarningsMember 2022-07-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:CommonStockMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AdditionalPaidInCapitalMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:RetainedEarningsMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:CommonStockMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AdditionalPaidInCapitalMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:RetainedEarningsMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:CommonStockMember 2022-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2022-09-30 0001001385 us-gaap:RetainedEarningsMember 2022-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-09-30 0001001385 us-gaap:CommonStockMember 2021-06-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2021-06-30 0001001385 us-gaap:RetainedEarningsMember 2021-06-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-06-30 0001001385 2021-06-30 0001001385 us-gaap:CommonStockMember 2021-07-01 2021-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2021-07-01 2021-09-30 0001001385 us-gaap:RetainedEarningsMember 2021-07-01 2021-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:CommonStockMember 2021-07-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AdditionalPaidInCapitalMember 2021-07-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:RetainedEarningsMember 2021-07-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:CommonStockMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AdditionalPaidInCapitalMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:RetainedEarningsMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:CommonStockMember 2021-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2021-09-30 0001001385 us-gaap:RetainedEarningsMember 2021-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-09-30 0001001385 2021-09-30 0001001385 us-gaap:CommonStockMember 2021-12-31 0001001385 us-gaap:AdditionalPaidInCapitalMember 2021-12-31 0001001385 us-gaap:RetainedEarningsMember 2021-12-31 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-12-31 0001001385 us-gaap:CommonStockMember 2022-01-01 2022-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-09-30 0001001385 us-gaap:RetainedEarningsMember 2022-01-01 2022-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:CommonStockMember 2022-01-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:RetainedEarningsMember 2022-01-01 2022-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:CommonStockMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:RetainedEarningsMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:CommonStockMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AdditionalPaidInCapitalMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:RetainedEarningsMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:CommonStockMember 2020-12-31 0001001385 us-gaap:AdditionalPaidInCapitalMember 2020-12-31 0001001385 us-gaap:RetainedEarningsMember 2020-12-31 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2020-12-31 0001001385 2020-12-31 0001001385 us-gaap:CommonStockMember 2021-01-01 2021-09-30 0001001385 us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-09-30 0001001385 us-gaap:RetainedEarningsMember 2021-01-01 2021-09-30 0001001385 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:CommonStockMember 2021-01-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:RetainedEarningsMember 2021-01-01 2021-09-30 0001001385 us-gaap:PensionPlansDefinedBenefitMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:CommonStockMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AdditionalPaidInCapitalMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:RetainedEarningsMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2022-01-01 2022-09-30 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2021-10-05 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2022-07-01 2022-09-30 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember us-gaap:CustomerRelationshipsMember 2021-10-05 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember us-gaap:TrademarksAndTradeNamesMember 2021-10-05 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember us-gaap:PatentsMember 2021-10-05 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember nwpx:BacklogMember 2021-10-05 2021-10-05 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2021-07-01 2021-09-30 0001001385 nwpx:ParkEnvironmentalEquipmentLlcMember 2021-01-01 2021-09-30 0001001385 nwpx:InterimFundingAgreementifaMember 2022-08-31 0001001385 nwpx:InterimFundingAgreementifaMember us-gaap:SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember 2022-08-01 2022-08-31 0001001385 nwpx:InterimFundingAgreementifaMember 2022-09-30 0001001385 us-gaap:FairValueInputsLevel1Member 2022-09-30 0001001385 us-gaap:FairValueInputsLevel2Member 2022-09-30 0001001385 us-gaap:FairValueInputsLevel3Member 2022-09-30 0001001385 us-gaap:InterestRateSwapMember 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel1Member 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel3Member 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel1Member 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel3Member 2022-09-30 0001001385 us-gaap:FairValueInputsLevel1Member 2021-12-31 0001001385 us-gaap:FairValueInputsLevel2Member 2021-12-31 0001001385 us-gaap:FairValueInputsLevel3Member 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel1Member 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel3Member 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:DesignatedAsHedgingInstrumentMember 2022-09-30 0001001385 nwpx:SecondForeignExchangeForwardContractMember us-gaap:DesignatedAsHedgingInstrumentMember 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:DesignatedAsHedgingInstrumentMember 2021-12-31 0001001385 srt:ScenarioForecastMember us-gaap:InterestRateSwapMember 2023-04-03 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember us-gaap:SalesMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember us-gaap:SalesMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember us-gaap:SalesMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember us-gaap:SalesMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember nwpx:PropertyAndEquipmentMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember nwpx:PropertyAndEquipmentMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember nwpx:PropertyAndEquipmentMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:NondesignatedMember nwpx:PropertyAndEquipmentMember 2021-01-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:NondesignatedMember us-gaap:InterestExpenseMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:NondesignatedMember us-gaap:InterestExpenseMember 2021-07-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:NondesignatedMember us-gaap:InterestExpenseMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:NondesignatedMember us-gaap:InterestExpenseMember 2021-01-01 2021-09-30 0001001385 us-gaap:NondesignatedMember 2022-07-01 2022-09-30 0001001385 us-gaap:NondesignatedMember 2021-07-01 2021-09-30 0001001385 us-gaap:NondesignatedMember 2022-01-01 2022-09-30 0001001385 us-gaap:NondesignatedMember 2021-01-01 2021-09-30 0001001385 nwpx:ReclassifiedToNetSalesMember 2022-09-30 0001001385 nwpx:ReclassifiedToPropertyAndEquipmentMember 2022-09-30 0001001385 nwpx:ReclassifiedToInterestExpenseMember 2022-09-30 0001001385 2022-09-02 0001001385 nwpx:AtthemarketOfferingMember 2022-09-02 0001001385 us-gaap:CostOfSalesMember 2022-07-01 2022-09-30 0001001385 us-gaap:CostOfSalesMember 2021-07-01 2021-09-30 0001001385 us-gaap:CostOfSalesMember 2022-01-01 2022-09-30 0001001385 us-gaap:CostOfSalesMember 2021-01-01 2021-09-30 0001001385 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-07-01 2022-09-30 0001001385 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2021-07-01 2021-09-30 0001001385 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2022-01-01 2022-09-30 0001001385 us-gaap:SellingGeneralAndAdministrativeExpensesMember 2021-01-01 2021-09-30 0001001385 nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember 2021-12-31 0001001385 nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember 2022-01-01 2022-09-30 0001001385 nwpx:RestrictedStockUnitsAndPerformanceStockAwardsMember 2022-09-30 0001001385 us-gaap:PerformanceSharesMember 2022-09-30 0001001385 us-gaap:PerformanceSharesMember 2020-01-01 2020-12-31 0001001385 us-gaap:PerformanceSharesMember 2021-01-01 2021-12-31 0001001385 srt:MinimumMember us-gaap:PerformanceSharesMember 2022-01-01 2022-09-30 0001001385 srt:MaximumMember us-gaap:PerformanceSharesMember 2022-01-01 2022-09-30 0001001385 srt:DirectorMember nwpx:StockAwardsMember 2022-01-01 2022-09-30 0001001385 srt:DirectorMember nwpx:StockAwardsMember 2021-01-01 2021-09-30 0001001385 nwpx:LowerWillametteGroupMember 2017-01-31 0001001385 nwpx:PortlandHarborSuperfundSiteMember 2017-01-01 2017-01-31 0001001385 nwpx:PortlandHarborSuperfundSiteMember 2017-01-31 0001001385 nwpx:PortlandHarborNaturalreSourcesTrusteeCouncilMember 2014-06-30 0001001385 us-gaap:TransferredOverTimeMember 2022-07-01 2022-09-30 0001001385 us-gaap:TransferredOverTimeMember 2021-07-01 2021-09-30 0001001385 us-gaap:TransferredOverTimeMember 2022-01-01 2022-09-30 0001001385 us-gaap:TransferredOverTimeMember 2021-01-01 2021-09-30 0001001385 us-gaap:TransferredAtPointInTimeMember 2022-07-01 2022-09-30 0001001385 us-gaap:TransferredAtPointInTimeMember 2021-07-01 2021-09-30 0001001385 us-gaap:TransferredAtPointInTimeMember 2022-01-01 2022-09-30 0001001385 us-gaap:TransferredAtPointInTimeMember 2021-01-01 2021-09-30 0001001385 2022-10-01 2022-09-30 0001001385 2023-01-01 2022-09-30 0001001385 us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2021-12-31 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2021-12-31 0001001385 us-gaap:InterestRateSwapMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2021-12-31 0001001385 us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-01-01 2022-09-30 0001001385 us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:AccumulatedGainLossNetCashFlowHedgeParentMember 2022-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2022-07-01 2022-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2021-07-01 2021-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2022-01-01 2022-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember us-gaap:AccumulatedDefinedBenefitPlansAdjustmentMember 2021-01-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:ForeignExchangeForwardMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:InterestRateSwapMember us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-07-01 2022-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-07-01 2021-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2022-01-01 2022-09-30 0001001385 us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember 2021-01-01 2021-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:EngineeredSteelPressurePipeMember 2022-07-01 2022-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:EngineeredSteelPressurePipeMember 2021-07-01 2021-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:EngineeredSteelPressurePipeMember 2022-01-01 2022-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:EngineeredSteelPressurePipeMember 2021-01-01 2021-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:PrecastInfrastructureAndEngineeredSystemsMember 2022-07-01 2022-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:PrecastInfrastructureAndEngineeredSystemsMember 2021-07-01 2021-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:PrecastInfrastructureAndEngineeredSystemsMember 2022-01-01 2022-09-30 0001001385 us-gaap:OperatingSegmentsMember nwpx:PrecastInfrastructureAndEngineeredSystemsMember 2021-01-01 2021-09-30 shares iso4217:USD iso4217:USD shares pure utr:Y iso4217:CAD iso4217:EUR 0001001385 Northwest Pipe Co. false --12-31 Q3 2022 498000 503000 115377000 106957000 0.01 0.01 10000000 10000000 0 0 0 0 0.01 0.01 15000000 15000000 9927360 9927360 9870567 9870567 0 142000 141000 0 8000 0 83000 218000 0 21000 1800000 1800000 1800000 24600000 7400000 1000000.0 24100000 1 1 2800000 2600000 P0Y3M P1Y 0 0 10-Q true 2022-09-30 false 0-27140 OR 93-0557988 201 NE Park Plaza Drive, Suite 100 Vancouver WA 98684 360 397‑6250 Common Stock, par value $0.01 per share NWPX NASDAQ Yes Yes Accelerated Filer true false false 9927360 122984000 84643000 350837000 230766000 97866000 72280000 286853000 200090000 25118000 12363000 63984000 30676000 10654000 5562000 30149000 17729000 14464000 6801000 33835000 12947000 11000 171000 56000 260000 964000 112000 2393000 687000 13511000 6860000 31498000 12520000 3555000 1914000 8310000 3268000 9956000 4946000 23188000 9252000 1.00 0.50 2.34 0.94 0.99 0.50 2.32 0.93 9927000 9871000 9909000 9849000 10010000 9921000 9988000 9918000 9956000 4946000 23188000 9252000 -22000 -29000 -66000 -87000 158000 25000 -245000 73000 428000 0 661000 0 608000 54000 482000 160000 10564000 5000000 23670000 9412000 3706000 2997000 73975000 52664000 117260000 107170000 71578000 59651000 4326000 5744000 270845000 228226000 124228000 121266000 94166000 98507000 55504000 53684000 36334000 39376000 5400000 6620000 586477000 547679000 3525000 0 40444000 32267000 32561000 24498000 16243000 2623000 4725000 4704000 97498000 64092000 71817000 86761000 90231000 93725000 10982000 10984000 7272000 8734000 277800000 264296000 0 0 99000 99000 126686000 125062000 183092000 159904000 -1200000 -1682000 308677000 283383000 586477000 547679000 9927360 99000 125517000 173136000 -1808000 296944000 0 0 9956000 0 9956000 -0 -0 -0 -22000 -22000 0 0 0 158000 158000 0 0 0 428000 428000 0 1169000 0 0 1169000 9927360 99000 126686000 183092000 -1200000 308677000 9870567 99000 123686000 152687000 -1760000 274712000 0 0 4946000 0 4946000 -0 -0 -0 -29000 -29000 0 0 0 25000 25000 0 597000 0 0 597000 9870567 99000 124283000 157633000 -1706000 280309000 9870567 99000 125062000 159904000 -1682000 283383000 0 0 23188000 0 23188000 -0 -0 -0 -66000 -66000 0 0 0 -245000 -245000 0 0 0 661000 661000 56793 0 -853000 0 0 -853000 0 2477000 0 0 2477000 9927360 99000 126686000 183092000 -1200000 308677000 9805437 98000 123013000 148381000 -1866000 269626000 0 0 9252000 0 9252000 -0 -0 -0 -87000 -87000 0 0 0 73000 73000 65130 1000 -1167000 0 0 -1166000 0 2437000 0 0 2437000 9870567 99000 124283000 157633000 -1706000 280309000 23188000 9252000 9321000 8358000 3369000 947000 -3000 -89000 2477000 2437000 305000 -106000 21588000 -3181000 -3531000 35055000 11927000 13813000 -8789000 -6383000 8350000 6725000 315000 -2057000 25517000 -13625000 11792000 8126000 288000 -304000 -12080000 -7822000 121103000 4720000 136047000 2567000 3525000 0 -0 13762000 409000 297000 853000 1166000 -47000 -220000 -12728000 -13292000 709000 -34739000 2997000 37927000 3706000 3188000 614000 756000 1820000 0 26000 4669000 894000 855000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">1.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Organization and Basis of Presentation</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Northwest Pipe Company (collectively with its subsidiaries, the “Company”) is a leading manufacturer of water related infrastructure products, and operates in two segments, Engineered Steel Pressure Pipe (“SPP”) and Precast Infrastructure and Engineered Systems (“Precast”). This segment presentation is consistent with how the Company’s chief operating decision maker, its Chief Executive Officer, evaluates performance of the Company and makes decisions regarding the allocation of resources.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In addition to being the largest manufacturer of engineered steel water pipeline systems in North America, the Company manufactures high-quality precast and reinforced concrete products; water, wastewater, and stormwater equipment; steel casing pipe, bar-wrapped concrete cylinder pipe, and <em style="font: inherit;">one</em> of the largest offerings of pipeline system joints, fittings, and specialized components. Strategically positioned to meet growing water and wastewater infrastructure needs, the Company provides solution-based products for a wide range of markets under the ParkUSA, Geneva Pipe and Precast, Permalok®, and Northwest Pipe Company lines. The Company is headquartered in Vancouver, Washington, and has 13 manufacturing facilities across North America.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Condensed Consolidated Financial Statements are expressed in United States Dollars and include the accounts of the Company and its subsidiaries over which the Company exercises control as of the financial statement date. Intercompany accounts and transactions have been eliminated.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Effective in the <em style="font: inherit;">fourth</em> quarter of <em style="font: inherit;">2021,</em> as a result of the acquisition of Park Environmental Equipment, LLC (“ParkUSA”), the Company revised its historical <em style="font: inherit;">one</em> segment position and identified the new operating segments, SPP and Precast, to align with changes made in its internal management structure and its reporting structure of financial information used to assess performance and allocate resources. See Note <em style="font: inherit;">15,</em> “Segment Information” for detailed descriptions of these segments. As a result, certain amounts from the prior year financial statements have been reclassified in order to conform to the current year presentation.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The accompanying unaudited interim Condensed Consolidated Financial Statements have been prepared in conformity with accounting principles generally accepted in the United States of America (“U.S. GAAP”) for interim financial information. The financial information as of <em style="font: inherit;"> December </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2021</em> is derived from the audited Consolidated Financial Statements presented in the Company’s Annual Report on Form <em style="font: inherit;">10‑K</em> for the year ended <em style="font: inherit;"> December </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2021</em> (<em style="font: inherit;">“2021</em> Form <em style="font: inherit;">10‑K”</em>). Certain information and footnote disclosures normally included in consolidated financial statements prepared in accordance with U.S. GAAP have been condensed or omitted, pursuant to the rules and regulations of the Securities and Exchange Commission and the accounting standards for interim financial statements. In the opinion of management, the accompanying Condensed Consolidated Financial Statements include all adjustments necessary (which are of a normal and recurring nature) for the fair statement of the results of the interim periods presented. The Condensed Consolidated Financial Statements should be read in conjunction with the Consolidated Financial Statements and Notes thereto together with management’s discussion and analysis of financial condition and results of operations contained in the Company’s <em style="font: inherit;">2021</em> Form <em style="font: inherit;">10‑K.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Operating results for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> are <em style="font: inherit;">not</em> necessarily indicative of the results that <em style="font: inherit;"> may </em>be expected for the entire fiscal year ending <em style="font: inherit;"> December </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2022.</em></p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"> </p> 2 13 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">2.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Business Combination</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">On <em style="font: inherit;"> October </em><em style="font: inherit;">5,</em> <em style="font: inherit;">2021,</em> the Company completed the acquisition of 100% of Park Environmental Equipment, LLC (ParkUSA) for a purchase price of $90.2 million in cash which is included in the Precast segment for all periods following the acquisition date. ParkUSA is a precast concrete and steel fabrication-based company that develops and manufactures water, wastewater, and environmental solutions. Operations continue with ParkUSA’s previous management and workforce at its <em style="font: inherit;">three</em> Texas manufacturing facilities located in Houston, Dallas, and San Antonio.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes the purchase consideration and fair value of the assets acquired and liabilities assumed as of <em style="font: inherit;"> October </em><em style="font: inherit;">5,</em> <em style="font: inherit;">2021</em> (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Assets</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Cash and cash equivalents</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">278</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Trade and other receivables</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11,034</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Inventories</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">12,773</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Prepaid expenses and other</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">293</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Property and equipment</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">8,076</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease right-of-use assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">58,301</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Intangible assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">31,000</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Deferred income taxes</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">347</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total assets acquired</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">122,102</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Liabilities</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accounts payable</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,029</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accrued liabilities</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">4,067</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">58,301</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total liabilities assumed</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">64,397</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">32,519</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Total purchase consideration</b></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">90,224</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The tangible and intangible assets acquired and liabilities assumed were recognized based on their estimated fair values on the acquisition date, with the excess purchase consideration recorded as goodwill. As a result of additional information obtained during the measurement period about facts and circumstances that existed as of the acquisition date, the Company recorded measurement period adjustments during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> which resulted in a $1.8 million increase in goodwill and purchase consideration related to the settlement of working capital. The measurement period for the ParkUSA acquisition was complete as of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes the components of the intangible assets acquired and their estimated useful lives:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Estimated Useful L</b></b><b><b>ife</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Fair Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(In years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(In thousands)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Customer relationships</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">19,800</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Trade names and trademarks</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,600</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Patents</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">21.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,300</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Backlog</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">0.6</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">300</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total intangible assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.2</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,000</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Goodwill arose from the acquisition of an assembled workforce, expansion of product offerings, and management’s industry know-how, and is deductible for tax purposes.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company incurred transaction costs associated with this acquisition of $0 and $0.1 million during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> respectively and $0.6 million and $0.8 million during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021,</em> respectively. These transaction costs are included in Selling, general, and administrative expense in the Condensed Consolidated Statements of Operations.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><i><b>Unaudited Pro Forma Disclosures</b></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following unaudited pro forma summary presents the consolidated results of the Company as if the acquisition of ParkUSA had occurred on <em style="font: inherit;"> January </em><em style="font: inherit;">1</em> of the year prior to the acquisition (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"><b>Three Months E<b>nded</b></b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"><b>Nine Months E<b>nded</b></b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">105,345</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">283,005</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,477</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">12,247</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">This unaudited pro forma consolidated financial data is included only for the purpose of illustration and does <em style="font: inherit;">not</em> necessarily indicate what the operating results would have been if the acquisition of ParkUSA had occurred on <em style="font: inherit;"> January </em><em style="font: inherit;">1</em> of the year prior to the acquisition. Moreover, this information is <em style="font: inherit;">not</em> indicative of what the Company’s future operating results will be. The information prior to the acquisition is included based on prior accounting records maintained by ParkUSA. The pro forma amounts have been calculated after applying the Company’s accounting policies and adjusting the results of ParkUSA to reflect the additional depreciation and amortization that would have been charged assuming the fair value adjustments to property and equipment and intangible assets had been applied on <em style="font: inherit;"> January </em><em style="font: inherit;">1</em> of the year prior to the acquisition. Adjustments also include an increase of interest expense as if the Company’s debt obtained in connection with the acquisition of ParkUSA had been outstanding since <em style="font: inherit;"> January </em><em style="font: inherit;">1</em> of the year prior to the acquisition. The provision for income taxes has also been adjusted for all periods, based upon the foregoing adjustments to historical results.</p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"> </p> 1 90200000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Assets</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Cash and cash equivalents</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">278</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Trade and other receivables</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">11,034</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Inventories</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">12,773</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Prepaid expenses and other</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">293</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Property and equipment</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">8,076</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease right-of-use assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">58,301</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Intangible assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">31,000</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Deferred income taxes</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">347</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total assets acquired</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">122,102</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Liabilities</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accounts payable</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,029</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Accrued liabilities</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">4,067</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Operating lease liabilities</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">58,301</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total liabilities assumed</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">64,397</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Goodwill</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">32,519</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 84%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>Total purchase consideration</b></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">90,224</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 278000 11034000 12773000 293000 8076000 58301000 31000000 347000 122102000 2029000 4067000 58301000 64397000 32519000 90224000 1800000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Estimated Useful L</b></b><b><b>ife</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Fair Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(In years)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>(In thousands)</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Customer relationships</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">19,800</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Trade names and trademarks</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,600</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Patents</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">21.0</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">1,300</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Backlog</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">0.6</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">300</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total intangible assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10.2</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">31,000</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> P10Y 19800000 P10Y 9600000 P21Y 1300000 P0Y7M6D 300000 P10Y2M12D 31000000 0 100000 600000 800000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"><b>Three Months E<b>nded</b></b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; width: 1%;"><b>Nine Months E<b>nded</b></b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">105,345</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">283,005</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">2,477</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">12,247</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> </tbody></table> 105345000 283005000 2477000 12247000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">3.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Inventories</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Inventories consist of the following (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">52,915</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">44,697</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Work-in-process</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">3,817</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,018</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">12,646</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10,096</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Supplies</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">2,200</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,840</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total inventories</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">71,578</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">59,651</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>September 30,</b> <b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>December 31,</b> <b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Raw materials</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">52,915</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">44,697</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Work-in-process</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">3,817</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,018</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Finished goods</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">12,646</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">10,096</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Supplies</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">2,200</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,840</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total inventories</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">71,578</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">59,651</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 52915000 44697000 3817000 3018000 12646000 10096000 2200000 1840000 71578000 59651000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">4.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Goodwill</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company has recorded goodwill in connection with its business acquisitions within the Precast reportable segment. The changes in the carrying amount of goodwill for the <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> were as follows (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Goodwill, December 31, 2021</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">53,684</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Measurement period adjustment (Note 2)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,820</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Goodwill, September 30, 2022</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">55,504</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Goodwill, December 31, 2021</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">53,684</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Measurement period adjustment (Note 2)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,820</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 84%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Goodwill, September 30, 2022</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">55,504</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 53684000 1820000 55504000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">5.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Current Debt</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In <em style="font: inherit;"> August 2022, </em>the Company entered into an Interim Funding Agreement (“IFA”) with Wells Fargo Equipment Finance, Inc. (“WFEF”) allowing for aggregate interim funding advances up to $13.5 million of equipment purchased for a new reinforced concrete pipe mill, to be converted into a term loan upon final delivery and acceptance of the financed equipment. The IFA bears interest at the Term Secured Overnight Finance Rate plus 1.75%, requires monthly payments of accrued interest, and grants a security interest in the equipment to WFEF. As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the outstanding balance was $3.5 million, which is classified as a current liability since there is <em style="font: inherit;">not</em> a firm commitment for long-term debt financing.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 13500000 0.0175 3500000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">6.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Fair Value Measurements</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Fair value is defined as the price that would be received to sell an asset or paid to transfer a liability, in the principal or most advantageous market for the asset or liability, in an orderly transaction between market participants at the measurement date.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The authoritative guidance establishes a fair value hierarchy that prioritizes the inputs to valuation techniques used to measure fair value into <em style="font: inherit;">three</em> broad levels. These levels are: Level <em style="font: inherit;">1</em> (inputs are quoted prices in active markets for identical assets or liabilities); Level <em style="font: inherit;">2</em> (inputs are other than quoted prices that are observable, either directly or indirectly through corroboration with observable market data); and Level <em style="font: inherit;">3</em> (inputs are unobservable, with little or <em style="font: inherit;">no</em> market data that exists, such as internal financial forecasts). The Company is required to maximize the use of observable inputs and minimize the use of unobservable inputs when measuring fair value.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The following table summarizes information regarding the Company’s financial assets and liabilities that are measured at fair value on a recurring basis (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 1</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 2</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 3</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>As of September 30, 2022</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred compensation plan</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,410</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">2,902</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">508</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Interest rate swaps</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">879</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">879</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,123</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,123</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total financial assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,412</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">2,902</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">2,510</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Financial liabilities:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,209</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,209</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>As of December 31, 2021</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred compensation plan</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">4,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,830</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">491</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total financial assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,338</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,830</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">508</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial liabilities:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(661</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(661</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The deferred compensation plan assets consist of cash and several publicly traded stock and bond mutual funds, valued using quoted market prices in active markets, classified as Level <em style="font: inherit;">1</em> within the fair value hierarchy, as well as guaranteed investment contracts, valued at principal plus interest credited at contract rates, classified as Level <em style="font: inherit;">2</em> within the fair value hierarchy. Deferred compensation plan assets are included within Other assets in the Condensed Consolidated Balance Sheets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The foreign currency forward contracts and interest rate swaps are derivatives valued using various pricing models or discounted cash flow analyses that incorporate observable market parameters, such as interest rate yield curves and currency rates, and are classified as Level <em style="font: inherit;">2</em> within the fair value hierarchy. Derivative valuations incorporate credit risk adjustments that are necessary to reflect the probability of default by the counterparty or the Company. The foreign currency forward contracts and interest rate swaps are presented at their gross fair values. Foreign currency forward contract and interest rate swap assets are included within Prepaid expenses and other and foreign currency forward contract liabilities are included within Accrued liabilities in the Condensed Consolidated Balance Sheets.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The net carrying amounts of cash and cash equivalents, trade and other receivables, accounts payable, accrued liabilities, and borrowings on the line of credit approximate fair value due to the short-term nature of these instruments.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Total</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 1</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 2</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Level 3</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>As of September 30, 2022</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred compensation plan</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,410</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">2,902</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">508</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Interest rate swaps</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">879</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">879</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,123</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,123</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total financial assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">5,412</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">2,902</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">2,510</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Financial liabilities:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,209</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,209</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;"><b>As of December 31, 2021</b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"><b> </b></td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"><b> </b></td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial assets:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Deferred compensation plan</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">4,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">3,830</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">491</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">17</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total financial assets</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,338</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">3,830</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">508</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Financial liabilities:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Foreign currency forward contracts</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(661</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(661</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 3410000 2902000 508000 0 879000 0 879000 0 1123000 0 1123000 0 5412000 2902000 2510000 0 1209000 -0 1209000 -0 4321000 3830000 491000 0 17000 0 17000 0 4338000 3830000 508000 0 661000 -0 661000 -0 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><em style="font: inherit;">7.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b>Derivative Instruments and Hedging Activities</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In the normal course of business, the Company is exposed to interest rate and foreign currency exchange rate fluctuations. Consistent with the Company’s strategy for financial risk management, the Company has established a program that utilizes foreign currency forward contracts and interest rate swaps to offset the risks associated with the effects of these exposures.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">For each derivative entered into in which the Company seeks to obtain cash flow hedge accounting treatment, the Company formally documents all relationships between hedging instruments and hedged items, as well as its risk management objective and strategy for undertaking the hedge transaction, the nature of the risk being hedged, how the hedging instrument’s effectiveness in offsetting the hedged risk will be assessed prospectively and retrospectively, and a description of the method of measuring ineffectiveness. This process includes linking all derivatives to specific firm commitments or forecasted transactions and designating the derivatives as cash flow hedges. The Company also formally assesses, both at the hedge’s inception and on an ongoing basis, whether the derivatives that are used in hedging transactions are highly effective in offsetting changes in cash flows of hedged items. The effective portion of these hedged items is reflected in Unrealized gain (loss) on cash flow hedges on the Condensed Consolidated Statements of Comprehensive Income. If it is determined that a derivative is <em style="font: inherit;">not</em> highly effective, or that it has ceased to be a highly effective hedge, the Company is required to discontinue hedge accounting with respect to that derivative prospectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the total notional amount of the foreign currency forward contracts was $17.8 million (<span style="-sec-ix-hidden:c90857647">CAD$24.6</span> million) and $7.3 million (<span style="-sec-ix-hidden:c90857649">EUR$7.4</span> million), which included $0.7 million (<span style="-sec-ix-hidden:c90857651">CAD$1.0</span> million) of foreign currency forward contracts <em style="font: inherit;">not</em> designated as cash flow hedges. As of <em style="font: inherit;"> December </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2021,</em> the total notional amount of the foreign currency forward contracts was $19.0 million (<span style="-sec-ix-hidden:c90857656">CAD$24.1</span> million), and all foreign currency forward contracts were designated as cash flow hedges. As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the Company’s foreign currency forward contracts mature at various dates through <em style="font: inherit;"> October 2023 </em>and are subject to an enforceable master netting arrangement.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the interest rate swap, which effectively converts a portion of the Company’s variable-rate debt to fixed-rate debt, was designated as cash flow hedge. The Company receives floating interest payments monthly based on the Secured Overnight Financing Rate (“SOFR”) and pays a fixed rate of 1.941% to the counterparty. As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the total notional amount was $31.7 million, which amortizes ratably on a monthly basis to <em style="font: inherit;">zero</em> by the <em style="font: inherit;"> April 2024 </em>maturity date.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">On <em style="font: inherit;"> August </em><em style="font: inherit;">9,</em> <em style="font: inherit;">2022,</em> the Company entered into an interest rate swap transaction which will begin <em style="font: inherit;"> April </em><em style="font: inherit;">3,</em> <em style="font: inherit;">2023</em> at a notional amount of $15.0 million, which will amortize ratably on a monthly basis to <em style="font: inherit;">zero</em> by the <em style="font: inherit;"> April 2028 </em>maturity date. The Company will receive floating interest payments monthly based on the <em style="font: inherit;">30‑day</em> Average SOFR and will pay a fixed rate of 2.96% to the counterparty.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes the gains (losses) recognized on derivatives in the Condensed Consolidated Financial Statements (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Foreign currency forward contracts:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">599</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">145</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">841</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">44</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Property and equipment</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">32</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">(95</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Interest rate swaps:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest expense</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">4</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">(78</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">635</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">145</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">668</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">44</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> unrealized pretax gains (losses) on outstanding cash flow hedges in Accumulated other comprehensive loss was $0.3 million, of which $0.4 million, $(1.1) million, and $0.6 million are expected to be reclassified to Net sales, Property and equipment, and Interest expense, respectively, within the next <em style="font: inherit;">twelve</em> months as a result of underlying hedged transactions also being recorded in these line items. See Note <em style="font: inherit;">13,</em> “Accumulated Other Comprehensive Loss” for additional information regarding foreign currency forward contract gains and losses.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 17800000 7300000 700000 19000000.0 0.01941 31700000 15000000.0 0.0296 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Foreign currency forward contracts:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">599</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">145</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">841</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">44</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Property and equipment</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">32</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;">(95</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Interest rate swaps:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Interest expense</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">4</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">(78</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">635</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">145</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">668</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">44</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 599000 145000 841000 44000 32000 0 -95000 0 4000 0 -78000 0 635000 145000 668000 44000 -300000 400000 -1100000 600000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">8.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Stockholders’ Equity</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><i><b>At-the-Market Offering</b></i></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">On <em style="font: inherit;"> September </em><em style="font: inherit;">2,</em> <em style="font: inherit;">2022,</em> the Company entered into an Open Market Sale Agreement (the “At-the-Market Offering”) with Jefferies LLC (“Jefferies”), pursuant to which the Company <em style="font: inherit;"> may </em>issue and sell shares of its common stock, par value $0.01 per share, having aggregate offering sales proceeds of up to $50,000,000 (the “Shares”) from time to time through Jefferies as its sales agent. The Company <em style="font: inherit;"> may </em>sell the Shares in amounts and at times to be determined by the Company from time to time subject to the terms and conditions of the At-the-Market Offering, but it has <em class="GFJY4-DIN-com-rdg-thunderdome-client-resources-CssResource-html-element-highlighted" style="font: inherit;">no</em> obligation to sell any of the Shares under the At-the-Market Offering. The Shares to be sold under the At-the-Market Offering, if any, will be offered and sold pursuant to the Company’s shelf registration statement on Form <em style="font: inherit;">S‑3</em> (File <em style="font: inherit;">No.</em> <em style="font: inherit;">333‑249637</em>) filed with the Securities and Exchange Commission, which became effective on <em style="font: inherit;"> November </em><em style="font: inherit;">3,</em> <em style="font: inherit;">2020,</em> and the prospectus supplement dated <em style="font: inherit;"> September </em><em style="font: inherit;">2,</em> <em style="font: inherit;">2022</em> filed by the Company. The Company will pay Jefferies a cash commission of up to 3.0% of gross proceeds from the sale of the Shares pursuant to the At-the-Market Offering. The Company has also agreed to provide Jefferies with customary indemnification and contribution rights. <em style="font: inherit;">No</em> proceeds were raised under the At-the-Market Offering during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 0.01 50000000 0.030 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">9.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Share-based Compensation</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company has one active stock incentive plan for employees and directors, the <em style="font: inherit;">2022</em> Stock Incentive Plan, which provides for awards of stock options to purchase shares of common stock, stock appreciation rights, restricted and unrestricted shares of common stock, restricted stock units (“RSUs”), and performance share awards (“PSAs”). In addition, the Company has <span style="-sec-ix-hidden:c90857730">one</span> inactive stock incentive plan, the <em style="font: inherit;">2007</em> Stock Incentive Plan, under which previously granted awards remain outstanding.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company recognizes the compensation cost of employee and director services received in exchange for awards of equity instruments based on the grant date estimated fair value of the awards. The Company estimates the fair value of RSUs and PSAs using the value of the Company’s stock on the date of grant. Share-based compensation cost is recognized over the period during which the employee or director is required to provide service in exchange for the award and, as forfeitures occur, the associated compensation cost recognized to date is reversed. For awards with performance-based payout conditions, the Company recognizes compensation cost based on the probability of achieving the performance conditions, with changes in expectations recognized as an adjustment to earnings in the period of change. Any recognized compensation cost is reversed if the conditions are ultimately <em style="font: inherit;">not</em> met.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes share-based compensation expense recorded (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Cost of sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">474</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">202</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">822</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">685</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Selling, general, and administrative expense</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">695</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">395</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">1,655</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,752</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,169</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">597</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,477</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,437</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Restricted Stock Units and Performance Share Awards</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company’s stock incentive plan provides for equity instruments, such as RSUs and PSAs, which grant the right to receive a specified number of shares over a specified period of time. RSUs and PSAs are service-based awards that vest according to the terms of the grant. PSAs have performance-based payout conditions.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes the Company’s RSU and PSA activity:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Number of RSUs a</b></b><b><b>nd PSAs <span style="font-size:8pt;">(1)</span></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Weighted-</b></b><b><b>Average Grant D</b></b><b><b>ate Fair Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unvested RSUs and PSAs as of December 31, 2021</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">161,131</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.26</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">RSUs and PSAs granted</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">116,622</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.68</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Unvested RSUs and PSAs canceled</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(8,248</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">31.18</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">RSUs and PSAs vested <span style="font-size:8pt;">(2)</span></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(68,581</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">29.29</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unvested RSUs and PSAs as of September 30, 2022</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">200,924</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.80</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:0.9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">(<em style="font: inherit;">1</em>)</p> </td><td style="vertical-align:top;width:45.4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The number of PSAs disclosed in this table are at the target level of 100%.</p> </td></tr> <tr><td style="vertical-align:top;width:0.9%;"> </td><td style="vertical-align:top;width:45.4%;"> </td></tr> <tr><td style="vertical-align:top;width:0.9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">(<em style="font: inherit;">2</em>)</p> </td><td style="vertical-align:top;width:45.4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">For the PSAs vested on <em style="font: inherit;"> March </em><em style="font: inherit;">31,</em> <em style="font: inherit;">2022,</em> the actual number of common shares that were issued was determined by multiplying the PSAs at the target level of <em style="font: inherit;">100%,</em> as disclosed in this table, by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the <em style="font: inherit;">2020</em>-<em style="font: inherit;">2021</em> performance period and 93% for the <em style="font: inherit;">2021</em> performance period.</p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The unvested balance of RSUs and PSAs as of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> includes approximately 149,000 PSAs at the target level of <span style="-sec-ix-hidden:c90857748">100%.</span> The vesting of these awards is subject to the achievement of specified performance-based conditions, and the actual number of common shares that will ultimately be issued will be determined by multiplying this number of PSAs by a payout percentage ranging from 0% to 200%.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Based on the estimated level of achievement of the performance targets associated with the PSAs as of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> unrecognized compensation expense related to the unvested portion of the Company’s RSUs and PSAs was $4.6 million, which is expected to be recognized over a weighted-average period of 1.6 years.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Stock Awards</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">For the <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> and <em style="font: inherit;">2021,</em> stock awards of 11,380 shares and 12,606 shares, respectively, were granted to non-employee directors, which vested immediately upon issuance. The Company recorded compensation expense based on the weighted-average fair market value per share of the awards on the grant date of $30.75 in <em style="font: inherit;">2022</em> and $30.94 in <em style="font: inherit;">2021.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 1 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Cost of sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">474</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">202</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; text-align: right;">822</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">685</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Selling, general, and administrative expense</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">695</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">395</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%;">1,655</td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">1,752</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">1,169</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">597</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">2,477</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2,437</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 474000 202000 822000 685000 695000 395000 1655000 1752000 1169000 597000 2477000 2437000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Number of RSUs a</b></b><b><b>nd PSAs <span style="font-size:8pt;">(1)</span></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Weighted-</b></b><b><b>Average Grant D</b></b><b><b>ate Fair Value</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 68%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unvested RSUs and PSAs as of December 31, 2021</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">161,131</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.26</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">RSUs and PSAs granted</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">116,622</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.68</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Unvested RSUs and PSAs canceled</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">(8,248</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">31.18</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">RSUs and PSAs vested <span style="font-size:8pt;">(2)</span></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(68,581</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">29.29</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 68%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unvested RSUs and PSAs as of September 30, 2022</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">200,924</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">30.80</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 161131 30.26 116622 30.68 8248 31.18 68581 29.29 200924 30.80 1 1.41 0.93 149000 0 2 4600000 P1Y7M6D 11380 12606 30.75 30.94 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">10.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Commitments and Contingencies</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Portland Harbor Superfund Site</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In <em style="font: inherit;"> December 2000, </em>a section of the lower Willamette River known as the Portland Harbor Superfund Site was included on the National Priorities List at the request of the United States Environmental Protection Agency (“EPA”). While the Company’s Portland, Oregon manufacturing facility does <em style="font: inherit;">not</em> border the Willamette River, an outfall from the facility’s stormwater system drains into a neighboring property’s privately owned stormwater system and slip. Also in <em style="font: inherit;"> December 2000, </em>the Company was notified by the EPA and the Oregon Department of Environmental Quality (“ODEQ”) of potential liability under the Comprehensive Environmental Response, Compensation, and Liability Act (“CERCLA”). A remedial investigation and feasibility study of the Portland Harbor Superfund Site was directed by a group of 14 potentially responsible parties known as the Lower Willamette Group under agreement with the EPA. The EPA finalized the remedial investigation report in <em style="font: inherit;"> February 2016, </em>and the feasibility study in <em style="font: inherit;"> June 2016, </em>which identified multiple remedial alternatives. In <em style="font: inherit;"> January 2017, </em>the EPA issued its Record of Decision selecting the remedy for cleanup at the Portland Harbor Superfund Site, which it believes will cost approximately $1 billion at net present value and 13 years to complete. The EPA has <em style="font: inherit;">not</em> yet determined who is responsible for the costs of cleanup or how the cleanup costs will be allocated among the more than 150 potentially responsible parties. Because of the large number of potentially responsible parties and the variability in the range of remediation alternatives, the Company is unable to estimate an amount or an amount within a range of costs for its obligation with respect to the Portland Harbor Superfund Site matters, and <em style="font: inherit;">no</em> further adjustment to the Condensed Consolidated Financial Statements has been recorded as of the date of this filing.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The ODEQ is separately providing oversight of voluntary investigations and source control activities by the Company involving the Company’s site, which are focused on controlling any current “uplands” releases of contaminants into the Willamette River. <em style="font: inherit;">No</em> liabilities have been established in connection with these investigations because the extent of contamination and the Company’s responsibility for the contamination have <em style="font: inherit;">not</em> yet been determined.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Concurrent with the activities of the EPA and the ODEQ, the Portland Harbor Natural Resources Trustee Council (“Trustees”) sent some or all of the same parties, including the Company, a notice of intent to perform a Natural Resource Damage Assessment (“NRDA”) for the Portland Harbor Superfund Site to determine the nature and extent of natural resource damages under CERCLA Section <em style="font: inherit;">107.</em> The Trustees for the Portland Harbor Superfund Site consist of representatives from several Northwest Indian Tribes, <em style="font: inherit;">three</em> federal agencies, and <em style="font: inherit;">one</em> state agency. The Trustees act independently of the EPA and the ODEQ. The Trustees have encouraged potentially responsible parties to voluntarily participate in the funding of their injury assessments and several of those parties have agreed to do so. In <em style="font: inherit;"> June 2014, </em>the Company agreed to participate in the injury assessment process, which included funding $0.4 million of the assessment. The Company has <em style="font: inherit;">not</em> assumed any additional payment obligations or liabilities with the participation with the NRDA, nor does the Company expect to incur significant future costs in the resolution of the NRDA.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">In <em style="font: inherit;"> January 2017, </em>the Confederated Tribes and Bands of the Yakama Nation, a Trustee until they withdrew from the council in <em style="font: inherit;">2009,</em> filed a complaint against the potentially responsible parties including the Company to recover costs related to their own injury assessment and compensation for natural resources damages. The Company does <em style="font: inherit;">not</em> have sufficient information to determine the likelihood of a loss in this matter or the amount of damages that could be allocated to the Company.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company has insurance policies for defense costs, as well as indemnification policies it believes will provide reimbursement for the remediation assessed. However, the Company can provide <em style="font: inherit;">no</em> assurance that those policies will cover all of the costs which the Company <em style="font: inherit;"> may </em>incur.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>All Sites</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company operates its facilities under numerous governmental permits and licenses relating to air emissions, stormwater runoff, and other environmental matters. The Company’s operations are also governed by many other laws and regulations, including those relating to workplace safety and worker health, principally the Occupational Safety and Health Act and regulations there under which, among other requirements, establish noise and dust standards. The Company believes it is in material compliance with its permits and licenses and these laws and regulations, and the Company does <em style="font: inherit;">not</em> believe that future compliance with such laws and regulations will have a material adverse effect on its financial position, results of operations, or cash flows.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Other Contingencies and Legal Proceedings</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">From time to time, the Company is party to a variety of legal actions, including claims, suits, complaints, and investigations arising out of the ordinary course of its business. The Company maintains insurance coverage against potential claims in amounts that are believed to be adequate. To the extent that insurance does <em style="font: inherit;">not</em> cover legal, defense, and indemnification costs associated with a loss contingency, the Company records accruals when such losses are considered probable and reasonably estimable. The Company believes that it is <em style="font: inherit;">not</em> presently a party to legal actions, the outcomes of which would have a material adverse effect on its business, financial condition, results of operations, or cash flows.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Commitments</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> the Company’s commitments include approximately $7.3 million relating to its investment in a new reinforced concrete pipe mill for which the Company has <em style="font: inherit;">not</em> yet received the equipment.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Guarantees</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company has entered into certain letters of credit that total $1.1 million as of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022.</em> The letters of credit relate to workers’ compensation insurance.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 14 1000000000 P13Y 150 400000 7300000 1100000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">11.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Revenue</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company manufactures water infrastructure steel pipe products, which are generally made to custom specifications for installation contractors serving projects funded by public water agencies, as well as precast and reinforced concrete products. Generally, each of the Company’s contracts with its customers contains a single performance obligation, as the promise to transfer products is <em style="font: inherit;">not</em> separately identifiable from other promises in the contract and, therefore, is <em style="font: inherit;">not</em> distinct.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">SPP revenue for water infrastructure steel pipe products is recognized over time as the manufacturing process progresses because of the Company’s right to payment for work performed to date plus a reasonable profit on cancellations for unique products that have <em style="font: inherit;">no</em> alternative use to the Company. Revenue is measured by the costs incurred to date relative to the estimated total direct costs to fulfill each contract (cost-to-cost method). Contract costs include all material, labor, and other direct costs incurred in satisfying the performance obligations. The cost of steel material is recognized as a contract cost when the steel is introduced into the manufacturing process. Changes in job performance, job conditions, and estimated profitability, including those arising from contract change orders, contract penalty provisions, foreign currency exchange rate movements, changes in raw materials costs, and final contract settlements <em style="font: inherit;"> may </em>result in revisions to estimates of revenue, costs, and income, and are recognized in the period in which the revisions are determined. Provisions for losses on uncompleted contracts, included in Accrued liabilities, are estimated by comparing total estimated contract revenue to the total estimated contract costs and a loss is recognized during the period in which it becomes probable and can be reasonably estimated.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Revisions in contract estimates resulted in an increase (decrease) in SPP net sales of $0.2 million and $(0.2) million for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> respectively, and approximately $0 and $2.1 million for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021,</em> respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Precast revenue for water infrastructure concrete pipe and precast concrete products is recognized at the time control is transferred to customers, in an amount that reflects the consideration the Company expects to be entitled to in exchange for the products. All variable consideration that <em style="font: inherit;"> may </em>affect the total transaction price, including contractual discounts, returns, and credits, is included in net sales. Estimates for variable consideration are based on historical experience, anticipated performance, and management’s judgment. The Company’s contracts do <em style="font: inherit;">not</em> contain significant financing.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company does <em style="font: inherit;">not</em> recognize revenue on a contract until the contract has approval and commitment from both parties, the contract rights and payment terms can be identified, the contract has commercial substance, and its collectability is probable.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><i>Disaggregation of Revenue</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table disaggregates revenue by recognition over time or at a point in time, as the Company believes it best depicts how the nature, amount, timing, and uncertainty of its revenue and cash flows are affected by economic factors (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Over time (Engineered Steel Pressure Pipe)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">83,663</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">69,439</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">235,446</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">188,244</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Point in time (Precast Infrastructure and Engineered Systems)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">39,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,204</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,391</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">42,522</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">122,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">84,643</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">350,837</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">230,766</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Contract Assets and Liabilities</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Contract assets primarily represent revenue earned over time but <em style="font: inherit;">not</em> yet billable based on the terms of the contracts. These amounts will be billed based on the terms of the contracts, which can include certain milestones, partial shipments, or completion of the contracts. Payment terms of amounts billed vary based on the customer, but are typically due within <em style="font: inherit;">30</em> days of invoicing.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Contract liabilities represent advance billings on contracts, typically for steel. The Company recognized revenue that was included in the contract liabilities balance at the beginning of each period of <span style="-sec-ix-hidden:c90857854">$2.8</span> million and <span style="-sec-ix-hidden:c90857855">$2.6</span> million during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> respectively and $1.5 million and $6.2 million during the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021,</em> respectively.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;"><b><i>Backlog</i></b></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Backlog represents the balance of remaining performance obligations under signed contracts for SPP water infrastructure steel pipe products for which revenue is recognized over time. As of <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> backlog was $295 million. The Company expects to recognize 25% of the remaining performance obligations in <em style="font: inherit;"><span style="-sec-ix-hidden:c90857871">2022</span>,</em> 52% in <em style="font: inherit;"><span style="-sec-ix-hidden:c90857874">2023</span>,</em> and the balance thereafter.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 200000 200000 0 2100000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Over time (Engineered Steel Pressure Pipe)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">83,663</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">69,439</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">235,446</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">188,244</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Point in time (Precast Infrastructure and Engineered Systems)</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">39,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,204</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,391</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">42,522</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Net sales</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">122,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">84,643</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">350,837</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">230,766</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 83663000 69439000 235446000 188244000 39321000 15204000 115391000 42522000 122984000 84643000 350837000 230766000 1500000 6200000 295000000 0.25 0.52 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">12.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Income Taxes</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company files income tax returns in the United States Federal jurisdiction, in a limited number of foreign jurisdictions, and in many state jurisdictions. With few exceptions, the Company is <em style="font: inherit;">no</em> longer subject to United States Federal, state, or foreign income tax examinations for years before <em style="font: inherit;">2018.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company recorded income tax expense at an estimated effective income tax rate of 26.3% and 26.4% for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022,</em> respectively and 27.9% and 26.1% for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021,</em> respectively. The Company’s estimated effective income tax rates for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> and <em style="font: inherit;">2021</em> were primarily impacted by non-deductible permanent differences.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> 0.263 0.264 0.279 0.261 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">13.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Accumulated Other Comprehensive Loss</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table summarizes changes in the components of Accumulated other comprehensive loss (in thousands). All amounts are net of income tax:</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Pension Liability Adjustment</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Unrealized Loss on Foreign Currency Forward Contracts Designated as Cash Flow H</b></b><b><b>edges</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Unrealized Gain o</b></b><b><b>n Interest Rate S</b></b><b><b>wap Designated a</b></b><b><b>s Cash Flow H</b></b><b><b>edge</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Total</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Balances, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,487</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(195</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,682</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Other comprehensive income (loss) before reclassifications</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">61</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">(383</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">602</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">280</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Amounts reclassified from Accumulated other comprehensive loss</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">138</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">59</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">202</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net current period other comprehensive income (loss)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; text-align: right; border-top: 1px solid rgb(0, 0, 0);">66</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">(245</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">661</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">482</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Balances, September 30, 2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,421</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(440</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">661</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,200</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The following table provides additional detail about Accumulated other comprehensive loss components that were reclassified to the Condensed Consolidated Statements of Operations (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Amount reclassified from</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Affected line item</b></p> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 40%;"><b><b>Accumulated Other Comprehensive Loss</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>in the Condensed </b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%; text-align: center;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 14%;"><b><b>Three Months Ended</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 14%;"><b><b>Nine Months Ended</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>Consolidated</b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; width: 28%;"><b>Details about Accumulated Other</b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 14%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 14%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>Statements of </b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; border-bottom: 1px solid rgb(0, 0, 0); width: 28%;"><b>Comprehensive Loss Components</b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"><b><b>2022</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; border-bottom: 1px solid rgb(0, 0, 0); width: 20%;"><b>Operations</b></td></tr> <tr style="vertical-align: bottom;"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Pension liability adjustment:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net periodic pension cost:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 36pt; text-indent: -18pt;">Service cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(2</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(5</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Cost of sales</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(2</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Unrealized gain (loss) on foreign currency forward contracts:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gain (loss) on cash flow hedges</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">35</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(56</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(71</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net sales</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on cash flow hedges</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">-</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(127</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 9pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Property and equipment</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Associated income tax benefit</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">22</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">45</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 9pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Income tax expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">57</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(138</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(53</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unrealized gain (loss) on interest rate swap:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gain (loss) on cash flow hedge</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">4</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(78</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Interest expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Associated income tax (expense) benefit</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(1</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">19</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Income tax expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">3</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(59</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total reclassifications for the period</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">58</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(202</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(65</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><em style="font: inherit;"> </em></td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Pension Liability Adjustment</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Unrealized Loss on Foreign Currency Forward Contracts Designated as Cash Flow H</b></b><b><b>edges</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Unrealized Gain o</b></b><b><b>n Interest Rate S</b></b><b><b>wap Designated a</b></b><b><b>s Cash Flow H</b></b><b><b>edge</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Total</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Balances, December 31, 2021</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,487</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(195</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(1,682</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Other comprehensive income (loss) before reclassifications</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">61</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">(383</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">602</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">280</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Amounts reclassified from Accumulated other comprehensive loss</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">138</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">59</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%; text-align: right;">202</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Net current period other comprehensive income (loss)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; text-align: right; border-top: 1px solid rgb(0, 0, 0);">66</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">(245</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">661</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%; border-top: 1px solid rgb(0, 0, 0);"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 13%; border-top: 1px solid rgb(0, 0, 0); text-align: right;">482</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 13%;"> </td><td style="padding-bottom: 1px; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255); font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Balances, September 30, 2022</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,421</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(440</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 1%;">$</td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); width: 13%;">661</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(1,200</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td></tr> </tbody></table> -1487000 -195000 0 -1682000 61000 -383000 602000 280000 -5000 -138000 -59000 -202000 66000 -245000 661000 482000 -1421000 -440000 661000 -1200000 <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: &quot;Times New Roman&quot;, Times, serif; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 40%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>Amount reclassified from</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b>Affected line item</b></p> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="14" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 40%;"><b><b>Accumulated Other Comprehensive Loss</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>in the Condensed </b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%; text-align: center;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 14%;"><b><b>Three Months Ended</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 14%;"><b><b>Nine Months Ended</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>Consolidated</b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; width: 28%;"><b>Details about Accumulated Other</b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 14%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 14%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><b>Statements of </b></td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; border-bottom: 1px solid rgb(0, 0, 0); width: 28%;"><b>Comprehensive Loss Components</b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"><b><b>2022</b></b></td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; text-align: center; margin: 0pt;"><b><b><b>2021</b></b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; text-align: center; border-bottom: 1px solid rgb(0, 0, 0); width: 20%;"><b>Operations</b></td></tr> <tr style="vertical-align: bottom;"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Pension liability adjustment:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Net periodic pension cost:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 36pt; text-indent: -18pt;">Service cost</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(2</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(5</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Cost of sales</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); text-align: right;">(2</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(5</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(12</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Unrealized gain (loss) on foreign currency forward contracts:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gain (loss) on cash flow hedges</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">35</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(56</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">(71</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net sales</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Loss on cash flow hedges</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">-</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(127</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 9pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Property and equipment</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Associated income tax benefit</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">22</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">4</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">45</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">18</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 9pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Income tax expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">57</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(11</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(138</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">(53</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 1px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Unrealized gain (loss) on interest rate swap:</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Gain (loss) on cash flow hedge</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">4</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 10%;">(78</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Interest expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Associated income tax (expense) benefit</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(1</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">19</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt 0pt 0pt 9pt; text-indent: -9pt;"><em style="font: inherit;">Income tax expense</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">3</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> </td><td style="text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0); width: 10%;">(59</td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; width: 1%;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">-</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; width: 20%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;"><em style="font: inherit;">Net of tax</em></p> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 28%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 10%;"> </td><td style="width: 1%;"> </td><td style="width: 20%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 28%;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Total reclassifications for the period</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">58</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(15</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0); text-align: right;">(202</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;">)</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt;"> </td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 10%; text-align: right; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">(65</td><td style="width: 1%; font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; margin-left: 0pt; padding-bottom: 3px;"> <p style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; font-variant: normal; margin: 0pt;">)</p> </td><td style="font-family: &quot;Times New Roman&quot;, Times, serif; font-size: 10pt; width: 20%;"><em style="font: inherit;"> </em></td></tr> </tbody></table> -2000 -4000 -5000 -12000 -2000 -4000 -5000 -12000 35000 -15000 -56000 -71000 0 0 -127000 0 -22000 -4000 -45000 -18000 57000 -11000 -138000 -53000 4000 0 -78000 0 -1000 0 19000 0 3000 0 -59000 0 58000 -15000 -202000 -65000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">14.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Net Income per Share</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Basic net income per share is computed by dividing net income by the weighted-average number of shares of common stock outstanding during the period. Diluted net income per share is computed by giving effect to all potential shares of common stock, including stock options, RSUs, and PSAs, to the extent dilutive. Performance-based PSAs are considered dilutive when the related performance conditions have been met assuming the end of the reporting period represents the end of the performance period. In periods with a net loss, all potential shares of common stock are excluded from the computation of diluted net loss per share as the impact would be antidilutive.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">Net income per basic and diluted weighted-average common share outstanding was calculated as follows (in thousands, except per share amounts):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,956</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,946</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">23,188</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,252</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Basic weighted-average common shares outstanding</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,927</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,871</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,909</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,849</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Effect of potentially dilutive common shares <span style="font-size:8pt;">(1)</span></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">83</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">79</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Diluted weighted-average common shares outstanding</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,010</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,921</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,988</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,918</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1.00</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.34</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.94</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.99</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.32</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.93</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:0.9%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">(<em style="font: inherit;">1</em>)</p> </td><td style="vertical-align:top;width:45.4%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The weighted-average number of antidilutive shares <em style="font: inherit;">not</em> included in the computation of diluted net income per share was approximately 77,000 for the <em style="font: inherit;">three</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021.</em> There were no antidilutive shares for the <em style="font: inherit;">three</em> and <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2022</em> and the <em style="font: inherit;">nine</em> months ended <em style="font: inherit;"> September </em><em style="font: inherit;">30,</em> <em style="font: inherit;">2021.</em></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,956</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">4,946</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">23,188</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,252</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Basic weighted-average common shares outstanding</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,927</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,871</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,909</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">9,849</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Effect of potentially dilutive common shares <span style="font-size:8pt;">(1)</span></p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">83</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">79</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">69</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt; text-indent: -9pt;">Diluted weighted-average common shares outstanding</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">10,010</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,921</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,988</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 3px double rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">9,918</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net income per common share:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Basic</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">1.00</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.34</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.94</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Diluted</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.99</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.50</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">2.32</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">0.93</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 9956000 4946000 23188000 9252000 9927000 9871000 9909000 9849000 83000 50000 79000 69000 10010000 9921000 9988000 9918000 1.00 0.50 2.34 0.94 0.99 0.50 2.32 0.93 77000 0 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">15.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Segment Information</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The operating segments reported below are based on the nature of the products sold and the manufacturing process used by the Company and are the segments of the Company for which separate financial information is available and for which operating results are regularly evaluated by the Company’s chief operating decision maker, its Chief Executive Officer, to make decisions about resources to be allocated to the segment and assess its performance. Management evaluates segment performance based on gross profit. The Company does <em style="font: inherit;">not</em> allocate selling, general, and administrative expenses, interest, other non-operating income or expense items, or taxes to segments.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company’s Engineered Steel Pressure Pipe segment (SPP) manufactures large-diameter, high-pressure steel pipeline systems for use in water infrastructure applications, which are primarily related to drinking water systems. These products are also used for hydroelectric power systems, wastewater systems, and other applications. In addition, SPP makes products for industrial plant piping systems and certain structural applications. SPP has manufacturing facilities located in Adelanto and Tracy, California; St. Louis, Missouri; Portland, Oregon; Saginaw, Texas; Parkersburg, West Virginia; and San Luis Río Colorado, Mexico.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">The Company’s Precast Infrastructure and Engineered Systems segment (Precast) manufactures high-quality precast and reinforced concrete products, including manholes, box culverts, vaults, catch basins, oil water separators, pump lift stations, biofiltration, and other environmental and engineered solutions. Precast has manufacturing facilities located in Dallas, Houston, and San Antonio, Texas; and Orem, Salt Lake City, and St. George, Utah.</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;">The following table disaggregates revenue and gross profit based on the Company’s reportable segments (in thousands):</p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Engineered Steel Pressure Pipe</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">83,663</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">69,439</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">235,446</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">188,244</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Precast Infrastructure and Engineered Systems</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">39,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,204</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,391</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">42,522</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">122,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">84,643</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">350,837</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">230,766</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Gross profit:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Engineered Steel Pressure Pipe</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">14,196</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">8,844</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">32,490</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">22,613</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Precast Infrastructure and Engineered Systems</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,922</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,519</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">31,494</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,063</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,118</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,363</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">63,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">30,676</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <table border="0" cellpadding="0" cellspacing="0" class="finTable" style="width: 100%; font-size: 10pt; font-family: Times New Roman; text-indent: 0px;"><tbody><tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Three Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="6" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 17%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>Nine Months Ended September 30,</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom;"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2022</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td colspan="2" style="text-align: center; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0); width: 1%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:center;margin:0pt;"><b><b>2021</b></b></p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; padding-bottom: 1px; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Net sales:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Engineered Steel Pressure Pipe</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">83,663</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">69,439</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">235,446</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">188,244</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Precast Infrastructure and Engineered Systems</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">39,321</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">15,204</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">115,391</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">42,522</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">122,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">84,643</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">350,837</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">230,766</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="width: 36%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 1%;"> </td><td style="width: 13%;"> </td><td style="width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt;">Gross profit:</p> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 13%;"> </td><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 1%;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 9pt;">Engineered Steel Pressure Pipe</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">14,196</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">8,844</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">32,490</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt;">22,613</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(255, 255, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt; text-indent: -9pt;">Precast Infrastructure and Engineered Systems</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">10,922</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">3,519</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">31,494</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; border-bottom: 1px solid rgb(0, 0, 0);"> </td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 1px solid rgb(0, 0, 0);">8,063</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 1px; margin-left: 0pt;"> </td></tr> <tr style="vertical-align: bottom; background-color: rgb(204, 238, 255);"><td style="font-family: &quot;Times New Roman&quot;; font-size: 10pt; width: 36%;"> <p style="font-family: Times New Roman; font-size: 10pt; font-variant: normal; margin-top: 0pt; margin-bottom: 0pt; margin-left: 18pt;">Total</p> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">25,118</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">12,363</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">63,984</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt;"> </td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">$</td><td style="width: 13%; text-align: right; font-family: &quot;Times New Roman&quot;; font-size: 10pt; margin-left: 0pt; border-bottom: 3px double rgb(0, 0, 0);">30,676</td><td style="width: 1%; font-family: Times New Roman; font-size: 10pt; padding-bottom: 3px; margin-left: 0pt;"> </td></tr> </tbody></table> 83663000 69439000 235446000 188244000 39321000 15204000 115391000 42522000 122984000 84643000 350837000 230766000 14196000 8844000 32490000 22613000 10922000 3519000 31494000 8063000 25118000 12363000 63984000 30676000 <table border="0" cellpadding="0" cellspacing="0" style="font-family:Times New Roman;font-size:10pt;width:100%;margin-left:auto;margin-right:auto;"><tbody><tr><td style="vertical-align:top;width:5%;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b><em style="font: inherit;">16.</em></b></p> </td><td style="vertical-align:top;width:auto;"> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;margin:0pt;"><b>Recent Accounting and Reporting Developments</b></p> </td></tr> </tbody></table> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> <p style="font-family:Times New Roman;font-size:10pt;font-variant:normal;text-align:justify;margin:0pt;">There have been <em style="font: inherit;">no</em> developments to recently issued accounting standards, including the expected dates of adoption and estimated effects on the Company’s Condensed Consolidated Financial Statements and disclosures in Notes to Condensed Consolidated Financial Statements, from those disclosed in the Company’s <em style="font: inherit;">2021</em> Form <em style="font: inherit;">10‑K.</em></p> <p style="font-family:'Times New Roman';font-size:10pt;font-variant:normal;margin:0pt;"> </p> The number of PSAs disclosed in this table are at the target level of 100%. For the PSAs vested on March 31, 2022, the actual number of common shares that were issued was determined by multiplying the PSAs by a payout percentage based on the performance-based conditions achieved. The payout percentage was 141% for the 2020-2021 performance period and 93% for the 2021 performance period. There were no antidilutive shares for the years ended December 31, 2021, 2020 or 2019. EXCEL 73 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( +J :54'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 " "Z@&E5::_![^\ K @ $0 &1O8U!R;W!S+V-O&ULS9)1 M2\,P$,>_BN2]O:9%T=#E9<,G!<&!XEM(;EM8TX3DI-VWMXU;A^@'\#%W__SN M=W"M#D+[B"_1!XQD,=V,KNN3T&'%#D1! "1]0*=2.27ZJ;GST2F:GG$/0>FC MVB/4574'#DD910IF8!$6(I.MT4)'5.3C&6_T@@^?L M&$YCU\(5,,,(HTO?!30+,5?_Q.8.L'-R3'9)#<-0#DW.33MP>']^>LWK%K9/ MI'J-TZ]D!9T"KMAE\ENSWFP?F:RKNBXX+ZJ';&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" "Z@&E5)/"@H><% !'P & 'AL+W=OXBA1YXV%UNF[5DOY"QXS M=2I2GL O,R%CIN%4SELJE9P%>5 M4B4(8YZH4"1$\MEY M8^2^&WO4!.1W? WY2FT=$V/E08A'<5\;"09_EGS,H\@H03O^ M68LVRF>:P.WCC?IU;A[,/##%QR+Z%@9Z<=[H-TC 9RR+])U8_1 MRO\GJ^+>=KM!_$QI$:^#H05QF!1_V=.Z([8#G!T!=!U 7P6XNY[@K0.\W&C1 MLMS6)=-L>";%BDAS-ZB9@[QO\FAP$R8FC5,MX=<0XO3P4O@99$6341*0JT2' M^IG<)$5YF&YN$K5@DJNSEH:GF9B6OU:^*)3I#N4!^202O5"@&O#@97P+6EDV ME6Z:>D%1P2E/3XGGG!#J4&IISQ@/OQ7+4^*XMO 7S?'*GO-R/6]?SVUWUU\? MX2YRHWFL_K9U62'9MDN:5_:=2IG/SQOP3BHNE[PQ?/O&[3KO;7Y_D-@+]^W2 M?1M3'ZY+90P=(%D$?1#P)_(;?[:9QI4Y%5(O5EQI,@E33L;BU.84U:CIM%LZ[:(M'$$A!WDQ7T=L M;G.(Q\]8I&P=,T;#:IKJE:9Z:*/&F92YI5#Y4*+?.9-F+"(P3EJ3B*LUFRYM M>J[-)!I8TV2_--E'FU6.0FN7$RY#$9!KN&P=LW&U+Y[-'QI3T]^@]#?X7_[R M+.YTAVOMFC?0J)K^7*>:@)W#'-X_I]:ZW!/O.LTO-E=X6%U;6USA'F;K2\:D MYC(R VD*(Z'5(JZE968=7?"PNA9I99$>9G']TF&#RQZIDFUVP@TN4-=K!3LN M2A-;50H3H0ISV$'RB8OMG"[PN+HF*Z9Q#X*:ZS#BY#:+'[BTFMO#,TW:<]N. MU=XQ:,:M<,8]B&=N$E](R%Q.K"=DJJ%DB9# )1G '#"=".PEC*M_OK-:/@;6 MN!77N#B8K"W?LR=R$T#YAK/0+T@=R2\N.?":3J?3&_3[5K_'(!ZW0AX7IY2U MWU$0@+HZV1R0?%GR.;'G%9>DCDMNK\B$R4"M MG7$,,G(K-')QFGG=&6-S!H5^+U:)M2-PN:\,7IQL:2V:,1Y;UVI%22Z.-J^M MEB_U1(IEF/CVQ..:WT96H\>@)5K1$L5IY[71B5 :L/#/,-TY;NU1'/2[_;;U M<\(Q (I6 $5QZ,FK=20YVVT,%_"ZUI<2CZIKJX(FBI/.1Y$O4Q8BP>;8/2+> MH/?V39\Z@_==VK&[/ 8NT0J7*$XX]Z$&AA SXM*?'WXA4^YG$O)IM8HKC44< MPW0UU<)_/"$IK'Z6+,HX^,"M]\F?UA]'0.C:(51% >=33+)U9._8,F<[_PLM$?H=C2]'%G7;GA@ M78<5-=&#J&GS :7@_#R5,*W85]Y[%+];OR"/\:BZ/BM:H@?1TDT"Z]-B/\&L MW]C&N-4GKKC+YS% B%8@1 \"(;.N P1WKL7QN+I&*_SQ<'K9Y''!(8^8/5QFM[UC8)!789"'$\QFB'TQ MNT_SK3;R.=, M8F9/*V.?Q#:K/NA4.OD:F;3=SD<#&@OA\?EML76UB:CJ;Y\ M[U41WWPU*/8;RZOE_NXHW]5L5;<7F\.?F"E>12(^@U#GM =/E\5^:W&B19IO M63X(K46<'RXX"[@T-\#O,R'TYL0\H-SU'OX'4$L#!!0 ( +J :562"L13 M+04 ,T5 8 >&PO=V]R:W-H965T&ULK5A;;]LV%/XK MA%<,+9!$O.B:.08:V]WZT"VHU^UQ8"S:%BJ)'DDGV;\?*2FR35)JNB4/L2A] MY_*=0QX>Y8TR!IZJLYL2-4E0&&, XJ6M23V;1Y=R=F4WY095&S.P'DH:JH^.>6E?SQ9H(FSR\^ M%]N=,B^"V71/MVS%U)?]G="CH->2%Q6K9<%K(-CF9O(>72]1:@0:Q!\%>Y0G MS\!0N>?\JQE\S&\FT'C$2K961@75/P]LSLK2:-)^_-TIG?0VC>#I\[/V#PUY M3>:>2C;GY9]%KG8WDW0"2F;_^"QP\()6!^DXE4G MK#VHBKK]I4]=($X$M!Z_ .X$L"T0#@B03H"\U$+8"80OM1!U @WUH.7>!&Y! M%9U-!7\$PJ"U-O/01+^1UO$J:C-15DKHKX664[,YKW.==I8#_21Y6>14Z<%* MZ1\]'Y0$? -^VS-!35XE>/NEIH>\T)AWX!)\62W VS?O@-Q1P20H:O#[CA\D MK7-Y =Z!TNX:H\&Z<^VV=0T/N$; )UZKG01+[6+ND5^,RV.0G*,6+HI$,"7).6SIPC"!21SW ML#.:84\S'*4YYU*9)3!(M16/3LQF27IBM67JHA*,4V@Q=5$XC=/("LC2 X,0 M9M#/-.J91J-,?Q9<2K 7?%,H']'(M1HAE%I$713")+93ZJ)BXDR/I8LB,$X& M$AKW-.-1FBN])Q7U]@)L6:VK6GD!='4"-->UM9#*E+D'!MC3WA1%7QABER", M(WMFNZ@HBK$5!1=$( HS*PH>@TF",W\4DCX*R6@4NHI>;W6-7O/*RS1Q#8=Z M>5I,752<0F0Q=4&$I"2RF'H,XBQ,_$S3GFDZSE3MF!AAF;I&+>_G'DAB,W0Q MD54#EBX$QP-K-NO)9:/D/M:*Z8U7C4W8S#%[F3E9]( 0LN>K!X1)9E6)S&=E7VH(A>IE;E M6_ILX@@/9!B=-&CH)?68U'D=X'ELGU#;D) ! MG@=YN:5T_]>2BEK787G'Q,ITT>_OS2ZT]F[!:+0E,V?*:[FG:W8ST8=&R<0# MF\Q^_ '%\"=?M_JJVA:OJFWY6MK.DW-L^M!XUW=+9;$&;_7Y)>=E287NB_0F MTIQRWGD3$[H-KSTG6TAR H%7D3TE71"^(G9?Y%65D>SL;V!^'KM!--X.+HKR M8$Z"WQ&$R.=69L?!AW+BX()T'+ =!Z]!,L#\V""B>'1EKMK#[,$OS]?4MGA5;HF/WBL;;U^/Z;&\>_//1[2>S M#"?V?/2@4J>]\^J"=JONU14.+<5C!XO&6]C3I3C&U].G0FCOVW,/3(?%(>Q# MN7NC#X7L'B XN9ZJF-@V]X(2K/FA5NV%0_^VOWM\W]RX6>]OT?4<>=XOS%UE M='ZB8EO4$I1LHTW!JT2[*MJ[PW:@^+ZY'+OG2O&J>=PQFC-A /K[ MAG/U/# &^AOV9C:'3 M/&37$S?M0Z,,'F$C9IE9<8B>]\1^?"B MI>J.'WXAE4'E 2.>RO(O.E18RT#13BJ>5<)P@HRRXR]^K!QQ)@ \_0).)>"T M!=QG!$:5P.BE&MQ*P'VI!J\2*$TWC[:7C@NPPHN9X X9W,07T!?J([MO_N KU#E*%?$[Z3F,5R9BHX8Z')C*KS7!_/XSQS MGA&ZY4PE$H5PKKA'/AB6GP[(F^";VD'.DX.NG4'"-+?BUM?J(Y:O+,$\JU6DBV[&,]M96L7 MXDZ<5JYV,>"+_E3U:R_X@UY8]AC;9Z7?56UY?LN(91?E69;5LK0+#QL*M /[G,Q0^1@EF6X)@XX!%C/ZX)=D#$7_V63Y(^=I/ M42=9H),LU$36B,NDCLODC>OE1&>0=)(%.LE"362-($WK($T'/YY[!CU$2O^! MB]T6>H34OQ 4ZJ^(1S_M9.JF"[U!L;K-O].NUCT8*;M M:M'%^'Z[6'0QDW&K6IAGP[6,B&TYU920>SNFCI.3>K>>G'XJYX6M_6O[:FGW M[ ?%I+4%XKGY6CO@2O%L_(Q(3@F MH@# ^PWGZFE1**CGSXM_ 5!+ P04 " "Z@&E5XV6<$Q,' "'' & M 'AL+W=O2]*^7R]P(O#@P_%XU:;!ZOU MU8X_BGNA/^[N%-RMCE;RHA)U4\@:*;&Y7KS#;V]H9 9TB+\+\=R,KI%QY4'* M3^;FM_QZ$1A&HA29-B8X_'L2-Z(LC27@\6]O=''\33-P?'VP_G/G/#CSP!MQ M(\M_BEQOKQ?) N5BP]M2?Y#/OXK>H8Y@)LNF^T3//398H*QMM*SZP<"@*NK] M?_ZY#\1H YG!I!^ /G: ;0?0#M']\PZMVZYYNLK)9^1,FBP9BZZV'2CP9NB M-M-XKQ5\6\ XO;Z1=0Z3(G($5XTLBYQKN'G/2UYG MT;PPUZ==,J)6J-[H0J M9(X^UKS-"P"^1I?HX_TM>G7Q&EV@HD9_;67;\#IOKE8:Z)D?664]E?=[*F2& MRKW8O4$T6"(2$.(8?N,??BLR&(Z[X?AT^ J" MNOS9&PC=!LP"?-OL>":N%[#"&J&>Q&+]XP\X#GYR>?>=C)WX2H^^4I_U]0UO MM@AF#67F0OS;%D^\!.>=L[@W%7>F3)5X6E,6Q%>KI[$W-HBD*3N"3EB&1Y:A ME^5?BN>BHRGU5BBH(ID H@^E:)8(/AK$2RA+7>)"@4.Y;!_TIBVA5F2R!6^0 MW*"+,$TZ&Q=10%WN[3E$(^:,IBR:^&>C(A+'H=O!Z.A@Y)\&66L%A:W/.1>[ MR/I=C!F)@PD]!RQ@F 5N?O&17^SE]UO]!$DA52&=J6;-D"4NHLRB$%(RS6 ;%+%P9H*3(\W$G\%2\Q+* M^KBRN @FUF\3%B3A- D=,)*0D2#W^$_P%TO4C^ @M 5)&^R_EYK*%F_E9ZJV.^:0ACJ>) MY((E43!3#/%(N;&7]2]2YL]%63JI83M[HR@(I]0<,!HG,UF.!^G$7K6"0J%Y M_5A 9>[#MT2UT$ZBQ&) 8THMH@Y82MGU4Z<'#<1^$3PXG8L'=T;; D$H;7>;!@%89FK68/^8;\ D75@G2,,L;)TE8V2J(83UDZ M!#"$_FZ&Y2" V*^ QS[L'$V'(,4DI%.:-HS$A+I9DD&UB%^U#HFX,Z*[%UPY M$;(S_(FM3"&S4M6)"F8T@@SR1?SR==H+G6-J"U7*QC/=4[5A<1BD9(;K:"OH MU[/W4L$8B"ML(6IDOC71SI2 3;"3KBU7#"=X6I@=L"1F\4PO3 95(V=4[1O3 MP):O-"!TNMI<,#I.EU.V@\P1O\S=BHV ),A146>R$DCSSS,\;1W#09J0*4\W M;"YA![4C_MW9OE"U MD[O7LKL)0,YCE_]OZ-3[00M)XNV>[K7,/FUEF0O5_/A#0C#[J=MNZ1?W89-7 M6;_YM.D[63OU?5!85CTC8G"$EV\"3#T+0H]\;(52YCV91!T?ZC92E5\$3EL)B14X*)I3"LA%9*M;F##D4/N."-GZZ^5XC[(Z9':H,_TC#Y# M=H-:S#D8^1Q,EREA2QH'W;I(EPD+EE',#M#>]>Z08_ =M@I&EN[%3HOJ 6K5 MX3"U ]Z*K'_:GY$N$9C:B>X?U?P;G1TLS] !;F%U;TU+V6>H$N0 MC9NXK?N7F%@JX83%R5QPA_: ?LTNN)DMED[*=@M VBMI@V8 T<22I.9WIP. MO0+U]PJ6_G9+\!N=B*PS=.?VWH5S;>]7H[=$YA7=[UP]%G4#/>(&!@9O&-A1 M^[=>^QLM=]V+HP>IM:RZRZW@0-X X/N-!('N;\R[J..[Q_5_4$L#!!0 ( M +J :55W6[YH+@, . * 8 >&PO=V]R:W-H965T&UL MI99=;YLP%(;_BH5VD4I=^ J05$FD-M6T74R*FG6[=L$)5HW-;--T_?4[-I2% ME.:CRT7PQWD/SVN.P=.MD(\J)T2CYX)Q-7-RK%[L%IAR9SZU8TLYGXI*,\K)4B)5%066?VX($]N9XSNO M W=TDVLSX,ZG)=Z0%='WY5)"SVVS9+0@7%'!D23KF7/M7RU\*[ 1/RG9JITV M,E8>A'@TG6_9S/$,$6$DU28%ALL361#&3";@^-TD==I[&N%N^S7[%VL>S#Q@ M11:"_:*9SF?.V$$96>.*Z3NQ_4H:0Y')EPJF[#_:-K&>@])*:5$T8B H**^O M^+E9B!V!/WI'$#2"X%1!V A":[0FL[9NL<;SJ11;)$TT9#,-NS96#6XH-X]Q MI27,4M#I^4+P#!X*R1"TE& TPQHZ-YAAGA*T,HD5&BPJ*0G7:$DD%1FZY[C* M* 1>H,$2FYF<:)IBIB[09W2_ND6#3Q?H$Z(<_)0J\(.B1+P[+;TD*/(F2?O)1 M2SXZ2+Z$34R@U#($E9\^7J(22_2$6470 (HI$XQAJ5!)X$V40^%=]#FH;Y'L MH'E#S]_C/Q+4H8]:^N@\>LNH$*YT+B1]@0GCHA[M1:_S1YU5K7][^"<$=BS$ MK87X0Q:H4M5Q_/@-U3[WH8@.<-(")Q\"AD^6TE#OE&^.42='J0]%=*C'+?7X M(/5"% 7LQ_\H\O$I17XDJ(,^:=$G9Z"?7>&3MX4;]5;X"8$=?M_[]\GSSG=P M6H$WF7>I)I,@">-]^K[ <>)%\3LO2'_G@^V?3W]&M3?I3[#0$]AKP=TY?IBS MWWR)Y$!K.-[:9PQ&42!, \VLA]&O'''+: M0^W\+U!+ P04 " "Z@&E5=''O&?<. .WP & 'AL+W=OL7;1,#'$',=^=-1^WG? [D4,\1/4_.IY?UYH_M0YIF MTO?'Y6K[^>HARYY^O;G9WCVDC\GVE_53NLK_Y]MZ\YAD^=/-_?OZ7+]\OE*OGI] M8;*X?\AV+]S/Z6J[6*^D3?KM\]5O\J^QVM\U MV$?\QR)]V;Y[+.U.Y>MZ_/7W5C?_+YR7Q-MNF7]?(_%_/LX?/5X$J:I]^2YV4V6;^,T\,) M]7;>W7JYW?\KO1QB.U?2W?,V6S\>&N='\+A8_?B9?#_\(MXUZ'9/-% .#912 M@][@1 /UT$ M]S \T:![:- M]W"J0>_0H%=JH"@G&FB'!EJY!^U$@_ZA0;_4 MH'_JUSHX-!B4&FCRB0;#0X-AN8=3#>3.Z\AU2DW44T,GOPUV>;1[)R^/U^&6 MR^.MG>SE=<#E\HCW>J>:O ZY7!YS[623UT&7*Z-^ZD*47X==+H_[R0M%?AUX MN3SRZJE+17X=>KD\]DK_5)/7P9?+HZ^>:J*\CKY2'OW=KU_. MV">849(EMY\VZQ=ILXO/O=V#?9;:M\_SRF*U2ZC3;)/_[R)OE]U^6:_F>7I, MYU+^:+M>+N9)EC^99OF//&]F6VG]+7^VOOOC8;V5ID^?.:KD:7=#5)LWR.RW^_>K)9+5;WV[H>](M.)OAB2;]EV6;Q M]3E+OBY3*5OGI[7)A[*N+^."O@2,6<_D4V ^P:TD_?O=0[*Z3Z7\A9=D,V\_ MT../=G39H%L?[;;5!6!_^"0ONQB<#_8K(-UZTEIEZ2;=9M(D3SO2]"5Y:G]) M>)=W<=G%X%_>8:O+(/C B5UV 807]RC HGKLW.&=U#.7#>&T'FTU3+.& [QL M*.)Z=;;.S[#8["9_!_#V-D!Y>QN@[)WN">?W),_L=^E6^BG_Q6T?\L/:_BPE MF31*[WZ15/GODM)1.J+9O);=W0W^NGU*[M+/5_GMWC;=_)E>W?[KO\A:Y]]% MLS>)C4A,)S&#Q$P2&Y.816(VB3DDYI*81V(^B04D%I)8] /K[;'=YT=_W@X' MG5Y7[7^Z^?/]!$)V.B6Q&8G%$%:81M2W:40]9QHY:^:HE=K.'"0V(C&=Q P2 M,TEL3&(6B=DDYI"82V(>B?DD%I!82&+1#TPKS!RE2:,:(BMJ1U:+85-!6'>@ M#N1BV*P:=BT/-*T8%5>C%&VH*<>P0F[NON7F;FUN]M-,6JSNUH^I*!O7MFV; MC4EL1&(ZB1DD9I+8F,0L$K-)S"$QE\0\$O-)+""QD,2B;N5]?*>4C!LCIM6( MH=)32EFXD8D;F$+^[;WEWUYM_GW]#'VY2+XNEKMO4)+Y_SQOL]VW+**,W*O, M J6C_-(8,6J,T*L1@])]D]$<8M:>>=OD16(6B=DDYI"82V(>B?DD%I!82&(1 MB4U(;$IB,Q*+(:R0C;6W;*S59N-XM4F3Y>)_T[ETGRQ6TD_+]7;[LY3GY[MD M^R!]6^;<0SJ_3X7?8=?:;=\MD]B(Q'02,TC,U)HFMG%CA-4885/TVI0B9DU1L0-'16R\N M*P]JL[*UW3[O MO[%;?]MEY=U*G.U^)<[S:IYN#H\+Z?IIF:RV?Y=6:;9KDR7?I9=%]K!;'+I? M(/-N_8@HH]<>3=N,3F(C$M-)S" QD\3&)&:1F$UB#HFY).:1F$]B 8F%)!8- M*FE4Z\EJ.:N374Y);$9B,805YI[AV]PS_$OG'M%\4WL$;><;$AN1F$YB!HF9 M)#8F,8O$;!)S2,PE,8_$?!(+2"PDL6A871I2FFN&E1GI6I:U\BU$-:I\"]$8 M$8M[.K&P1.Z\)?)=F6)-)C^U>GR:/OTBJ9W]&D!9E)[KW;;Y&=5&J*:CFH%J M)JJ-4?%)+M9Y/2&V$:CJJ&:AFHMH8U2Q4LU'-0347U3Q4\U$M0+40 MU:*#5EAC/BQ/)7)ESI&5KC(H+S(7Q?7ZFEJ*FPGBKN5^I[S,7!"F##IJ9WCB M=D Y9NS+BDGMYU5#^D:K25%MA&HZJAFH9J+:&-4L5+-1S4$U%]4\5/-1+4"U M$-4B651<*KP=0*M+46V&:C&E%2>78X6I?':):?-\@M:8HMH(U714,U#-1+4Q MJEFH9J.:@VHNJGFHYJ-:@&HAJD6RH.2T&_FHQ=7WA:W[AUCB:U$:KIJ&:@FHEJ M8U2S4,U&-0?57%3S4,U'M0#50E2+#EI=(6ISR%00TAUVM7)N;H3B)JB8E8_5 MJ#);CGK@:H[T2W/(J#E$%X0HI2G2."/&K#__UBD-K4I%-1O5'%1S4ZCFHUJ :F'S$$5HAQ-4FZ+:#-5B2BNFX6/E MJLR7KM:3K9,O6KR*:CJJ&:AFHMH8U2Q4LU'-0347U3Q4\U$M0+40U2*YN915 MKI:8]H;E=>B"H/)"].:0N*&K8J8^5K/*]>6LER]$1PM346V$:CJJ&:AFHMH8 MU2Q4LU'-0347U3Q4\U$M0+40U2*Y6J=Z8N4)6JJ*:C-4BRFM.+D=;NEV0!!W+6N#$A<+PO);$/7=74@Q8RO'C%U?EUJ_ M$+V^<>LYERFYFRNYFRFYGRNYGRFYHRNYHRFYIRNYIRFYJRNYJRFYKRNYK MRFYL6BT^+7]CVQPR%80HJCP8E)-SHQ0W2L6\?"SI5.I+.MLN15>JE4KEI>C- M(:/F$%T04MZLSS@CQJP__]9)#:V 1#4;U1Q4C/[84O1YO_=Z:U$:HIJ.:@6KF0:M;BMX<8C6'V(*0 M:Z5;7HQ^5I1[B*I9MN8UA_C-(8$@1--*?ZHU%!QS)2A"1VV":E-4FZ%:3&G% M%'>LB%3J*R(O6>9=3[9.;*0V0C4=U0Q4,U%MC&H6JMFHYJ":BVH>JOFH%J!: MB&J1TKCG[T015$]W^^5UWH*H\CKOYI"XJ:]BKCY61BKUE9%_];Y%]8?3.L^C MM92HIJ.:@6HFJHU1S4(U&]4<5'-1S4,U']4"5 M1+5*JY:8]K3]4R[D>+1)% MM1FJQ916G)&.1:)*?9'H7[&;4?TAM)Z%T*)25--1S4 U$]7&J&:AFHUJ#JJY MJ.:AFH]J :J%J!8IS46E2K72\WK0*R\I%T15[C::JTJ;^BKF]F-9J?+QLE)% MF+#1LE)4&Z&:CFH&JIFH-D8U"]5L5'-0S44U#]5\5 M0+42U2!&4E0Z5OEK^ M<[ 3M-LIJLU0+::TXN1R+"M5+BHK%<\G:%DIJHU034H?-!?%#=3.4"G?"(C*2I5.Y6:@&J9V M!MJI+Q_48UFI>EE9Z?O]*(3IN]YMF[Y1;81J.JH9J&:BVAC5+%2S4R4O7LLM+F^00M*T6U$:KI MJ&:@FHEJ8U2S4,U&-0?57%3S4,U'M0#50E2+U#/*2E5A66E/+B] $L7U55DM M[Z$AB+N6!YU2@5,L"%.&VK#;/7$[H!PS]D?*2NL;M\[1:%DIJNFH9J":B6IC M5+-0S48U!]5<5/-0S4>U -5"5(O4YK+2YI"I(&0X[%5RLJP-RY\9-)>4-H?$37T5<_6QI%2M+RF]>)%WO=LZ8:.U MH:BFHYJ!:B:JC5'-0C4;U1Q4:CV?H%6>J*:CFH%J)JJ-4U54=U1CA(F]1G&B1MR!.M,A;$"9VGI^0^ M]9+-_6*UE9;IM[QAYY=^/EEN%OL$P)!MRH4>.8DQV97KZBB!E.H+F8' +TNI4FIPJE:NSA30.%=*N1MX M7M]-*1/.>)BOS=1X*->&,P$S1?0Z3:GZ>@U<;D:.[SPNW+)58NR".QYF= 5S M,'?93.',K5!BEH+03 JB8#ERWOE7X<#*YP+_,=CHG3&QD2RDO+>3]_'(\:Q# MP"$R%H'BZP$FP+D%0C>^E)A.9=(J[HX?T?_)8\=8%E3#1/+_66R2D3-P2 Q+ MNN;F5F[^A3*>GL6+)-?YDVQ*6<\AT5H;F9;*Z$'*1/&FVS(/.PJ(4Z\0E K! MH4+W"85.J= YU4*W5.B>:J%7*N2ANT7L>>*FU-#Q4,D-458:T>P@SWZNC?EB MPO)D;A1^9:AGQA,I8JPZQ 1'6G(64X.3N<$7TL%H(I@ MT]:T&Y4.7A<.!D\XV"$W$I$U"='1N$9_VJS_ID'?Q615&0L>,W8=- +.(;L@ M'>\5";P@J/%G+;E6+[DFU MX(PN&+>_*(T_XPYB?^-7Q- M@6UF_W5W 0*6S-35J3#1STW8,^9A[ W=A]WD M_U1B^E.)L$EB+_9>%7NO,78\-/!($"3<1@D5*R"XL*$J;N1D(^1S.=DFV+1- ML+ EL+VZ]*NZ]!OKP>>'L&QXI*VQ:R!F7&H\'9&E$=4*6V*:0!.(5Z),9 M6ACL[7#'[P8''.T?\6MPP-%CE$'G@*3'(';+K&/I996-R\9LO!<&,,>&W.+I M2N8;FC7RLQ'LN?QL$VS:)EC8$MA>1095109_FI^#(]KX7?^ GXU./;<8QP8# M_X#N84L&BQR[.^UF"FJ5]_F:1'(M3-$Z5*O55>)=WD$?K%_[5Q._9GV*5X_B MIO #OKBWW%"U8D(3#DLTY5U/O@F5FOC/AC/+[9LQ>^X M^;&]5?9MW'C)Q8:76L@2*;Z\'%WA\QN:N@:5Q5^"W^O.,W)=64CYT[U\SB]' MD5/$"YX9YX+9?WM^PXO">;(Z_CTX'36_Z1IVGY^\?ZHZ;SNS8)K?R.)OD9OU MY2@=H9POV:XPW^3]'_S0H=CYRV2AJ[_H_F ;C5"VTT9N#HVM@HTHZ__LX1"( M3@/K!VY #@U(O\%DH $]-*!51VME5;<^,L/F%TK>(^6LK3?W4,6F:FU[(THW MC'=&V6^%;6?F-[+,[:#P'-DG+0N1,V-?[HS]9T?+:"27Z(;I-?ID1URCMS]* MMLN%M7F'SM"/NX_H[9MWZ T2)?J^ECO-REQ?C(U5YOR/LX.*ZUH%&5 Q0U]D M:=8:_6[5Y,?MQ[9'3;?(4[>N2=#A'=]^0#1ZCTA$"*#GYO3F.""'-E&FE3\Z M%&47P&45P*62&V2S4#$CRE4]C8417)]#8:O=3F"W+L7/]99E_')D>C M^:^_X>&]3G5W)V%(%)$X%)R/O\JZU(HLSDAD/=K-M.J[:N\.SGA.(TO1CO MN_I]JQF)26-TI"MN=,7!D;G*_[%)5L]T(VUARF29B8*CLA'L/G=OF1O$K9)[ M8>5/[AG,--GG@PR29*>5LB( M#L021RWIHJ# G:VJN(!M:152X)J[4+!*%OG#@DS'%'B_WQ,^TD. M6)W1.(KC 9DM//;-[#R>#@:]911.7[2V%3;O]"EK(1R$WTL7 M0Z_E[3@*+0IQF(6W.Y6MF4MCNZBP VH'SSQ6$Y'_NQ-;M\ $8^"CSE:A9$;Z MHP?8I9@,D(>T3"0G,!$<,D@M 1A)/.P 5C2:#"AM&4G"C&RRY9 @IXL&:(E) ME/9K$F27I&1@?T%:7!+RHORH%\HGY <)8OBE^?%:WHZCT-*8A&E\+95M8WMM M$Z1$[EN7*)E=W HP,8B/74PPCOK+6L!NDI!H8-!:.),PG+]9-C\>SC].DNL3 MUU77:-(OPY AB:<#,"$MFTF8S&7\P4LUJX#54%A;0),PH&\[ M07U&HP]=+V$!+F.:3(QRXU ",G43]U1ED169# M,Z#E, EO%K^S!W0OS'HMB[R:!XH7U5G>X?A"N]T:L@M+4[0G>PY.CE/W3,'G M=@3:-\9>%@)6&$^'\-12E82I6N,)JIB@5@"2?@("1F2H8- 6I#0,4@]/IXJF M %,Q24B?JJ =);.!V4Y;L-(P6&_6K%QQ)[G2[Y8LU8.;&GM6N)D"ZO9QF7A3 M'3 ZHY.$#AP\T!:J])D]Z)#4]VC!5Z(L7>#=2HPK(7-0O[_O)+-9?[8 5C3I M;A*/]7?.@\,X#.CG;O,25.XCCR:=0XB#Z1Z++P%(YT$5S-?95E)[JR^ MFL._4\ZS@]A]\8'V*WD[CD7+7/KL?KC:;L++?;1]VA* @0!VP'C2'T/?*(D' MBBIM(4Q/VR5GEF)VVZGJ,SOAKM2L=BV>CD87.VU;:EB^SUZKLH6M^/W,<0(&MM)=7OLUD M.ATJ:"V]:9C>+^K6\:+DN4ZEWK5).O-F&F#D'<&-.]>,&ZY6U>VK1M6A4'TU MUWS:W/!>5?>:O<^O\?E-?4_;NJFOC;\P9:NWMCU;6I?1A\3&6=4WL?6+D=OJ M,G,AC9&;ZG'-F9W%SL!^OY32/+VX'VCNP^?_ U!+ P04 " "Z@&E5!0VE MT>T$ "%"P & 'AL+W=OA M\:@*,:K-:#H>OQS52MML?B;?%GY^YMIHM,6%A]#6M?+;2S1NV8.BOUN\0F/8$<'XD7QF?4@V/!SOO+\7[L1EI0)>.?.' M+F)UGKW.H,!2M29^=9M?,?%YP?YR9X+\PB;M'6>0MR&Z.AD3@EK;[E_=)1U^ MQF":#*:"NPLD**]55/,S[S;@>3=YXX%0%6L"IRTG91D]K6JRB_//+B),X#E\ M\6ME]=^JT\H6<*F"#N!*6'@,:*.LG(TB!67349X"7'8!IO\1X U\[A!?3A]UN,1F""?C 4S'T^DC_DYZ!4[$W\DC"@2(#MYKJVRN ME8$ED46JO!B.\>W'\+6;SIT\F+\>S1\">]F!/'_,^ M/\S2 *Z<#<[H8I^TPUQQ[HYQ@FL=OI]/Q+-G);#+[!2B2 D,'E+9K:A7;EM3Z1-8S@ VIX.DT,?1?@+:E5R'Z M5C9 XUU!0W+/H.G@\XIK0UN(&P5DI-3-/AX/RHO'7K=W>8MYP,^%*6.N=%O%6F M%6G(7BX&FR.K>Q!):+&ST/L.I/M:>G2W% VN&8A)$UU*CJXJ-'K7 WN(3[P&J"BX_SY MCU89';>LLF2..7E"0YQSBD5BYQ[COG!F7> !_5' -&8C.L=]W8'"'ZUN.'>S MA)4\,S\&.Z ;QC_?>-4TA^[S+;$H$J%4G,3JFV"G!1MH]_XPH,G1OE=4;'C' M%1.D]N&[U5%J6')Y36VG?!#WVN:F+;!+4YZ[ENV/)/AA8X*[)9B;2N?5O;UX MAYZ* *5 HZ=K3O7^RAYKV&$%9L%U0(+ENW [&!PW>F6#DHN=4J6H.%>(%BC; M=$>R D-X5Y;=(2+]RW&HO"CU=&U,!J+?Y,5 -&3/$H/3T%K5%KH['"BZKO^7 MQ'LH)'.C?*8NX4J2IDQ4).N>I-:-(676:*D;C1&JV'00!/G]/)%LJ7S[ M,^+[<#F$#Q<7^_.&XO4$]@)+Y=;28:RW(XL)RH.-"=!#>[HC^J.'ZI&>4$$@,]M8>42PW+=+EJ$+DRY\L([;?_LO M -,A'+M?1P=/(Q)M+0] KD+2OWLE]5_[-^9%][3:;^\>J)_H\-%4;@9+,AT/ M7[W(P'>/OFX272,/K96+]&R38477$'K>0.NEHZ=&FG" _N4]_P=02P,$% M @ NH!I5:97K_G6!0 C@T !D !X;"]W;W)K&ULC5=M3]M($/XKHQ15=Y))'"A].-V'C;V)][!WW=TU M@?OU]\S:,0$"K83(OLS[/#,[/EP;>^UR*3W=EH5V1[W<^^K-8.#27);"]4TE M-6Z6QI;"8VM7 U=9*;+ 5!:#)(X/!J50NG=\&,[.[?&AJ7VAM#RWY.JR%/;N M5!9F?=0;]C8'7]4J]WPP.#ZLQ$I>2']5G5OL!IV43)52.V4T6;D\ZIT,WYR. MF3X0?%-R[;;6Q)XLC+GFS8?LJ!>S0;*0J6<) C\W\DP6!0N"&=];F;U.)3-N MKS?2WP??X_XK:-PQ;#+'Z&(6D9DF!WHRA8^4YX<7QHS9HL4T,:+X*K M@1O&*C?>[H-YW)["'_ *9U]B4;^TZ3%P5>R*I/HSBB)$Z2%^2-.G]'0=[H M!7\=>4/OX:-.E2CHP@LO@3/O=OG;B!OO%L MQ&]?,';<&3M^2?KQKIS0.^72PKC:2OK[4MYZ.BU,>OW/+MM?E+[;]J2_$PGT M!7^I-PMI:1*2,8S(YU9*NLPE+4V!ZE9Z15XL"MF6N/J/0XWKJK9ICM*AU*": M,VD;F4)GM!3*THTH:DEF&8B%<]([E.OW6EF9!:I"B84JE%<0B/NZY'/''(^, MHI.&^TRX/'"FO) 0!1V<8MJC9#JC2RLR&0@,=%JTEU2"!+8[&@ZC>#2F#_H& M#,:RSF$23:R$BHC>8N>Z-B63D RYVOT2NOOPC'KK!A5-(OBZ0%]J8+; M"%$A.126V\6^6>[7KO-Y,HM&\1":O= KQ8%L+T8P*8[IG5Q*RS%1.C6E1+!O M8<1H/*5+XX'DQZ$;)DDTC!/ZN!6^DS0U-0>B$GC@R)EFJ %YTGF%UBZW@>C:ZT:X4\&H#$01>K// MPY6\3;E"GO& ]=FLP>BJ=;T/:)+ E<-[P<@5619$(Q!*-Z\K\YJ%QU,*WJRV MH:"@K43@4>\!3B$AXW*^:Y0=CO$IRCS M2NB[>ZMWJT&_=^55S_I'44M)[SO>WT'A^^:#I3@KK?@U+GYO:02ZV M9^$!#OVA".EQN:K0#N)^#)@.Y]$,5=GT$BW*MB%XWL.AZY9P'AV ZAPFL$O) M$$=#E$U,IR*]+LR*XOX!\;ZIBJ?.0DH"=6T3Z&I)6 /D+:TIGR27X:4#>PDY M69B, +$4&4?O$LU(!:+*FJQ.&8YH+$B(BX('I= 8R#C;KU_-DN'TK8-5&6)A M[^A:F_5^;M8-I0(<)(L(]D(%]R0NBPJVN2;=&WRA:=6A>R% VHEF*DN-\Z%: M#=YB3E);8LH]=F@O#AKWXOX0@U!1!!#_)!2C%Z_QE%UI4:,PK3MJ!)!"[6ZF6@I/*2>Z@;)VIE!9\*PI_0[4F["@/-73\@31.2!T=7%" MN4##2MO8X>I/H6O6A+X;G-I,7,0C%WUF%Q\>/75XU]%G? $XP0\@D!U/HM%X MPH_E; 343<)M^^HDT7@ZY2',[4K'@]<7W;#%O:"40-919T%AXJ[!CC- MH,# 8>^180;<_:20&9BFC=_R_^'N?K5K]!ILS ;_;JP( + % 9 >&PO M=V]R:W-H965TA0--WZ,.Q!L9E8J"QYDMRT?S_*=KT42/-B4Q1Y="CJ<+%7^M$4B!:>2R'- MTBNLK>9!8+("2V8&JD)).UNE2V9IJ7>!J32RO$DJ11"'X3@H&9=>NFA\MSI= MJ-H*+O%6@ZG+DNF7%0JU7WJ1]^JXX[O".D>0+BJVPS7:G]6MIE70H^2\1&FX MDJ!QN_0NHODJW-@@ZMDH]2C6USG2R]TA%!@9AT"H]\3?D4A'!#1 M^-MA>OV1+O'0?D6_:FJG6C;,X%E"JSUH M%TUHSFA*;;*)')>N*6NK:9=3GDU_*(LPA'.XED\HK=(X0=UW"RXQZSQ1XXG@CNWIS5K4 M=.\&SF 4^[-H1$:2^./9!!Y(N.=" Q65J'?-K'!744O;"JKW]N/HHE7A__!VEMTPO>/2@, MI8:#R<@#W&PO=V]R:W-H965T $$BE2=-TC-%&6C<&/ Q5ZX 'Q(.;7!,SQ\YL9]G^/6%%:=Q"F M\YH5N$;[HUYIVH4#2\XKE(8K"1JWB^!\ %RB$(R(9]SUG,(1TP/WUCOW*YTZY;)C!"R5^\=R6B^ T M@!RWK!'V1K5?L<]GYO@R)8S_0MOY3J]@"GT0N MN ?$7G<7R*N\9):E:EO%1PC768YA& M(XBC.#["-QURG'J^Z9$<#5@%5UPRF7$F8&V917I;UAS*MZ-+#M.Y-CDS-[JK UQRDPEE&HWP^Q8?+2R%RN[^'-)[ ME/&PWF0\5!QN2X0+5=5,/D')#/5:IC25$HJ=!Y>0*2G[3FJY+8%; YO&4"QC MJ+?N&VZXLQIO)H EUA51,6.)L5;:LHU ,%BX>Q_[J%G)9$&UZ=TSIO43EP6P M2C72@MH^2Z#YXWTD101Z(52^#>KAF0S9C. 2L]XV\;8)O(;9='1RFL U,G>A M3@#4J+G*@>5_J[O5CA;KP4\?0 M%5)276L.I\-@.^_Z^=F]FXK73!><+E7@EJ#1^,,L -U-FFYC5>V[>Z,LS0J_ M+&DXHW8.9-\J2JK?N ##N$__ 5!+ P04 " "Z@&E5 V8W9S$" #H! M&0 'AL+W=O#*$KRCBA=U+S #=+W>FV<%0TL MN:A06:$5&-PMV=7D\9K ME-(3.1E_>DXV'.F!A^L7]MN0N\MERRU>:_E3Y%0NV0<&.>YX(^E!MU^PSV?N M^3(M;?A"V\5.8P998TE7/=@IJ(3J_GS?W\,!8'[Q!B#I 4G0W1T45-YPXNG" MZ!:,CW9L?A%2#6@G3BA?E T9MRL M9M71)&_0?(1[K:BT\%GEF+_&1T[2H"MYT;5*3A)NL![#-!Y!$B?)";[ID.S13/48 1*$QQ++CKHO@I-$6;,0J8;15TC#MYAC*^Z[OT? MWKT!]]P40EF0N'/0>'PQ9V"ZN>H,TG7HY:TF-QEA6;JG"(T/K<&_Z MX7%+_P%02P,$% @ NH!I50SX(W)+!0 70P !D !X;"]W;W)K&ULI5=A;]LV$/TK![T?*CK,E68=]B"52O+MWCW>/S/G:NAM?,@>ZJROC M+WIE",W98.#SDFOE#VW#!E\6UM4J8.B6 ]\X5D4TJJM!-AP>#VJE36]V'N>^ MN-FY;4.E#7]QY-NZ5FYSR95=7_1&O>W$5[TL@TP,9N>-6O(UAU^;+PZCPCL\N)K(\+OFM>^[UWDDSFUM[(X%-QT1L*(*XX#^)!X;'B M]UQ5X@@P;CN?O5U(,=Q_WWK_$'-'+G/E^;VM?M-%*"]ZTQX5O%!M%;[:]4?N M\CD2?[FM?/RE=5H[/NY1WOI@Z\X8"&IMTE/==3SL&4R'3QADG4$6<:= $>65 M"FIV[NR:G*R&-WF)J49K@--&-N4Z.'S5L NS7VQ@.J8#^J"TH^^J:ID^L_*M M8U ?_/D@((JL'>2=Q\OD,7O"XRE]MB:4GGXR!19L\ZO.;F MD,;#/F7#+'O&WWB7\CCZ&S^3LJ=@Z8,VRN1:570=5'@ZW^1N\K@[Z9HSWZB< M+WIH"\]NQ;W9JQ>CX^';9\!.=F GSWF?[6W+E?9Y965G//W^C>\"758VO_GC M,?@K2('$DJEQ.F>\J8 &;*N"YHQNS1G-5@C+ MZ,"*%/K/>VB,==0H'3\$IXQ?L"-%E59S7>FPZ9,V6Z_8F@9[ XO:^D"J6"D3 M(!2V]>@ =P-O$*6X>N?[H2-$M:Y@5VU2,)648,YAS6RV3AKE@I98DBJR$(?U M??I4H#8.Z9N$:4-IG4:Q(#E:MKI _3"Q#VI>:30A[&EQ3U:IV2F7EYM$#W(2 M:_TG)^:T:=H0*U&6JX@M<%X:?=MB2>L3@1V6?C'-1B=O/2UV;1%I14ZFV!&K M(W8DH]R.I4)8VT,G8BLET#HG,2":J)K7<6.Q=_#FWYS1-QL0X6=><84S"=P973%J2$#DR .G14JQJ;#Y+VG&;] MTV&&Y]%PBM\#^F0"H_(#.6PN^;5J/$U/3O$E_4+QH>>&) %)DSDC2)YH_]*WJ0_AI&0.!T+X,GI*,'^ 7).A)F3YVB!]_%TS_MV M:_X7*)Z$!,<:X6#. M;^**N<5/W896TFQ1W/W4!@4:6,K_ML5Y4^S$1M321W&*]Y%N'D9Y!1AZH9.R M;ALCZ_KZ7Y,7*/J1JI8^A03J510M_Q#;"N(@21 MBP5T!3%4M?%;!8! 6]?8&,O.Y12)FG.OJJIFX$%JOLU+2>HAOHUFG!9(26 ) M_%UV\AEF,B?P'V,F\6(0*%?.;02\J@6P?[!]\85O6Z1?R5'63_L7OUF(G^N. M*D$N$?,\^6C41J;BC!.^]FJQWVV[B=Z*B!]?&T_>0'KM&#/:N?#6[9;S82@D# M?KK][69W=^=WZ&ULE5?;;MLX$/V5@1L4+9#U M/=S\\[%X/1R+/)1X$_-"[_V3)+)U-H[>;G.SSM] M"8A+SH)84+C]X+=:6"FIPYNR GTK F#S'5J(W@M!%2;H/#5PV],/ED ],1_4%7 M[/0/)1#1M?'!-4 ^>%(FIP^MG2SV7R,_R%GQ/Z M:$TH/+TS.>>;^CW$W 8^? S\Q^<&?R\L7@L/]F1[#C M-MCQ+NN3WR*+KK3/2NL;Q_3W5[X/=%G:[.Z?;4GM=+L]J:/N[]4.1"@43$:: MJJ3,-LXSV1E-&P]_WN_'SV]M52OS0-H3W]?616=EDH5$R 7P71C%-?$!T:+-0K#MZ^>)X.#AZXPGQ0W'^ M()9IUA:#T_X.C6J@I0*U 1=ZI](_5FP M6%@HEP,% [?9$K3-+/U"U;$R[6SF,:;%L40#6>\M@@OPV*;#LQF+'0"*5R ; MT0/W2!]SC%AE!<962QA'7]&GP$N+0F<;P)!GODO^IP%3GC+E"^"*BD6JP%EE MX- $83E@7PC/X8E[1UD^4&ZSQ]HH 2F7B9A"(\$IAP6SB4;%EGY22=$9XD1+ MHD0 ^ *C7.X: D_80:C_$4PEA%!?DZ MJ0,Y2<-Q6%_;CXL*9/K,Z3IN6M8@7R4WP;X73I:X'>@I5 M#2P1>CY"(P2MRB3R+Z[U3&?H"E>A9*M*A\2/= I*&Y4AM;B&9:(.=E'UJLU[ MW2X(?%)0,;15\:C2VU4%+>%!!4PM*EZ%%9 M[,B%$QSB/-YPG5MQCQU<0WE1 M "%VSZ*)[:K >^-C3[3L;N8$@0+;/>)I,7U";YI!D?0VO=B4ZV6<$EV9J*U; M8]'SAK!,0IQ8Y#B30OMFT&TR5W*:2U^^PHSWKR7?IX#*6NI'U+Z1S&00VE+G M<7:L]CGQ++@[+N3<%>.8N7<\0A820,^8%#B+">L)!I] WZ[O D D8.WI_?]N7:?T";N35R6RV*.#DQ-'B>7OZX+;#UTZ M7[>K[=_)13J4K\33K\U'Y>9"?\DSJ/:[1P<=#/WXNY!>@JWC$1TS#0?^^%C@ M#XN=".#[S.)TNGP1!^T_V^0_4$L#!!0 ( +J :553A7R2>@( (D% 9 M >&PO=V]R:W-H965TF:R57ID2 MT<);):29!J6U]448FJS$BIF!JE'23J%TQ2Q-]3(TM4:6>U EPCB*3L.*<1FD M$[_VI-.):JS@$I\TF*:JF'Z?H5#K:3 ,-@O/?%E:MQ"FDYHM<8[V1_VD:1;V M+#FO4!JN)&@LIL'5\&(V%LS@M1*_>&[+:3 .(,>"-<(^J_57[/R< M.+Y,">/_8=W&GD0!9(VQJNK I*#BLOVRM^X>M@#CSP!Q!XB][O8@K_*&699. MM%J#=M'$Y@;>JD>3."Y=4N96TRXGG$V_*8LPAF.86Y6M2B5RU.8+W+XTW+Y/ M0DM'N, PZ^AF+5W\"=TY/"AI2P.W,L?\(SXD:;V^>*-O%N\EG&,]@"0Z@CB* MXSU\2>\W\7S)'K\&K(([+IG,.!/DG%FD=V;-+K\MW6@WG2N9"U.S#*G@P/(TN]X@=]6)'^]C373D!G[$;;C*A3*,1?G_'-PLS0:%_=AG8>\1N M ^/!A^=P>#".AV>7&P%7]MB6>/S ](J:QF-1H.9R"8\2*%ETDPO4$+<).Z*G M^NY_4L'<\43GEPE9H)PF23>/1^>GR1DMOK;8Q&,IY?_140S84B.")!M;^YL' M,H!=MQYNE4>%>NF;@(%,-=*VE=*O]GWFJBVO?^%MDR+32RX-""P(&@W.3@+0 M;>&W$ZMJ7VP+9:ET_;"D7HG:!=!^H2A]W<0=T'??]"]02P,$% @ NH!I M50AK02[I!0 D X !D !X;"]W;W)K&ULC5== M<^(V%/TK=]CM3C+C!6R^LPDS2;9I^["93$AV'SI]$+; :HS$2@*2_OH>2<8Q M"= ^8"Q;.CKWZMPCZWRC])/).;?TO"BDN6CDUB[/6BV3YGS!3%,MN<2;F=(+ M9M'4\Y99:LXR/VA1M))VN]]:,"$;XW/_[$Z/S]7*%D+R.TUFM5@P_7+%"[6Y M:,2-[8-[,<^M>] :GR_9G$^X?5S>:;1:%4HF%EP:H21I/KMH7,9G5UW7WW?X M+OC&U.[)13)5ZLDU_L@N&FU'B!<\M0Z!X6_-KWE1."#0^%EB-JHIW<#Z_1;] MQL>.6*;,\&M5_!"9S2\:PP9E?,96A;U7F]]Y&4_/X:6J,/Y*F]"WVVM0NC)6 M+W0*_BF&PY7B5' 2=\V:1..Z*DG21'\#I5S!V/USD2 MLR&KZ$9()E/!"II89CFT9LV^> -<=S^<*YLSLV0IOVB@+@S7:]X8?_H0]]M? MCI#M5F2[Q]#'85VN_+K_]G$_BKZ?^ZAY M4 WTD'/_@,D7RIDA)7E9602MID\D9 I:KKTLF"38!O'%LE O'#EG,J-,:%2D MTB8B"S"WIAX%-C+8@4)S6::3*6%*S"GH'F5P<(L4XM#FH9&!% M_#G-7=8\);9A.C,>X>=*V!=T,%:OO (HA(U9W+1SI-I2!GD0-U; !_!NQH2F M-2M6W$&X;@&PN1/ MG_@OSOF?O(8TG$WN32T,D+.?:\=T!+HTX=A$@^^F#+# M)3%/"1T]P=T5>Y\J85[3B=#67'N,)=="(7$K[>;?Y"+-_?,JK4A5E56/@6QI M(*!XEEJM1<:WR7Z7XBHK+LR(H!4\G7%A5Q :J31=Z: 9HQ"$=J]Q&NL,:>/ MV?- !(BT23>OB[D1-G<1^9T**BR3L60OV(R )C/A<$O=[5'9^]EWE(" IVPJ M"B<7Y)VEN>#K[;K5YMV9RI,*63$A14MDTT^QLR3,J8%8]CJKO# 1?A^E.H45G[K>PIF/O MO5'@$M?NKDL;,*P N8_4'71QQ2MZ.!FR;J#LK_SH#N4>U: MI$[%$U^FCU+8LL1KVO!E2I=!L0\':_R-BY:U9H*=OG.L"$N$RH6&=FPE*BLZ M6)A;>^V^49RT2F,D1@9Z%#,!VG+E<^W2Z4B:8!/U'J\"A&8@OUT3/4X96E/"'+]<)L[:YT,@^6LS7_/\7<_"_%[O-1\-[2#IL7 M\GE&MU7\(2[:!G82G](/_WG'L\]TB:S@Q!T' 4%QWV(JA-#1IUV,^F_&>4S JPX[D=]Z!E]^L-#4Z0N3X4K MO6&4=(=TBEF:\?!-KW+H27)*)_UAU!O&Z)B,FLGH./6]Q=B.1DG7L1JVZ81B MOQ:O,O*C,V'20IFP!]L*_[QER)4NJHH?$NUS. MX9DS-^ILZ?S7,&..]+TR-IRW9C'.WW>[H9AQI4+'S=GBR\3Y2D6\^FDWS#VK M,AE5ICOH]=YT*Z5M:WB6UN[]\,S5T6C+]YY"757*/U^P<[P;*ZF_,CQK_F]QUMWC5+JBFW0SI+GR7EKU']_<2S[TX:_-2_#QC.))V/G MOLK+A_*\U1-";+B(@J#P9\&7;(P @<:W!K.U/E(,-Y]7Z#?)=_@R5H$OG?FB MRS@[;[UM4 MN'R6\HP.>!XJ.;K15 M<%(9>HPJ^V_:]$=M>?6H[.K# M23:UCIYF3)^OKO\D'2CP7'E$SCS3W+N%+L&,W()]D)(D-Z&%,[6- J+M@D/4 M4R4](?L27.T+I@(N>=1?ZA,ZBE_C9XHX!\[/E4VVSBP$?&/UU4]O!_V34[" MJVU:SG0Q(X5(3!S*ETM"ZVF@C9@*4%%[#RE); >]TWHNXH7TUC]%JS.,/A.$ MN%BJ2A(4PFN+;)6COVAC5,41VCZ@I_D.W;DD#,*RPE[J.$N;-_P!H*Q=H-XIV+M410/G 4*].31CU@\KQ%W0[\T_)OUE0._(B @$%S%!!QE MS.K@ -*$6 F9-MPI3%WNR-DF)9YH! 1&\%B@X+8D%+HPON[RHBM587S0*$"S M("FZ)G;W<#5:DX+Y7C]WDA5GE1S90W1.^ZV6RG. KB7?[TM)%],R49@")' MLX**SNA4>^(6IA#&I*1PB! 6&Y<89< M.0R/=#6N?4A]<"V:QVNI,X9*0G/9H5NW!(!O;U5)H>P:#(5:J6<: 5_$#5L. MX6(A52M:6(9[6)AMM)[L+O,59[BUH 844R(3C<[*61:#-6)DX M:T-1(.@YBBGWI,]%4<\3N,RM%[/;M)]&1=SE(&:@GM5-;0I:5$Y:9>+M^5NM M?1Y_;4*35&.CPPPQU"&G?XDRAZ)X5+[<%NHEF9!86O).]&0O4[7 %J-3UJ:F M)/';&\>F)^&T_1JN>M;JS-+!2,KDR;)YH\\Q?GWWA7,HGV@&^\JBKA5 MBN[R=SMWP5S:TW/*)%HHKT57U+M)2*KX7S0+HW0EB59KD2WYBJMP;.CNCANO M0QI.=5SU1.>!([5?.*FZU/4@S+C&1I39MLIRRX[XM]D)"DE#:8!J*E\B:ERZ M5%(^D9-@(-"UC) X4S%E&"*UK,,WUU3\MM['D0MH_9D [Y/',+4O,@! MZY]AP_\ 4$L#!!0 ( +J :54?]&D%#@8 " . 9 >&PO=V]R:W-H M965T$4)YT>_[M)!KX4]L*0UF#P;2_%LKTYI?Q MW<+-+VT5M#)RX:J-^RU+SZJ51'X17]^68J5O)/AMW+A\-3O MK&1J+8U7UI"3^57O>GAQ,^'U<<'O2F[\WIC8DZ6UG_GA77;5&S @J64:V(+ MS[V\E5JS(<#XTMCL=4?RQOUQ:_UM]!V^+(67MU;_H;)07/5F/8_2R@>[;C8#P5J9^E<\-''8VS ;/+-AU&P81=SU M01'E:Q'$_-+9#3E>#6L\B*[&W0"G#"?E+CC,*NP+\P\V2!H.Z4?Z*.^EJ>1E M/\ L3_;3QL1-;6+TC(ES>F]-*#R],9G,'N_O TZ':=1BNAD=-'@GRQ,:#Q(: M#4:C _;&G8_C:&]\P$=/P=);981)E=!T%T20X%;P3_E;FYL\;8[+Y,*7(I57 M/=2!E^Y>]N8O?QA.!Z\.@)UT8">'K,^;-%#N[)IN$5@'XH(4H:#;2 ?IZ,]/ M\B'0C;;IY[^>PG_PA*?Q#X17 H 6I0Z M_\+)%'A)F PR O36I=@+^ZF388?ZA'YJL28D!?#;G,(N%B]_F(V&9Z]\A\S7 M:5$8I$UJZDEHH2=!'I U[$L7Q=.DDBS KJ)_$2);Q_%KY6-D8-7X''ZTD$AY M,C;$O[O% O ;X]= ;K:GK_+,F&5C\O5CB\D/=P37/)P .*,\S$M#/ZG M?+*DHTS6HV.>X< :M#\O-/; RQ>#DQ&T5NO8-L":%T=X<]R]8FP\&* MEF:NSDS'W:2)DUC;RH0ZW.B16M;!CS:\RE BL4#WR$#RH:Q76="%P (5=&T= M)N5#6@BSDEW@=A5WC1*]%TY%+GQM'L=SEIG\^Y*465E7Q6OEQ0HLK0N*,[>O M8+G5N'$PIT.TGNU61VK4*Z$@31HH+RN&# MCT(J\APAKD4/B U4(Z6\$<@C!EC8RF.C/[Y )A[^WWY*PY^8%H>F&<*1Z+N MC7[M@G/TQJQ@0#*#[J+D+%@LF*T+D/287M!LG$RG8PRFY\ED?([!:'R:3"93 MC(:S63*:3&BQ'ULZ:BOBW6/^8T&9\/ M:3)*3@'X0U?0. [5>#Z;,*A),ITPJ/'I()F-SR*J07(VG>Y:[35$#YG@4W\! M+Y4&,V"FFQ?U?.D@,DYIYD]LHV97RE(X\TAJEU6MX>/!SH[>,[XS(;+[V"B6 MK#5FY6FO$Z) PQ;TBMV4:RFJ_"/2S]JNNM\N&G6MM8APHI/\ MG1'[U)--U1/?"Q 8M3)UBV\:-4>+=?Z[FV94XWB):F, MZ:F+87_OU@[Y7<5O$[Y 0"CJ"WSWMOO\N:YO_;OE];?3>^%6?.?0,L?6P&PO=V]R:W-H965T*C:%IFH)G0M),=A:-,"*V&'ND;%.[DVE2"> MFE5H:X,B\T%5&<91=!I60JH@F?JU.Y-,=4.E5'AGP#95)\$OBVNZ,P3E9 M:OWL)C?9+(B<("PQ)<<@^.\%+[$L'1'+^-=Q!OV1+G!WO&6_]M[9RU)8O-3E MD\RHF 5G 628BZ:D>[W^@9V?SXXOU:7UO[!NL>// :2-)5UUP:R@DJK]%YON M'G8"SJ)W N(N(/:ZVX.\RBM!(ID:O0;CT,SF!MZJCV9Q4KE'69#A7\JPVP_/F1-O;!X M*VP>'R5<8#V$<32 .(KC(WSCWNC8\XV/&+5 &JZE$BJ5HH0%"4).,#KHMZ6; M'*9SM7)N:Y'B+.!BL&A>,$@^?AB=1M^.B)WT8B?'V).WMX K:=-2V\8@_'[ M#<&\U.GSGT.*CW(>5CR*AWL/#P\%PJ6N:J%>(9U![8#D"HS$54 M[G3K:/ !4&$11?.G#J&ULC5=M;]LV$/XK!Z\8'*")+?DECI<82-QU+="F09)N'X9]H*63Q84B M59*.T_WZW5'TBQ8W"P)8)'5WO'ON[M'E?&WL@RL1/3Q52KN+3NE]/>WU7%9B M)=R)J5'3F\+82GC:VF7/U19%'I0JU4O[_7&O$E)W9N?A[,;.SLW**ZGQQH); M596PWZ]0F?5%)^EL#F[ELO1\T)N=UV*)=^B_UC>6=KVME5Q6J)TT&BP6%YW+ M9'HU9/D@\+O$M=M; T>R,.:!-Q_SBTZ?'4*%F6<+@AZ/.$>EV!"Y\2W:[&RO M9,7]]<;Z^Q [Q;(0#N=&_2%S7UYT)AW(L1 KY6_-^@/&>$9L+S/*A5]8-[+# MTPYD*^=-%97)@TKJYBF>(@Y["I/^#Q32J) &OYN+@I?OA!>SMP^G&X:OT18-W6)_ MH/\6TGZ:OF!OL 5@$.P-7@# @3?P7FJA,RD4W'D"@0K/'XRW,3<\;(Y[:.IJ MD>%%A[!S:!^Q,_OYIV3<_^4%9X=;9X+%0&'M=_D,09Z702WI*#60! MR/7:: 893-&ZP(0+LM8%BB_H!E6S;DD/[F M MZI8=>&X([HVG6KP2BJH2W5N2S[!:$#*#)!1_ F^@F[P=3D[A*"S/1F%QW)R/ M)REMOQS ,N+35:%L%DC,CL2OF1+.R4)F@NG2P3B![F R("/C?@KII ^7$>N= M+/E>6%.]+GTCXID)C,[8>;BF7&4!9 \U6FD.*[9]'8^AFPXYS#%Y-Z0(=_ 0 M+_B(3R2'B \!%? 9#OMAP:KA#7VWZ.!0U=;6/,J<UTGQQ;=^75?6L06D\,UFVR=M)Q_%^!R!_!J;FVGZS^[ M5N '_)OOD V)#MVP6^U!M>E_M>U_L>W_:2C"IOAD1HM&-#..7MT1^7X=,X2Y*<3BBHF" :Q(-2(7#?$1(RTSPY+9H=8V71O$:DGVU!/ M$:DGVU#/M"&4G4K&G%$P9Y0-]PQ&=&.X=S3FW],DWMXXMV&Y9WK']$>N,I,< MPXVED<\R5#H'_+:2=6#+2^<,?1XYA3N&)?K06$@/A/T0J#63R>:SQ&_QB5%% M&)V2^23@013 [@U>"XO<4*=EZG3$G/\' SE"T9Q.0C!;YMVX1813TQ=XC*6V8NC(>WG9$JY#"T5J>X-C":A@&(A,2.&Q9@/#@T* MO;T1KT*[#(,L&ULE59M M;]I($/XK(U]U2B4"MH$$;(3IX+7)EYT'F7'DS&-@DPT+8OBY1TJ5BGP0A^'5H!!2!8N9WWLTBYFN7"X5/AJP55$(\[;$7._F013L M-Y[D-G.\,5C,2K'%%;IOY:.AU:!%266!RDJMP.!F'MQ&-\L1RWN!/R7N;&<. M[,E:ZV=>W*?S(&1"F&/B&$'0\((?,,\9B&C\VV &K4E6[,[WZ)^\[^3+6EC\ MH/._9.JR>3 )(,6-J'+WI'>?L?%GS'B)SJW_PJZ6'<8!))5UNFB4B4$A53V* MUR8.'85)^!.%N%&(/>_:D&?Y43BQF!F] \/2A,83[ZK7)G)2<5)6SM"I)#VW M>- .(1K!)3Q0!=RK1!<(CVA@E0F#LX$C&RPY2!J\98T7_P1O"E^TJP_(&XMP7A/,/6X:''&YYQV(+3\$DJH1(I3BR_DA:H)VR MS\Q<#T4KR@H7L.JBK6A*,W-93E&2D4=$>IW)-G MH-YAG5 >+ZT,#PQ$QJ5.^_!1YM[LK_#:$B]2Q\V&N@!G7>0YE%0"RG'F3Q/H M,6Q>>?L-HY);B.W!T^H;?8D;/*YN:4:(3(U20H@4!6)&3:;/^?(-4R5XR4VC ME@=FF!"03-'0WEX>=ADJ#V0P%TR]/.BS0BJ]?<@HAK!&$B[(>6&IE>ZC@\2) M_*A!2FT<']0AXPU.-A7X]Z)=._OXWJMF:JD7N0R$CW2N+7O^"^'S7N(K1Y \ MV1A=>%-U6H3OQ:21=K+(V)T2TZ(K2Y+D/3F%I>LR+71%47U_ M U\S@WC4^X Z%[45+G5N7P]T$\^=='Q%XZ@W'?$8#WO1 M9.(/XG'3CE^6@*=_5=H12UB<[?#J5Z#'@1O8?) M$,8A7$_A:MK>S?_!(PI[811Z.IX(^43?:/)]AKL(-XV[[R#JAR$-87_,0]P? MCOQJ.FJI^.7T2":N-X=P 1%E[FR/ZE;=GK[2U$M\PG_(8=1O3A3G^T2*3^^3 MVJG?Q:#S8R_0;/WSA3L<55W]CV]WVQ?2;?TP.(C7SZLOPFPEM9 <-Z0:]J_' M 9CZR5(OG"[],V&M'3TZ_#2C5QX:%J#SC:9R:!9LH'TW+OX#4$L#!!0 ( M +J :541D7I&#P8 )P- 9 >&PO=V]R:W-H965T)$N^S<1.>IE)4D^W&79[;-FAEZ,8)W]:U=(]7 MI.WN8I2.]@N?U68;>&%R>=[(#=U2^*6Y<;B;#"B5JLEX98UPM+X8O4U/KPJV MCP:_*MKYHVO!F:RLO>.;GZJ+T90)D:8R,(+$WSU=D]8,!!I_]IBC(20['E_O MT;^/N2.7E?1T;?5OJ@K;B]%B)"I:RU:'SW;W(_7YS!BOM-K'7['K;(ML),K6 M!UOWSF!0*]/]RX>^#D<.B^D_.&2]0Q9Y=X$BRW*K@%RX_V4 BG8DWXI8V*'80/YFNU:C9^20@!!M.RA[NJH/+_@%N M*3Y:$[9>O#<554_])Z V\,OV_*ZR%P%OJ1F+?)J(;)IE+^#E0[YYQ,M?R->+ M8,7WRDA3*JG%;9"!.'7_7+X=7/$\'&^94]_(DBY&V!.>W#V-+E^_2N?3LQ?( M%@/9XB7TRWU+/E-C75!F(]XI7VKK6T?B]R_T$,25MN7='\\1?Q'Z>>+I;/R< M#,27+0F, 2.Q)ID656/'>%A*D>(-4 BX!+D8&)FK7\:YQMFI+N'FK M*R%-%5=K:=HUMF;K&!HV)7DO6D99/4:+:ULWTCQ&#P[!:P.%'GMO \IBMU7E M%A:-!%\2ZZ'/ZB@CY86\ETK+E::(?/ \)(JZ8&_[&-71IM72Z4=!]U*W,OR- MX.M7BRP].?.BW"I:'\%45*HXPVIY1RX1"I#7T>;] Y4M3R7Q\WJM2GX(9;+9 MX(3H*\Q2YF);5W;:78&S1N,C"]P?E:0KD_=<10X$%C%K4])8?)0&@S::[;/P M@^.1Y:&-&VQ+75GX&AN.%X<2O#<;Z(T<0&X#D18WX!]5>Z.: M ]=O;V]NOCN2 !!1XPV]J92L*7 ]MIBJ;YJ]MX]@#3!8S\(_8J'VL7F0##HL M=LC)<:N=],&U$57(IM&JC)WW2=]F;FKC%-Y$"DUUI/?%K*#$.^Y;!]7'B,G[ M(Q6SO]3>=EIE!MO'RMGXNG&J%(W=';P1%'3H"6(26V71._>$X!A;3\BJ4GR7 M")0H*L(?0G,P92J\'!SKNM&2VZ>:N#G[DC V!!7P6A;[0L#V:2#&WDK_U2;$ ME=*(SMWH-0:0MQ5Q'!N1OSA9/B;B6FH%,D;),_1Y+#[85B&OC\JS6-69N,%\ M@%>5B)^Q@:R!F80RY"X1F%[2PT(Z; J_:MTF$;^1#^)7Y6#"D!SI5AKQ :CB M\^M767YR9J$U;9VL+.+0@RKM^%D%0G E2LYC[(D2 'DLSKY:@R![MZ]$&47X M9XMLPR/:T"$SE*,X5$I E=:4#IH=VH2-;DK=5EQ2H&VM)JRM[ ->Z_H>K<'= M/1\>\(\J0Y+8=8H%:I7>BZ^;8M9AM6GK1J#> ?W<2WFEL#%U<++3RD%09.Z5 MLX:3XJYCG0Y98P"WO0+V9?JO*GB'N2,1^$?+1Y,^)/?H+:1AE!WZRNOH>0T! M2QW$!YYIURA?[P&Q_$ X2E(B?@ERV_5P;3'4=AP\Q+E<*2\W&P@GSBE']V3: MKH7'8^GI.^=K'73OJ @WO#2^56R+# #EOSM%;$?TY.""MV #8:Q023Y[?.)A M\\)S/IOP3WIT]0D':B_1\]-_FX;?B$6>S.W M;4WH#L_#ZO#I\;8[<1_,N^^6CY+G%78)K>$Z'9_,1L)UWP+=3;!-/'^O;,!I M/EYN\?E$C@WP?&UQ)NUO.,#P07;Y%U!+ P04 " "Z@&E53K,6?%L" !6 M!0 &0 'AL+W=ODZ2TQT+0K-A0=@J;='H8]*#9C"Y4E3V(N^_M)LNME0!I@+[9(\1P>BJ(F M6VU>;85(L*NELE-6$357463S"FMN![I!Y796VM21% M8S2.!Y' M-1>*99/@FYMLHMI1 U*BNT H.K*;M)KF8C'Q\"O@GN+]^8[\/M;M:EMSBK9;?14'5E%TP*'#%UY*>]/8S M=O6<>;Y<2QN^L&UCS\<,\K4E77=@IZ 6JOWS77<.>X"+^!U V@'2H+M-%%3> M<>+9Q.@M&!_MV/PBE!K03IQ0OBD+,FY7.!QE7S4A)&/X"$^8HR*XR7.]5B14 M"5P5SMMH$ZP[W+@6-JXA9"<1N=R>( ;'CD("Z3A7BBNG*1QI?7#P,X=%+1WEVOT91AHBV$E.VU[[W]HW'3SLK? M\/;%>>2F%,J"Q)6#QH/S,P:FG>+6(-V$R5EJ_TN[2=(9/ MT#^EV1]02P,$% @ NH!I5?S="-X8! GPD !D !X;"]W;W)K&ULC59M;]LV$/XK!ZT86D")),JOG6T@3ILM0)(%3=I] M&/:!ELX6%TI422I._OV.E*)XJR?DBRT>[_V>N^-BK_2#*1 M/)6R,LN@L+;^ M&$4F*[#DYE356-'-5NF26SKJ761JC3SW0J6,6!Q/HI*+*E@M/.U6KQ:JL5)4 M>*O!-&7)]?,:I=HO@R1X(7P1N\(Z0K1:U'R'=VB_UK>:3E&O)1X9O O3GX!A?)1JD'=[C,ET'L'$*)F74:./T]XCE*Z121&]\[ MG4%OT@D>?K]HO_"Q4RP;;O!;R2:#XO(DBTG M$66=WG6KE_V/WCE;_EH_(Q]Y1]N+HF@TJO,/Z%-(X!!8S-J O M[0-/O;YT(' #;7S'PFNE1\>E7:M\-#7/8Z>0=D"-;5KAL3BD@M)$L;I M""ZK1Q)06C@2"Z?3%&XUUESD@$\T8PS17Q6PN;NFV:/MLR<[FS5- PNS,)Y. MX'>Z(I!6.Y!(70G:M=^)VIXT=."MU^-9F,8)6;:\V@F7H.XB)9?B&#[A%K7& M'$25J1+!\B=R(AU-X5Y9+E^XN4NT8TL8"Y.8P97@&R$I\^C*DJG&):+FS[X& M+(S9W)%U0R+R@'44QI/I#XX?')%XS4_ M3':''8+J-?];:3B7%,8;H3KHQG&H?C96T)@F'[X:W#82KD!L$2ZXT/"-RP;A M_64%S\BU^> _;:$:0]BBX[F?M!ZXTF?-%*(FG,:G,>4OF8^@8Y^&$N&[)!8<'EA IH7K&L.;9@U0[B$\GX,YMN<0/L"0MC,QUZ!PH MUZ0OUV2P7,>&1^CZ"OQ*HV*U:_WM(V30WO&ZW!<:L5\'X/8!W)#@?T@TX"V6 M&ZI!-^638Z0;>J<8[L8*E24>A^EH[$;0+*64C?UMU\LL'$VG;M P:N=CJ8P. MEB95?N>?!@9\-[?[LZ?VKX^S=NF^LK=/EVNN=Z(RU-!;$HU/IX1>W3X'VH-5 MM5_!&V4)9OZSH!<4:L= ]UM%VZ@[. /]FVSU#U!+ P04 " "Z@&E50^(@ M:I8" "#!0 &0 'AL+W=O!R3=8,G.F*I2TLE*Z9)9\1"$<$;7QI^/T^I(.N&_OV*^;V6F6)3-XJ<03+^QFYHT] M*'#%:F$?U/8;=O,,'5^NA&F^L&USTZ$'>6VL*CLP=5!RV?[9:[X!Q^ X@ M[@!QTW=;J.GRBEF63;7:@G;9Q.:,9M0&34L7OT,W@5LE[<; 5UE@\3\^H-;Z_N)= M?_/X*.$"JS,8A#[$81P?X1OT\PX:OL&1>0VT\QT:KT4GA]%.(>>F8CG./)* M0?V"7O;Q0Y2&7X[TEO2])CL2L]\=-A!(<.(-@3 M1HEZW;IE>.554C MLZ6R)-K&W- KB=HET/I*T=7K'%>@?W>SOU!+ P04 " "Z@&E5]"0.^E(" M H!0 &0 'AL+W=O$E5TAVO4 MWZJ5-)'7LV2LP%(Q48+$;4QN1O-%:/-=PG>&C3H9@W6R$>+)!E^RF/A6$'), MM66@YO>,M\BY)3(R_G2 @0=('"ZVXV< MRCNJ:1))T8"TV8;-#IQ5AS;B6&DO9:VE664&IY.O0B.$\!8^"9$UC'.X>J0; MCNHZ\K3AMUE>VG$M6J[@!:[WL!2ESA5\+#/,_L=[1E%YM&V/N:IHBC$Q]:]0/B-)WKP:3?T/ M%[2%O;;P$GNR-NV6U1Q!;(]W\=-IA4?<:UAPD3[].B?[(O%YV8<=!G"'*18; ME# >N7,>P6N8C ?360A+I*J6:%I00X62B0QH]MO4I)NYY86Z>,I0VP:QOA3'5!7:#_G%,_@%0 M2P,$% @ NH!I58$OJ+(- P 8@< !D !X;"]W;W)K&ULI55M3]LP$/XKIPQ-(!7R5DK;M94H# T))@2,?9CVP4VNK85C M9[9#X=_O[*2A0UW%M"\YO]USSW,7GT7_@@>/*;(S!*9DI]>@FE_DXB!PA%)A9A\#(/.$9"N& B,:O!C-H0SK'S?$: M_<)K)RTS9O!,B>\\M\MQT \@QSFKA+U5JR_8Z#EV>)D2QG]AU9R- L@J8U71 M.!.#@LO:LN4.ZMI MEY.?G7Q5%J$'AW#!N(8')BJ$:V2FTDBIMP;V[]E,H#D8A9;".:G J3%(56$RARO.9EQPRTE$4[(_Q:S2FLL%3)GA!GYXA7"/SQ:F M0F6//[>)W4EGN]A[99F *WQ" 7%CD\:FQ-1QIYI9+&:HV\+!!9=,9IQI@*Z9=$&DU=0,#<2=.4CJZMK6@^1M^+B9Q M2#8X))UCS^EP0XQX+@ZXY>3ZPJ?1>= M*4L]V0^7] BB=@=H?ZZHFS03%Z!]5B>_ 5!+ P04 " "Z@&E5X0P)#K4" M #Q!0 &0 'AL+W=O7$]W628<'TN2Q1T,U:JH(9VJJ-KTN%+'6@(O?# M(!CZ!>/"BZ?N;*'BJ:Q,S@4N%.BJ*)AZF6,NZYG7\UX/'O@F,_; CZ@:6+Y&Y=B/4S=MAY$%2:2.+%DP>%%PT,]NU<=@#C()W &$+")W? MC2'GY34S+)XJ68.RKXG-+IQ4AR;GN+!)>32*;CGA3'PO#<(%?(9K5'S+;(C@ M5FBC*HJ\T8;KC8P*6-(#<<-9PLV2I'?3KU#3EAJ?RD-3AO#(;O&!S# MG10FT_!5I)B^Q?OD?*<@?%4P#X\2/F)Y#OW@#,(@#(_P];N(]!U?_TA$-#3Z M#LEKT-%AM*VAB2Y9@C./BD2CVJ(7?_K0&P9?CO@6=;Y%Q]CCPTDZ@^]4?7#R M0VI]"G^X/%"I5+P#VQ'+NW";)# M;V]%I46%(^BK*X4B>0'J,S53*23$HZAF]03NJ3=I1NF CS 8CVGL10,:1U&/ MQBB"A:(FIC,H^H/NUI&_< M;JR!KLO'_P!02P,$% @ NH!I57UB%GQP P ^@< !D !X;"]W;W)K M&ULC57;;N,V$/V5@5H4#J!8%UNRG-H&[&1WVX<- MC#C9?2CZ0$MCB8@DJB0=)_WZ#BE%]2Z\PCZ(UYG#,W/$X>(DY+,J$#6\5F6M MEDZA=7/C>2HML&)J+!JL:><@9,4T367NJ48BRZQ357JA[\=>Q7CMK!9V;2M7 M"W'4):]Q*T$=JXK)MPV6XK1T N=]X8'GA38+WFK1L!QWJ)^:K:29UZ-DO,): M<5&#Q,/260 MEJ4! M(AK_=)A.?Z1Q/!^_HW^TL5,L>Z;P5I1?>::+I9,XD.&!'4O]($Y_8!>/)9B* M4MD63IVM[T!Z5%I4G3,QJ'C=]NRUR\//.(2=0VAYMP=9EG=,L]5"BA-(8TUH M9F!#M=Y$CM=&E)V6M,O)3Z_NA4:8PS7L"B;QV@28P:VH2'3%;-Y&CVQ?HKI: M>)K.,UY>VF%O6NSP!]AS^"QJ72CX4&>8?>OO$<^>;/A.=A,. NZP&]C;7Y48U+,6E0_=!H7Q!9_7;+T'L_S[ M;=ISFPZAKUH]-E:/+7NC>Z!A+26K48'PN)^(VV0,IHK/8HK3SWA#*T;^0S37 V MNA5*@SB 8B0&_ K3V91:VJ(V"4T;)Q'AE$0Q=R''&B4K71L]R^AF<*4E,U<< ML,T,Q/,()O0%;AR9=A:%\"@H3006N$$\ISZ:S\PQ[G36]9,9#*@7]>I%P^I1 M\8,P@J" MV(U)>[*)DQ\=D9JDE;0\2MQPFL 5G3(.DN^L.M=1> 6C.'&C)"##<#X.Y\/4 M+_ZXOCL/IX95XE_\6;RS>ERAS.VK0TS-M6Q+<[_:/VSKMI[_;]Z^BI^9S'FM MH,0#N?KC&2DLVY>FG6C1V.J^%YK>"CLLZ'%&:0QH_R"HR'43R$ANF3D2+ MG$XV0C9,TU(6GFHELMR"FMH+?3_Q&E9Q)YW;O95,YZ+3=<5Q)4%U3$%UK4A(AE_!TYG#&F N_8K^U>; M.^6R9@HO1/VKRG6Y<*8.Y+AA7:WOQ/8;#OE,#%\F:F5'V/:^\<2!K%-:- .8 M%#05[V?V/-S##F#JOP,(!T!H=?>!K,I+IEDZEV(+TG@3FS%LJA9-XBIN'N5> M2SJM"*?36Z$1@@ ^PQT^(>\0CA[8ND9U//)+S']@0BWX70#\,#?-&8;&3YH@/)*NCSVY=>CX[W MHTUYG*F69;APZ/\KE$_HI)\^!(G_Y8"V>-06'V)/+RO%BD)BP>QO%9OQ07Y; MP?" SQJ6M<@>_^S3?I!]O_:'4B*^>3.@&]?8K%'::[\EED/GYEG,$.Q8WY_H M4%/=PM$5+X@ I<%IQ!I6%%IU$F%5M7@,'V$:N4D2D9',W#B:D1%&$S>.$[*" MZ=0-XQA6HN(:*CZ0$D?&E(9KOI$TRR[3AI'Q'';CO2C2J8XAFKD1J0HF;NC' M]-$G;C0+( [="0F^I::G&'T&$RX,W=DT-J)B-XF-J&CBN]/HU*KRW=,D@7WO M[.T47X.RL"U&028ZKOLZ''?'+G;>%^]_][X%WC!)&2BH<4-0_^24FH;LVTJ_ MT**UI;P6FAJ#-4OJQ"B- YUO!/WP86$"C+T]_0=02P,$% @ NH!I5M! L@L !D !X;"]W;W)K&ULC59M;R(W M$/XK(WJJB)0$=GD)20&)D-Z+=)>+0J[]4/6#V9UEW7C7G&U"TE_?&:_9P$&Y M" G\,B_/C&<>9KC6YM'FB Z>"U7:42-W;GG5:MDDQT+8<[W$DFXR;0KA:&L6 M+;LT*%*O5*A6W&[W6X6096,\]&=W9CS4*Z=DB7<&[*HHA'FY1J77HT;4V!S< MRT7N^* U'B[% F?HOBWO#.U:M954%EA:J4LPF(T:D^CJNL?R7N /B6N[M0:. M9*[U(V\^I:-&FP&APL2Q!4$_3SA%I=@0P?@>;#9JEZRXO=Y8?^]CIUCFPN)4 MJS]EZO)18]" %#.Q4NY>KS]BB,<#3+2R_AO60;;=@&1EG2Z",B$H9%G]BN>0 MA[F\#)DA]EY@S=2M)SXUOM$*(. MG,$D25;%2@F'*7QU.1J8ZH(>.N<7>$+XK*V%YH.8*[0GPY8CYVRBE01'UY6C M^'\<7<(77;KI,=+R] MSI%,6*CB.Q1>I=T]K,V]8]?&, M>C%=*02=P307Y8*0RO*G3_:I3'017NXO'QD\X+.#:Z63Q[\/!7D$]$ 1\!4XYRR^H'HAC04%)8#BG'#NY)#V:P%LL=.[!O M"!ZT$PJNA1)E@O:4Y!,LYI2Q3N0K*()WT(Q.NX,+./'+RYY?G%7G_4%,VRK' MR4Z.997CIJ*83V".Q)-(;)4H8:W,9"*8?"ST(VAV!ATRTF_'$ _:,"GTJJ0, MO,H2]LSH8N=9]0&7[ IZU+4#Z%TR>+@E]DY\DATLT4A]6'$7:[\/S;C+8?8) M79#D2*GWZE+O':VQ^Q]2!_1/ MPF7_QEI_6YD?A7"XEZOG.O1:64;_,+1C,R I;6^C4BIFNN)62.F8)!]R@[C# MDG#+)G=.2-QJ)5-O^P:=D,J"F'.2]KWNON(/.T>"W+C6D\H^/C[2I1?P[^^; MY'7UE>HLU/:&%E1-"Z*FA2M?FU5-RH06E6BB+5W-*+4R0;_C*HI#;54_O=") M?#IE"<)I!;%S)>C%O% EPGY(PHGG;=)8,&F$@B>_66"D9,-(66"D9,-(5Q7/ MO*HD3"494TE>45*G1QZ]WUZ?OR^BX+T"MR&_/;TS^A!4)I@SN#,T5QE.59D" M?E_)I2?1B;4ZD?X)0[-R/',L,9,.*/==H(Z-!IMRYUM\YJPB]"[(?.3S02"?5'/8J7DVS7X192,*D,"/5]OD%48ZI)L1JX_323V5S[6C& M\\N&PO=V]R:W-H965TL$-YLXO86:C:16\,+@0L%>EN63+W,DA""E"XGGH7X7@>6W_G\*/ G=Y;@U6RDO+1&C?9U LL(>28 M&HO :'K"2^3< A&-/PVFUUYI _?7K^A?G7;2LF(:+R7_660FGWHC#S) T0:[AF2A1BH]^JTH$YTT4*3&1P M5?"MP0Q^.2'P@,\&YERFC[\/:3IZZV%-#[E"?%=+H$H8+%=$QY;CCE".G=MR MV2'<6]EOK:B_M1-(.DE_0'/<26([1[U..!JY@Z@?-5IW[GEA=LZ>4%&W HN MZ55KFQ -U&ZTH7Q0HBQ>-*1Q- SM.DCL.D[@>KVF5F!36E'IA2D8YR^0V012 M8_@'\#0\@U$/^@$,$Q@D;9[_@T<8=((P<'0<$=)$8SC:5U]1DO81QHW<$PB[ M04!3T.W;*>KV8F[,&A;]#?ZQ(EJHWKA9JNWPI3-XQVMVVW M%W67>7.O>_4M4YM":."XIM"@.^Q[H.K^5QM&5J[GK*2A#N:6.?TR4%D'.E]+ M*D%CV O:G]#L+U!+ P04 " "Z@&E5>$]=7 ,# "\!@ &0 'AL+W=O M_->Z0XFAVU>;1[1 =/ M;=/9>;1WKK^-8UONL57V1O?8T9NM-JUR-#6[V/8&515 ;1/S),GB5M5=M)B% MM959S/3!-76'*P/VT+;*/"^QT<=YE$8O"_?U;N_\0KR8]6J':W1_]2M#LWAD MJ>H6.UOK#@QNY]';]'8I?7Y(^+O&HSV+P3O9:/WH)Q^J>91X0=A@Z3R#HN$+ MOL.F\40DX]\39S26],#S^(7]C^"=O&R4Q7>Z^517;C^/\@@JW*I#X^[U\3V> M_$P\7ZD;&YYP''*G(H+R8)UN3V!2T-;=,*JGTSZ< ?+D.P!^ O"@>R@45/ZF MG%K,C#Z"\=G$YH-@-:!)7-WY0UD[0V]KPKG%G78(Z03>P!IWM-D./G3#4?L] M^_E!;1JTO\QB1[4\(BY/O,N!EW^'MX"/NG-["[]W%5:O\3%I'(7R%Z%+?I5P MC?T-B(0!3SB_PB=&XR+PB2O&+0S^+MD;T/(RVE^56]NK$N<1W06+Y@M&BY]^ M2+/DURO:Y*A-7F-?K.GJ58<&06_'8[G'7AM7=[OS V*P>1XS/@3K:N7+OA[V!O'5>5+-WF&[01..Y(Y8KKWW1^8?Z5ET1PW'*MK\6X+L MB "-QSG$!E94VAX,PJKN$7Z$7+ L$Q1D!9.BH("+"9,RHRC-<\:E])A2V?#Y M&AK-H72>0775*_YG2[HLB(()$I%.&$\DI#2*(@7)V83T/6BG&D_-.2MRZ05( MEDDO0$P2EHMI4)"P:9;!GT9;"[W1V]K]!RNI9&GA=>#2!QN?=906 MS2[T30NE/G1N:"[CZMB:WPX=Z5OZT-<_*D.R+32X)6AR,YU$8(9>.4R<[D-_ MVFA'W2Z$>_J]H/$)]'ZKZ:J>)K[ ^,-:? 502P,$% @ NH!I55TL7P8> M @ DP0 !D !X;"]W;W)K&ULC51=<],P$/PK M&C_!#-2)DP;H.)YI6CKP$)II^'A6[+.MJ2P9Z1P'?CTGR3$!T@XOMDZZW=N5 M[YSVVCS:&@#9H9'*+J,:L;V*8YO7T'![H5M0=%)JTW"DT%2Q;0WPPH,:&2>3 MR2)NN%!1EOJ]C[)FSLE.ZT<7?"R6T<0) @DY M.@9.KSW<@)2.B&1\'SBCL:0#GJZ/['?>.WG9<0LW6GX3!=;+Z&W$"BAY)_%! M]Q]@\'/I^'(MK7^R/N0N%A'+.XNZ&<"DH!$JO/EAN(<3 /&V9<-K&YA;?JT21.*/=1MFCH5! .LT\:@4W9:W9O*J[$3Q[N2A5L MQ:VP3)=L8\""PG#RXA:0"VG99SA@Q^7+-$:2X)=Q">\%FDU^[78:J8G]LJ:_!AB70.>EIM8; E=@_ ]EOP!02P,$% M @ NH!I57)A_X:\ P ;0X !D !X;"]W;W)K&ULK5=M<]HX$/XK&E_GIIVAL3%@4@Z8"6\]9IJ62=+>AYO[H-@+Z&)+KB1# M^N]O)3L^ HZ'M/X"ULOS[&J?E;0:[H5\4%L 31Z3F*N1L]4Z';BN"K>04'4A M4N XLA8RH1J;AC#OCH>U;R?%09#IF'%:2J"Q)J/PQ M@5CL1T[;>>JX89NM-AWN>)C2#=R"_IJN)+;B<:Z%; +KG6N@5@-ZY@* M!#;V>;!LI&=4T_%0BCV19C:RF0\KET5C@!DWB76K)8XRQ.GQ9Z&!^.0]F60* MAY0B4Y'<,TZM[F]GH"F+%;F#1YW1^!U.7%'Y0.9\QZ3@F&&:QF3^/6.I^6Z1 M3Y^FY.]K2.Y!_H.3O][.R-LW[\@;PCBYVXI,41ZIH:O1=>. &Q9N3G(W_1?< M[)!KP?56H>$(H@K\K![_H0;O8LC*N/E/<9OXM82WD%Z0CMW MJY;S:];GOV9]40__$NH+XO6JX,]BV2ESL&/YNB_PE:EW%6(B*692KT56($.3 M7AL@8DV^"9-DBURLDM+9FZCW1BEW56HVBU5[=:JNJ(_S)&@B!9/8I6'#*@6 M^8RW)@H[I6I;BMDB=P(/E"I-:XV]5M,FR68Y67 0N0\>WNME]'*QFC2Y:(CL MF:Z]4M=>K:X?A8CV+(YQAV8RW.*MCO*%(N-V@UY%_^*E986O4K%W$JOVY7&H MIK7V7ZM.3M9[9M$_%J=)BXN&R)Z)$Y3B!.<=I0>W>.OP7"4W$%,-$4Y0U1(% M)P$[UBYL*A=[D\&LU\&L_\3P5Q)L6.FKL;"9\GS MTMX.+#E&&#L/=L.2AR))8]#0.M@9+23$RCP"F5=9=Y)RM0;YPFW6/V?/U*[D MM7OF'(OS)BTN&B++978/RN$$Y,8^7!2QJN152=E;OHVN[)/@J'_2'DS;%?VS M]F">/WW^I\\?8M=4;AA7)(8UFO(N^K@#9/ZXR1M:I+88OQ<:2WO[N<7W($@S M V.?-S6! @QH !D !X M;"]W;W)K&ULM9E=;]LV%(;_"J$50PLTD4C)7YEM M(+':K4"Z!DVZ70R[H&7:)BJ)*DG9R;\?*2F2]1&F!KB;F))X7I)/R,.7TOS( M^'>Q)T2"QR1.Q<+92YE=N:Z(]B3!XI)E)%5/MHPG6*I+OG-%Q@G>%$%)["+/ M&[L)IJFSG!?W[OARSG(9TY3<<2#R),'\Z8;$[+APH/-\XRO=[:6^X2[G&=Z1 M>R*_97=<7;FURH8F)!64I8"3[<*YAER(G&LE50_?E2B3MVF#CPM/ZM_+ :O!K/&@JQ8_#?=R/W" MF3I@0[8XC^57=OR#5 ,::;V(Q:+X"XY57<\!42XD2ZI@U8.$IN4O?JQ G 3 MX(4 5 6@GPWPJP#_9P."*B HR)1#*3B$6.+EG+,CX+JV4M.% F81K89/4_U_ MOY=/OF'7@#: H>]BP7*DK,7:GZJUMU MHZIO-V7?T M]^Q+)2^"-W@/D(3@0OC*'WY/L$OA>$8X&PD-S>$@B%0Z'6G<5 MY)HTJDFC0L]_0>^$VA"*,C@8#M:K_TID."(+1RUO0?B!.,M??X%C[[2ZQ4FQ5B.1B,OF+N'4Q0#M?SQ MM*G5&F-0CS$PCO$.\^_@0WJ@G*4JHTH<@P]JM66Z_![2\>26(O.M*8S-=+YE![4+&'\A4UMVJ>! M)A._0\/8Q+DT+(FU:,QJ&C-S)N"@61>-L;US MT5@2:Z&!7F,TO5?@J,,*ET\%%/*\P0VZ0J]'9NI-QATTYN;.96-+K0WGQ(5# M(YPO"HVRW.D.Q$2=8@#7QY4+MKW(U05^<3.K5$])C::^![NHC(V?CUP5CU2C;4FN#::PR-'OED&P)UV MZM*QZI1MJ;7I-%X9FLWR*R=3:-4R6U4+;:FUR36N&9IM\W44L5RY9)#A)VT) M!_&-^_N\AV;="675,-M2:V-I+#,T>V:%A>K#MJ66AM1XZ&AV427N?H$C,[;^AWC(*"^B1X' M_JPWAZSZ:%MJ[=>(C9%&9B-M>B>&^M;91R/8S3;F%LY^0?A_>&?4>&=D]L[E MA,ER'NWUDHI8*NBF6&8L'60$>^\O9AY"W3.ZN=6S&5DUS>[)"W_]>>8SYCN: M"I54MDK>NYRH"<#++Q[EA619\0U@S:1D25'<$ZPHZ0KJ^98Q^7RA/RO4WYV6 M_P%02P,$% @ NH!I52 &'L@K P 'PP !D !X;"]W;W)K&ULM5=A;]HP$/TKIZR:6JDC<5IHZ0"IT$V;U':H73=-TSZ8 MY "KCIW9!M9_/]ND@:W4G9CX0NS8]_+N7N)W=!92W>LIHH%?!1>Z&TV-*<_B M6&=3+*ANR!*%71E+55!CIVH2ZU(AS7U0P>,T25IQ09F(>AU_;ZAZ'3DSG D< M*M"SHJ#JH8]<+KH1B1YOW+#)U+@;<:]3T@G>HKDKA\K.XAHE9P4*S:0 A>-N M=$[.^J3I OR.+PP7>FT,+I61E/=N\C'O1HECA!PSXR"HOOC1_3W/GF;S(AJ'$C^E>5FVHU.(\AQ3&?_E@SS+"VIHKZ/D I3;;='< MP*?JHRTY)IPJMT;956;C3.]:&H04WD!_INV2UC"0Q8@)ZFOV!CX*0\6$C3C" MN=9H-)QG/V=,80[[%V@HX_K ;AM2=0_OQ)PI*:QFAG)X9[>5;GP(EY<#^'Z% MQ0C5#]@#)N"*<6X?H#NQL4DX*G%6$>XO":?/$/Z4F08DS4-(DY3 W>T%[.\= M_ D3VQK4A4CK0J0>]_@9W+\3K?,\A#N-XQF'2S9&V/^&5!ULHAV&)PD\V$AM M:UU(8:8:2 HY?= !ZDXB?(2MN5AW><[[QV13CS?0.6X MIG(AA^$?1 TQ;-=/6;C1>PK;7-";MQNEFE4]J,B=!,I\5S:TY6., M*G+P4[BF!8:5#H)NJ?1I3?ETMTJ'X?]!Z7;-M+T;I=M/E&XW6IN%)LG*'I(@ MFR$U]@@/ZQJ&V%)8LN9@9+?2OH!O;>8E;/AMQZR8_)RE;(UK[R@LK-)RHG M3U2.U]H]USI?435A0@/'L8U*&B<61"V[T>7$R-)W@"-IK#O[X=1V\*CSG1 *+=VT+XG/]SSGY^YTEZVD>M 5HH$G MSH0>!I4Q]448ZJ)"3O2QK%%8SUPJ3HPUU2+4M4)2>A)G81Q%IR$G5 1YYN\F M*L]D8Q@5.%&@&\Z)>AXADZMA, A>+N[HHC+N(LRSFBQPBN:^GBAKA7V4DG(4 MFDH!"N?#X')P,4X=W@-^4%SIM3.X3&92/CCC:SD,(B<(&1;&12#VM\0Q,N8" M61F/7X%DNJI+"M-83!]6-#:W<^A)N;,?RZ13Y# M]=N"[Z=7L+]W 'M !7RO9*.)*'46&IN&$Q,6G>11*SG^0'("MU*82MN'2RRW M\,>[^9]V\$-;OKZ&\4L-1_'.@%.LCR&)#B&.XL$V/?]-?R,GZ5N:^'CI1RVU MLZ\)PZVE;:FGGNHF?)D/HI,D/':0'!4"[\G-!2R$::=C?ZV7T67?@+#5WB[QVZ) M6E"A@>'<4J/C,SN7JMT-K6%D[<=K)HT=5G^L[#I%Y0#6/Y=VQ#K#/= OZ/P/ M4$L#!!0 ( +J :55=63I%? ( (H& 9 >&PO=V]R:W-H965TV$[K_?&2A*$QKM!7SV?<^?.^PC;:1ZTR6 (>\5%WKAE,;4-ZZK\Q(JJB>R M!H$K&ZDJ:M!46U?7"FC1BBKN!IZ7N!5EPLG2=NY!9:G<&I7RSQGVQ<#P+!!QR8R-0?.UA"9S;0(CQIX_I#%M:X>'X(_I= MFSOF\DHU+"5_884I%\[,(05LZ(Z;1]G\@#Z?V,;+)=?MDS2]K^>0?*>-K'HQ M$E1,=&_ZWM?A0.!'7PB"7A#\KR#L!6&;:$?6IK6BAF:ID@U1UANCV4%;FU:- MV3!AO^+:*%QEJ#/9+VF A.2:W(L]"",5 XW64E:U%#BAB=Q\6KM<@:&,ZROT M>EZOR.7%%;D@3)"G4NXT%85.78-@-KR;]Q"W'43P!<0:Z@D)O6\D\()@1+X\ M+U]!CG*_E?N?Y2Z68ZA),-0D:.-%7\1[I V6V(!BE(]FT\F35FZOR3Z+@[D? MI^[^$/K4*XJ2^73P^L06#FSA6;87O!373%S72N:@1^FZ /'!ON',GQ[!C3AY M_FR<+1K8HK-L=TPP/(D%V4HY?@RBDUW]((F2([81+\^;)^-P\0 7GX5;[^J: MXP$>PXI/-@RP"QY1G3KYL\@;ATH&J.0LU),TE./E&:[7&%UR&= M>L7S)/:/^-R#3F&[]$^JMDQHPF&#.F\RQ?Q4U_DZP\BZ;1ZOTF K:HYCVX#:WC8=C!]MIV;^?[:2A0(@VM)?&=NXY/OS]LN7-%5INV"G\0%6>$,]74QE6;F M-RPIS9$K*CA(7(Z\T][).++UKN ;Q8W:&8/M9"[$C9U M:QPC8Y;(R+BM.;UF2PO<'6_9/[K>32]SHG LV'>:ZFSD'7N0XI*43%^)S6>L M^QE:OH5@ROW"IJX-/%B42HN\!AL%.>75D]S5/NP #$\[(*P!X=\"^C6@[QJM ME+FVSHDF22S%!J2M-FQVX+QQ:-,-Y?849UJ:M]3@=/)%:(0!O(%/0J0;RA@0 MGL(%UX2OZ)PAG"J%6IF"F?F TM*LB.5]\?XY:D*9.C %U[-SV-\[@#V@'+YF MHE2&2L6^-C+M9OZBEG1620J?D=2'B> Z4_"!IYBVX,?=^'<=>-_8TW@4;CTZ M"SL)9U@<03\XA# (PS8]+X8_D--OCJSO^ ;/\&W-;W.V$VD3X4059($CS_SE M%LGK5[TH>-_65D46.3*;!NMDV(^.![&_;E$_:-0/7JQ^\'3#X3"XW["2 M554-GZUZ(&O8R!IVRIH2>6,^F#65@IN0TH3!A]N2%G9\")>78_@QP7R.\F>; M\$[N?[7]/Y$]L"%J;(@Z;9@@4:5$VS44**E(@:2_3 RYE7V7%N%!FP71D[/K M'0?!HZ-K*PJ#1R?G[Z19CG+E0E[!0I1<5\'6K#;WR*F+3_^^O+J$)D2N*%? M<&F@P=%;XZVL@KV::%&X;)P+;9+6#3-S%Z*T!>;]4IB.ZXG=H+E=DS]02P,$ M% @ NH!I51@U,&7E @ QP< !D !X;"]W;W)K&ULK55=;]HP%/TK5UDUM5)+0OCHU@$2T*$AC;6"MGN8]F"22[#FV)GM M /OWLYV004>C5=I+XH][CN\YMJ][6R%_J#6BAEW*N.I[:ZVS&]]7T1I3HAHB M0VYF5D*F1)NN3'R5222Q Z7,#X.@ZZ>$X%-"!E&VC(0\]O@&!FS1":-GR6G5RUI@8?M/?O$ M:3=:ED3A6+"O--;KOO?.@QA7)&=Z+K:?L-33L7R18,I]85O&!AY$N=(B+<$F M@Y3RXD]VI0\' ,-S&A"6@/ YH/T"H%4"6DYHD9F3=4LT&?2DV(*TT8;--IPW M#FW44&YW<:&EF:4&IP=?A$;HP!6,4PHXR9W5(]7YMD M[9)^5"8V*A(+7TBL"3/!]5K!1QYC?(SWCPH1$",-4Y%R?^_8 M[-7<#)JM1J?G;PXEU"YI"\*-RLPR?<_<>(5R@][@[9MF-_A0(ZA="6K7"OHL M>'+U@#)U1^@2'H0F[)226II_3[)0W/[+ED-7CH1T*B&=6B$+C'*),=QM4'); M!6!".>&1/?1S8J[+^>)N,K\XF)^:([J#Q99D1<#^-IQ27[OV:]7_)[(CF[J5 M3=W7'> 1453!PCTF8"KT$Y&4+!DZ3TY94? W@X/-"QI!\_KYJ:[-X[4J_8-: MF:),W!.B(++WKBB;U6CU2@U=&PO=V]R:W-H965T)Y S>B+':FX_2W!SX=)VL9LA@>.!+K**+\QQ6$R7;B M8.?UAT>V6$K]@SL=K^@"GD!^73UP=>?F*#,602Q8$B,.\XGS"5]>^T0[I!;? M&&Q%Z1KI4)Z3Y+N^N9M-'$\S@A "J2&H^K>!:PA#C:1X_)N!.OF8VK%\_8I^ MFP:O@GFF JZ3\"\VD\N),W30#.9T'>@8"UD M$F7.BD'$XMU_^I(EHN2 >P<<2.9 3G7P,P<_#73'+ WKADHZ'?-DB[BV5FCZ M(LU-ZJVB8;$NXY/DZBE3?G+Z9R(!#=!'=$L91]]HN 9T#U2L.:AB2:&>?!(" MU 6-9^@SH\\L9)*!>+6:(2K+SJHTCQ"L.6?Q EU1P01Z?P.2LE!\4&!?GV[0 M^WC/04@CCX@=16M:5<9S:67*WZ6KH]@\E' M3+S1'M\:J\'@0$K[.=^^E>]=+(&#D.B1JI7TM*4K]/<]1,_ _ZDC:@73>_:E M6-$ )H[:E 7P#3C37W_! ^^WNCG>$5@E[D$>]^#(C.=L0_4>;)E% R/APXO] MHEB':1G$11[$Q4F3[?>78$GC!:#;;++92FB%;%K"CL JT0_SZ(=O+^'0*"'& MQ-^K88W11?VR&N7<1O;*Y!WE#-W%J[449^@S;"!$V%H<*VK3XG0$5DD ]HK. M['784S*P<@W(R-O?L6NL_*'OU=<*ET0$[JBO9$#':)I6%II%D\;V+MVNMV2@ M93+[O=IJ4B5;M&IL[]6GK #T'VK8?^R#-ET@7:%54U1(!6S7"B=M8-CL^D;Y MK,.T#:-0$-@N(4ZL=*MF91^Z<;U_AN+ A>3 '6@.;(H.H]XVDRJW0DG@(U+B M8!&)O4"=RHFNT*I)* 0%/J8H&K4L4S;TO>%^K4RCWNB 9L>%NL!V>=&@88W, MAM4W7M9JK,JA5-\I"P5 [ J@7;\B9H^O>QFJ,SOX-D0**4#L4N"4=="\;=D' M;;I*ND*KIJAT5G#LL."$;8R8DL)\=[(/U#:00J*0MA*%O+EQV8=N7/&?(51( M(51(!T*%F$*EYE6KSNK NQ8I% AIJT!\>Y$Z51==H5634*@+RXN:7/5OJ;X3WE"Q8+%,)<^7CG%VH^\=UGN-V- M3%;IEZSG1,HD2B^70&? M8%Z/D\2^7JC/X[E'T.G_P-02P,$% @ NH!I M5:L:A%N&ULS9I= M3^,X%(;_BM49C4""-DZ_F;82TWP,TH(0778O5GMA4D.C2>*.[=(BS8]?.PU) M78JW69V5N($F]7E\$K\Y=MYZM&;\AUA0*M$F33(Q;BRD7%ZT6B):T)2()EO2 M3'WSR'A*I#KD3RVQY)3,\Z T:;F.TVNE),X:DU%^[I9/1FPEDSBCMQR)59H2 M_O*-)FP];N#&ZXF[^&DA]8G69+0D3W1&Y?WREJNC5DF9QRG-1,PRQ.GCN'&) M+T+7T0%YBS]BNA8[GY&^E ?&?NB#J_FXX>B,:$(CJ1%$_7NF4YHDFJ3R^%E M&V6?.G#W\RL]R"]>7/5B,29UJ* M,\G5M[&*DY,;)BGJHW/D41X_$ZT+=)4)R5=*;U(@DLW1=SI_BK,G=*EE$\N8 M"G3B44GB1*#?Z4:N2'**OGP:M'N=KRC.T'6<)$IFX@Q]MAR.6E+EK[-H146N MW[:YNN_D>KGD3>2TSY#KN&UT/_/0R>?3 YBI'3.CRR9J.SG&M6"\.ICIY7L8 MOP[&O[]#)\6M/ 0+[#"/1@J&CD-R;$*9(,/5!T1Z.$"!$_QG2.O!77 M.KQ1FD/81==JF>ME4]AA24.F[41#TCB:I&?UW3 M]('ROP])PB6_M$M ]!K":%HYEA65BVV>[6660#]0GJ%$1%A?_FU M]U![;"%I'BC-!Z4%H+00BF;JJ#)ML=VUK3L_;&F]G8<-=\WG;&KOL;820'U8 M4%H 2@NA:*82*B\6V\W8_S([%%:H8]9>=]C;EP2DZ>B!TGQ06@!*"Z%HIB0J M@Q7;'5:/"O6>J@9_CH@H?V>N?G_>GW+T2ZV_B18D4R^QZL2:\+E]"@(U8$%I M'BC-!Z4%H+00BF:JK+)AL=V'K3L%@=JI!6WW%07WFX/]Y>C;5FYGW_SP03,+ M"IHQU0[-'L/#>54+7W-$*F<3VZW-.L_]C$8LF[__^$]9)CF)_F4I"NJ'@M(\ M4)H/2@M :2$4S51=Y8IBNRU:MPZ NIOX@+W9?[.-!+1/_[7/MM%G9_^U%=2Y MA**98UQYE]AN7JIQ1?__J@+4\P2E>: T'Y06@-)"*)JYE:TR/EU0X]-.J[TG M[:WQZ;SQ/8M&Q@2_MZ( S2H I850M.WXMG;VR.I-UM>$J[(@4$(?%5[=/+5& MY=M]R]L#R9;YMMD')B5+\X\+2N:4ZP;J^T?&Y.N!WHE;[AZ?_ -02P,$% M @ NH!I550S6 :< P G@X !D !X;"]W;W)K&ULM5=M;]LV$/XKA%8,*;!$LBR_I;:!)%+7 ,L0Q.OVH>@'1CK+1"52)6D[ M'?;C=Y04Q984(6V5+S9?[I[C,PZTD:INF M5'Z[A$3L%]; >ARX8_%&FP%[.<]H#"O0'[-;B3V[0HE8"EPQP8F$]<*Z&)P' M,V.?&_S-8*\.VL0PN1?BB^E<1PO+,0N"!$)M$"C^[> *DL0 X3*^EIA6%=(X M'K8?T=_GW)'+/55P)9)_6*0W"VMJD0C6=)OH.['_ "6?D<$+1:+R7[(O;1V+ MA%NE15HZXPI2QHM_^E#FX< !<=H=W-+!K3MXSS@,2X?A2R-XI8/WT@BCTB&G M;A?<\\3Y5-/E7(H]D<8:T4PCSW[NC?EBW.ADI27.,O33RS^%!C(AI\0'R7;4 M[!JYYDK++8I!*T)Y1#Y %#,>DPNSJ4PS4&B_*H1%Q)K\CG)4Y.0/H12HM^3$ M!TU9@JU3@O"(K%C,J8:(4%6!/04AGVX@O0?Y&>T_KGQR\N8M>4,8)W]MQ%;A M M30G9&A\QMQ'==M6<_5R]T';71^+GKPP]&/DC&L1#?,\;QG\$K!)*5@)(0B MYNQ?% @>'5$EQ-9]+Y#'.;(Y!'?+\7 TMW>'N6S:#+R:C=^",YX>VP1-&\^K M3(Z8>Q5SKY,Y'FYX='$2/(0;RF,@.+"G,GKZ!OXC*YK@%_8XT):#SACF9CE7 M&0UA8>'5H4#NP%K^^LM@[+QK$UZ?8'Z?8$%/8$<;-:HV:O1J$BV01P>R&5M2.H-^ MKV;[!//[! MZ CO:N4FUC?8+Y?8(%/8$=[=:L MVJW9JVETUKR.:Q)M6M0EVK0XG=2O_2Z4@K1]\.!.0<9YI:-(*+9<%\^@:K0J MIB[R&J(V?CDXOQJTC/M8?!6UTA-\4;G=4!F;%":PQE#.V00_)5E40T5'BRQ_ M[M\+C<5#WMQ@ 0G2&.#\6N"3O^R8 %5)NOP?4$L#!!0 ( +J :57JWD#) MQP( 'P( 9 >&PO=V]R:W-H965TB&RMI]F/;!)!=BX<29[0#]]SL[:085,"K!A\1G MW_.<[\'GRW EY$*E )JL,YZKD9-J75R[KHI2R*AJBP)R7$F$S*A&4\Y=54B@ ML05EW/4];^!FE.5.,+1S$QD,1:DYRV$BB2JSC,JG6^!B-7(ZSO/$/9NGVDRX MP;"@#*/LFJ\AU<.B0JE199#<8=9"ROWG1=Z[ !Z/3V M /P:X!\+Z-: [K& 7@WH666J5*P.(=4T&$JQ(M)X(YL96#$M&M-GN?G;IUKB M*D.<#KX)#>2*7)"I%M$B%3P&J=Z3CW]*II_(60B:,J[(#UCKDO)S='R8AN3L M[?G0U1C>D+A1'>JV"N7O"36%HDVZ7HOXGN_O@(^/@'O^7GAX&!Y"A-$[%M[9 MAKNH62.'KZQR#(\MU:V%IE0281$BVJ(R2/E)9 )X$1*)9 SEI-8 M<$ZE(@7.*C.[4\$JYJ6-:2IV&7AM#[>[W-3I&*?P/TY;.7>;G+L'<[[1%SJ% MBSLJ%W@A?4\2D"R?DU]WD,U _MZ5T$%">V&VZDR@D 5+H6B0*9*NT7E'IW6DZ[0^!&>46";,$3T^1H' M9'?5,!LO#??^"?DB7VZ\JX8A9X0#['()@<2_+1[C()!(8AY?4]!&-J84 MW']^07?BQ8O%/"*&QR3XY'M\==7H-\##"[0)^#W9_8S3!?4DGDL"%O^%7=K7 M:("[89R$J;"80>A'R7_TE!*Q)V!VC@A8J8!5$N@>&Z&3"G1* AWKB$ W%>B6 MIV0?$>BE KVR0/>(@)T*V#'W"5DQTQ/$T?"2DAU0V5N@R8=87;&T(-B/I&7- M.15??2''A^\)QS" ,YBO$,5G4DD>C$DH+)>A6/=O)Y@C/V#P@)_X!@7OX VT M@ [@E$5\QF$8> M]BKDIVIYTU( M 4I&3/6"S-C2XDXQ^L6=(PF6(9EP8?Y!-Z^*:P]^5XSJQQ91N$+MD8NOFJ(,,LPW>+&\(?O M3-OXL8I5G6".)K "X]V,\>XK&;^)4$W.NR9H BMHQ,XT8M?3"(QVB'KP M@.A2I&B_X"T.FB!Z29\065.5FI(1^@IO4,ZA+O)V(A2%"VQ2.LY7#_#?K\9>HZ;$X.??MWX_%D$?\;I1K8SN.,K ML4$\K% $=VN)QN ]B;:8<2&=;A\C7G 5N9WLJ_6MR.^2#.5=E2;[A_M(=V 8 M1LE]E&NOJR.=8(XFL(+.!YG.!W]U,X$_1%8=^>$F5.XO2ORZCJ03;*H3S-$$ M5E"2:>1G)>.;1+D4MA!,2GZA'KDNYUK1'%UH1=;W3JCFWW$.]'32.=0#U/4. MK6A3K6B.+K2BJJQ<5=:W<1#KP$&LLH,H1Z[-NDXT1Q=:D?7\O&VJ#]SW8ANG MOBNW\N38%Y=D $5>80-/OJ5J4;J+SH/Q1"O:5"N:HPNMJ+C\V&ZJS^U)S>U$ MJO>8IGIG%:E>\WBNQ_=RO29\3#(]D<()B_")$'203^$C"C98!-$WE6:03'ZP MYY3=EEUV2ZW5 :UHCBZTHG;S H&IKA!4:BU7;',O T^5.2:,BU8.SR()O\,:&4V?F)JIA@!43B',*F9VN"AY\I2IAJHMGZU M%AMTH17UFY<;3'6]X9_SWI\$'F>Y]YXXBUV?F/AGLSKLVX='.-.VK8.=6&L) M1"N:HPNM:!)Y%<14ET'^/9-HPJ?X1S093+:8HB5.NL $<;P?[*7I>"0($&6P M%K"Q&;V3>T#V0T2E<20+/]\SCH[1LOMEV]!:@]&*YNA"*]I&7M8Q3]1UJM(O MP?O$I]CE(K(K4S*=I8Z)5K2I5C1'%UI12WDAQE178OZS07V<3KP8GCO]@T)" M13?+-DIYVU1-0VVE?8NZC)7792QU7>;_&W;3A9?"[GFOI/3J;H-N2>EJ&NLJ M71=:4>FR+%1LR:L/EKKZ(/*:AQ6&*"EGDP7,YB,&GL_<@+#D],-7/@..'@,, MLGJ.N&C!HB$N>P=QV5O(F8;Q?:MJDNV]BQ8A%D+R2@P#EVPBGOQTF+5FUVZN MX\LFI?:Q>3$Q*]JGYH53U3ZRS(NI5?W%$E_B,=KYE))[0;=B77[$Q,(68GK2 M;AI DZLVR0LGZ_AJR"/AG(3QXPHC#U/907Q?$,)?7N0 V86GX9]02P,$% M @ NH!I52LK[X08 P APL !D !X;"]W;W)K&ULK59=;YLP%/TK%JNF3FK+1_AHL@2I">SCH5/5K-O#M 8 M'&:*KAP7[J-MR.6"ZDXSO(4E\(?LCHJ96JD$40(IBTB**&QFRHT^\1V)SP'? M(CBPVAC)3%:$/,K)YV"F:')#$,.:2P4L_O:P@#B60F(;OTI-I0HIB?7Q4?U# MGKO(9849+$C\/0IX.%.N%13 !N]B?D\.GZ#,QY)Z:Q*S_!<=2JRFH/6.<9*4 M9+&#)$J+?_Q4UJ%&$#K=!*,D&$V"^0)A5!)&KXU@E@3SM1&LDI"GKA:YYX7S M,,?NE)(#HA(MU.0@KW[.%O6*4NF3):?B:21XW/U".* QND3+$%.XE#4/T((D MPH<,YT?9\\A_DF- YQYP',7LG0 _+#UT?O8.G:$H15]#LF,X#=A4Y6*S,J2Z M+C[^1^>_:&^5M[#BGF#2GF#R1V6/;8:]FQC1DV,U\;HMM4 ^1T@QS(:!E5KG44"=)NW=$PDM$MY\;6H M5JNN\29OEAKK)5JT?<6$ MDRSO:U:$BRXI'X:B4P8J >+YAHC>IIS( %7O[?X!4$L#!!0 ( +J :57) M5I36-00 (H. 9 >&PO=V]R:W-H965T=R=C/W>O)6*VMX!+N-3'K/&=Z=PM";6\Z MM+.?>."KS+J)8#(NV KF8!^+>XVCH(Z2\ARDX4H2#SVC/.7B+/SEL M3>.9."H+I9[=X+?TIA,Z1" @L2X$P[\-S$ (%PEQ_%T%[=1[.L?F\S[Z+YX\ MDEDP S,E_N*IS6XZPPY)8J[>(D2QO^2;64;=DBR-E;EE3,B MR+DL_]G7*A$-AS@ZXQ!5#M&1 XW/.,250^R)EL@\K<_,LLE8JRW1SAJCN0>? M&^^-;+AT,LZMQE6.?G;RN[) 1N22S#.FX=)E)"4SE>,Q,Y593@OX\ B#0P0UUF._0Z],SL\R@VF"-.#J33[7!KRD87)"MOR\X MSS:@\?Z3E6;2DI3A\5HRKLF&B35XQJD2@FE#"M E9T?^D/53"2@Q7342$(?= M:%#S?T&E7U/IMU)YJ87'B_B_5Y/^:TWH8!!%1YJT0VC79% 3&;R=R'M+,C@E MR6!X6I*KFLG5C]R3Q+T^Q!O$N7HESN4PZ@V/M&G'TJ[-L&8T_"^,WENEX6N5 M:)>>46E4(K:]*'AX0,8OIG->\M2 M06KJ$HVZT>@H"=] _HT,-$H ^IY?IRIZ4U(L(D=1[YA-.XKV^T:C YOH?_B% MJD =O0_/7#3JZH:7,X?O+VW_ &.:_LB R+6KGHA:EEJEW"1"N=H-X=N,&V+9 M0@!!N(19G &=J?TK0!+?: F[)C5ECF"U#9&!!8^&*P\6.Y%A=\T+LN%P=-L5Y M1@JVPR[#I3P!:9T^92VJI#^JT!HU*/ =,N&M0\'6OUM*6E4D] M6S=!4U_Z'\W?NN;HU'QT/3ME/Z4Q.L0G5WK[/BLX0"J[-!1YQ3&! I8(+^Q> MX2769>-3#JPJ?.^P4!8[$?^88;,(VAG@^E)A_U -W 9U^SGY%U!+ P04 M" "Z@&E5@^H\L1<$ #L$ &0 'AL+W=O_\@?CT=2HZU4W_0&TNJ\,-QDQW M9(H)O5E)%3-#1;5V=:J01;E1+-S \P9NS'CB3$9YW5Q-1C(S@B>P0YE*>4W6_@C&CN>[1$*#(V58/1WCU,4PBI1/[[O1)W2IS7< M?WY2_RT?/ UFR31.I?C"([,9.R<.1+ABF3"W96]/P>6+G?6$4O>5D9R;7TB#X'OP"4QG'W-"4&@TLB:B< M&)ZL,0DY:CB:H6%<:+C#!Y,Q\1$^ $_@B@M!TZ='KJ'.6$DWW#F^*!P'KSCV MX8H<;#1<)A%&57N7!E&.)'@:R470*/@G2SK0]8\A\/PA?%[,X.C#QYI^39ME M%IB2C&=E@J!!9O9&;[+D2<;OUT;TQ&U1[VE0OZ):1VE1ME#*?5^H.1W_!>46G)8H=0O*?4;*K?.G2-O@Y%UZ;8 MK"6Q"N-!R7C0'(E2Z[U<^TC!%X:*,NPQ3#.EL#X,&S4/9=FFV&SP0TQ[G5X9 MTQ5$PQ+1\* P7&0IJE5&%0M.NU=3S#4*'\JI3;%92V(5H"9!08W M*YC3]D^AQX1XM*LZI:V<+P72;J(,;?MU2 OI_G[2ZGO5I#5M='\HJ9;$*J1. M2U*GC:0NM>%TN$1['-+&;A>7\W-8Y,=6JKS%&*/'.DJ%[&"?DN>]Q-3H^U!, M+8E5,/G>\S'2>R>H.[H6@)'VC)(*I/59TK+H"F)P]!69JCM67;SAQ^_"(YG6 M1>:TV?10GFVI58'NG*89_'\9;Z==27F]%TNYV?_!M%I2*VBY>]?#&-4ZOV9K".T9M[@IEK7E M5?X\O\"ZS\V+[P!73*UYHD'@BDR]SI"@J.)J712,3//+YE(:NKKFCQMD$2K; M@-ZO)/'?%:R#\@/'Y#]02P,$% @ NH!I5?HBXW3Y @ U @ !D !X M;"]W;W)K&ULK5;[;]HP$/Y7K*R:5HDU#QYK&2#Q MFE9IW1"TV\\F.8C5Q&:V W1__N M362O(S*=, X32526IE2^#" 1FZ[C.[N%*5O&VBRXO-XV]-?C.8*/VQL1D,A?BV4SNHZ[CF8 @@5 ;!HJ/-0PA M20P1AO&SX'1*EP:X/]ZQ?[*Y8RYSJF HDA\LTG'7N75(! N:)7HJ-I^AR,<& M&(I$V7^R*6P]AX29TB(MP!A!RGC^I-M"AST \E0#@@(0' (:)P#U E"_U$.C M #0N]= L #9U-\_="C>BFO8Z4FR(--;(9@96?8M&O1@W=3+3$G<9XG3OJ]! M?)^\)U-8 \]P0MZ-0%.6*/((6YW1Y!IWGV8C\N[JFEP1QLEC+#)%>:0ZKL88 M#),;%OX&N;_@A+\Z>1!011!7YT'G]W!N]B[J4 P4Z 07"6< :K&U+W M:B3P@J BGN'E<+\JG7_S/OYK[Z_$J)?54+=\C1-\]SS$RT:!*8%\=&W>]ZXT M%E*D9(CZ2SS?6*@Z)D-;HB!5C2 XR2+&EZ2O%. O(H]T6U4B>1 M&X2YR-8] MO-8Z[GI?]F.; XO1!2SC"AM_S^B52(U2I,99D:H%J)$OC,Y9PO1+K11L"J%8 MF]?>.WO(]5Q_(RG^/_Y#/7UMV[IK%BEK8_*A(:7?(S6JZ6+;AO.\_! M^L!O#_V*]1&V[+S#_J'/^_T#E4O&%4E@@:Z\FP^8F,Q[:#[18F6;Q%QH+&<[ MC/&S Z0QP/V%P$913(R#\D.F]QM02P,$% @ NH!I54D9?UET @ N < M !D !X;"]W;W)K&ULS57;CM,P$/V549#0(NTV ME]Y6)8VT%Q \ -5V 2'$@YM,&FN=.-CN9?^>L9.-BI3V :&%E\1CSSD^QQ[; M\4ZJ!UT@&MB7HM)SKS"FGOF^3@LLF1[(&BL:R:4JF:%0K7U=*V29 Y7"CX)@ MXI>,5UX2N[Z%2F*Y,8)7N%"@-V7)U.,U"KF;>Z'WU'''UX6Q'7X2UVR-2S2? MZX6BR.]8,EYBI;FL0&$^]Z["V?74YKN$+QQW^J -ULE*R@<;O,_F7F %H<#4 M6 9&ORW>H!"6B&3\;#F];DH+/&P_L;]UWLG+BFF\D>(KSTPQ]RX]R#!G&V'N MY.X=MG[&EB^50KLO[-K&4W96D4C7+"F>2C- AA"!=PAUNL-@@1G-VB M85QHN,>]V3#Q*O8-364!?MK27C>TT1':)=8#& ;G$ 51]#O<)X6=S*B3&3F^ MT1&^5MPYJ;25QJLU+%"YFJQ2A$\KP=?,;O,YO-G7M..8P3TO;9[,84E#.F=I MD[ T3!F@U4+X?K7G^L?,J;P(@XL@[+-Z4IH]-3-=LQ3G'AT+C6J+7O+R13@) M7I\P/NR,#_^6<>I/L3)TE/I,---3CSM7X']?:D KM2*V=E/:'M3;IC$^>I]8F/;4V MCOIK;=J)F_X_M79:2@B/!.Q;FUKS2(# GIF PI>U5S3O1!$;6 M[FY>24,WO6L6]+2BL@DTGDNZG]O 7O?=8YW\ E!+ P04 " "Z@&E5>XGT MKQP# \"P &0 'AL+W=OS,-M#]^]E.FA&2,M;Q OXX MY]CW^G"Y@QUECWP-(-!3EA(^--9"Y'W3Y,LU9)A?TQR(W%E1EF$AIRPV>F['1@&Y$FA"8,<0W68;9KS&D=#&'VA I!MH_?H#K9 -B!'8<)Q'#.(L7Y+NJKV+D,0 M.$GYE40]S$-T>7&%+E!"T/V:;C@F$1^80MY*:9O+\@;CX@;."S=PT2TE8LW1 ME$00M?##X_S>$;XILU&EQ'E.R=@Y*CB'_!JYUCOD6([3JJZ]WF.ES T9/GFP+9@C-Z^L0/K0YNCSBD6GE-L>B:QVJ/XU:/X MK_=>0?7W3>4&P8&I)DU4T//$V9WNX[GM5LOJ*(,3K8> M%FA&$R)T2?V; X_*_JL#SRD6GE-L>B:QVMMTJK?IO-Z!G6;!ZKFJZ-88ZO_B9J!C3WVH$,6*S[,(Z6=$-$4?FKU:K5N]$= MSL'ZV.Y/[);U4+:&12?W1[[H*V\QBQ/"40HK>91UW9&_%E;T:L5$T%PW(PLJ M9&NCAVO9W@)3 +F_HK(A*2?J@*IA'OT&4$L#!!0 ( +J :56]J>)+4P( M $@& 9 >&PO=V]R:W-H965T,YFWB^/1 P2+5E M(.:UAQDP9HG,,7XUG%Z;T@+/UR?V+TZ[T;(A"F:"_:29+B;>9P]ED),=TRMQ M^ J-GJ'E2P53[HD.=>QPY*%TI[0H&[ Y04EY_2;'I@YG ,/3#0@;0/@>,+@" MB!I =&^&00,8W)MAV "<=%QK=X6;$TV26(H#DC;:L-F%J[Y#FWI1;N_)6DNS M2PU.)]^$!A2$Z!-ZYJDH ;V2(RCT80Z:4*;0*QSUCK"/,=8FF\7@M&&>ULSA M%>8(O0BN"X46/(.L S^_C7^\@<=&92LU/$F=AC<)UU#U4>3W4.B'8<=Y9O?# M@RXY_Y=]\<_9+XH1M=\]&ULO5I1FD\PD 2@+SK_D-^^#FX&9CXA%S!!6-\,G $*V))N M(_' =^]8&= HQ_-YE!5_T:ZT-0?(WV:"QZ6S'$$<)OO_]&N9B ,'B=/M0$H' MTG2P7G 8E@[#8QFLTL$ZEF%4.A2A&_O8B\2Y5-#9-.4[E.;6$BV_*+)?>,M\ MA4D^41Y%*C\-I9^8?>2"(3Q$E^C6][?Q-J*"!>B36+,4S7DL)]\ZGQ5/#/W" MLTR:Y0]YPA*1(;X\SNG,98*&478NW3\_NNCLS3EZ@\($_;KFVXPF038UA(PE M'Y'AE^.^VX^;O##N(?K $['.D)<$+.CP=_7^$XV_(7-8)9(\)_*.: $?V>8* M#S>R>Q*,H;5K!H6>-8+>'YJ1B3VQK*GQ=)BM#K.Q-<9$-7,[S)SAT!FJ9EZ'F3VQB5V9*5%:5926-LJ/ M+%&O"5-1 F\IZALTBNA?.NE.Q91@>CLTVGD8^VS:B1 M,K=M8CF-?'EM&VR;W5D855D8G5KK48MM:#KV>-R(K6U&''-H3AKQ'8?F?1-- MB=*NHK2U41YN="Y;RD\#=,<2>270O4Q AFZ#O^1V'>>3X5:(-%QL!5U$# F. M[FDQ1_[XP.(%2__L2I66/>\6KK,-]=G-0$ZLC*5/;##[\0=9NY^ZMAI(,!<2 MS ,"4THXKDHX/G6B:AW[9A\2S!VW9O,EMISFG >B5-+J5&EUM&G]]*TM#RV8 M;&B9;"O]B&99N Q]FC>)G=_Z6JZ^E8 $*SU:U_=37J2N4FCY^I8"$LR=M+\,&Y4 HE,J@[404H1K4,!](&G[KAEYZ-?94T%O1<3] [94>1>E"D:M9( MG35R=*?S,Y4J[2P7<><72,[J"S2GV1J]C23H.Q:LV$6SMT'_(BG@I3Q/D/?5 M7]-DQ?('.YH&VOY'/ZC>4QT2S05%\Z#0U/+6R@R?+,WTGKUK (GFEFCJVIDT MMWTH3C6WM1[$>D$(VPKIR7J7 Q+-Q6TA>=F6W5"<:CEJ88KURA2^)=(3]BX) M))J+V\(7#YUF18 HU8K4(AKK53188P0JET'1W!)-61K$:NU4KZ&$<2V%\ZW]T8O4\$DP,3Z$%BH,<=W>A;(E M M#(KF@J)Y4&AJ86OEC/726;<80$4P*)J+VS*XM6)>0P>36@<3O0Z&[8?T9'UK M 8KFD@XU;#9_?(>B5*M1RV&BE\/P[9">L'=%0,4V:8OMT:19D-=0VJ16VD2O MM*&Z(3U-[S* :N<23?V9J/F+!Q2E6H=:$I.3)3%IR\[6\.=Z^-X9.X+2@Z)4 M,U8+7:(7NK>?YN]/>D$)W&& RDI0-)>T925QFOT>%*5:C5I5 M$KVJ?(4. _3-+"B:2]JBE;1[OM?0K*36K$2O6<%:#% M"HKFDO:;V?;!%RA* MM0ZUQ"0G2\S2TU:V1F(V?W#I-!N;=G,_/@K-^R;:/D[CX&!AS-)5<:(SDY-' M+O/]:;#J:75J]+8X*]EX?H>OY[CCN8NOO?V9T!I^?T3U TU789*AB"TEE7DU MEO5-]Z<^]S>";XICC0LN!(^+RS6C 4MS _GYDG/Q?),35&=O9_\!4$L#!!0 M ( +J :55=68>CE@4 %4= 9 >&PO=V]R:W-H965T\^"(VC$GTF*6YN!QLI-Q>.(Z( M-RRCXBW?LES]L^9%1J6Z+.X=L2T8755!6>H0UPV'/U&I90EYU_*B_>KRX%;CHBE+)8E!55?#VS. MTK1D4N/X6I,.FC[+P./?3^SO*O%*S)(*-N?I'\E*;BX'X0"MV)KN4GG+][^P M6I!?\L4\%=4GVM=8=X#BG9 \JX/5"+(D/WS3QWHBC@(4#QQ Z@"B!XQ.!'AU M@'=N#Z,Z8'1N#WX=4$EW#MJKB8NHI+-IP?>H*-&*K?Q1S7X5K>8KR&Z"J.=]DNI9*MT&]RPPHTYYDJODU9%0\,_CUJS?H%4IR]&G#=X+F*S%UI%)4CLN) MZ]%?'T9/3HS>0Q]X+C<"+?(56P'QD3U^8HEWU$PVTTF>IO.:6 GOV/8M\MR? M$'$) <8S/S\<0W)>UOOB/_?>F0ROJ2VOXAN=X)MS(V &"NZTY:MH[24:-T9%7Z4:WH M21[SC$$R#['^LP0K]1Z#^K\&0>?:-# M3,@D'&D235@X"D9:AB(3Y?ENZ(TUD2:,>.[XJ'@Z,H-&9F"5^8D^HM?L46W# M@KU!2Y:S=2(AR8'1_=#S?5]3#*#P!&OS$@&HT,-:@2^@'DD0PGK'C=ZQ5>_[ M7+*"J=NTU@Q)'9OE%.BI-3$8$TVFB2'>1+\_35 0CF&-8:,Q?$9C>6,BJ5)K M41D"96?DTP0!Z31!0#:![DXF<]((G5B%FEOS3IZS/=<3].<'EBU9\1->V:)>V19]L77S3-H\DY>4,C%+>:R7LHD98JR7,@3R M=#\$H8Z,85=B:VZQW=U:'5$=V]U.=(4F!KA9 9#N'1<0:(Q/"&P]+;:;VIN" M;UDAOR'U;(;8UUVRS5@.FB%L.DY7%_LL) (@0TQTWV58( U;3E F #)T0QA *F>132EM? MB^W&MK^-IK'(MRH(W>WIUK[%6,?UW5M,GVQ1KVR+OMBZ&6Y=/;;;^F>V&,!@ MZQ5L0HPER80,_8E>P#:>KKC6R6.[E3]_19J8RX2NTX08.DV(>E#5==IXNF_+ M6LM+[);WG.=/8CI1_?$3@.@2 ;32=$6V?H_8_5Y_R^UQ1*2J/E??UX?Z1SZ5+>J5;=$76[\MJW#@ZL^@",H0_ &/H C*'/.3HFREAQ7YW/"13S M72X/;_6;UN8,\*HZ^=+:K_'%' /M$;Y8'$[X6OK#@>,'6MPGZMY-V5IUY;X= MJTP4AS.\PX7DV^J0:LFEY%GU<\/HBA4E0/V_YEP^790=-">ILW\!4$L#!!0 M ( +J :56-VCBY:P( &P& 9 >&PO=V]R:W-H965T=;0#:[1?FU6VNW(P%(R@=(P)4%C-8FFHZMEZOV#PS>&6[.W!I_) MO5(/?G-=3J+8!X0<"^L9J/L]XAPY]T0NC!\]9S1(>N#^^HG]4\C=Y7)/#>KU#]\X@J(U5HD>["(03'9_NNOK ML =P/("K>@EN:95EO0WMNQ M^46H?D"[>C'I^V1MM3ME#F?S6V411F-X![>N*:]EH03""C6L:ZH13A9H*>,& MON#.MI2?.D?C3TQ&K)/W)*3HI6:=5/**5 HW2MK:P%*66![ +X[C/Q[!$Y?V MD'ORE/LL.4JXQN8.^8,ID*U MTL()DWVGG!YJE2Z8BQ",GV6/>9R1Q_WB_^EQ>1G'+[P6?^59'O/H*D7VKH] MO0ESRT#A\^@*.%B'T3@-$^&%?3:ZFH\.V!=NE':3[YF^F\,W5&^8-,"QSK=M8U83+>Z^L&P5A6;OG +5W<.>5XWWB!X8')?P%02P,$% M @ NH!I56P5BA#R P !@T !D !X;"]W;W)K&ULI5==C]HZ$/TK5K0/NU)+OH$@0-HEK&ZE?JQ*MWVXZH,W,<1J$G-MLW3_ M?<=Q-@7'4'3+0X@G<\8^)^/Q9+IG_(@*K2#3QOZ%:8ULY\VM@>^'S*=K*D-7G@2.RJ"O.7 M.U*R_1VT7):45J05F-.%G/G%M_'C_&OV^(0]DGK @"U9^H[DL9L[803E9XUTI/[/]/Z0E%*MX&2M%$H!)^UI+6.S74042F+1#@TQ8"J$P3Z#HE$M-2 MW,#)/%P MZCX?RM5WBI+(<%KVG8+0'X^/O>XM\P5QT#D=,8PZAM%9AGJ374,2Z_2^L1'5 M(>(CHL'((&IQ&H]\@Z@MDI<8/&V1HL3.,^YXQF=Y+M=K.%H06Z,M%" H [@L M7U"N"@L<-"C3A:3=XN?EN#L_T[_^=YN&<8_4.#04[+O$GJ%?WV5DJM=W&9[0 M;MAI-SS+Z+7\[MOR^Q:WY?=8-790?_^04,/>&GW/\PVR:=\+TL[,*)M3;^?8 MG/RQ7951I\KHPIV3L[+$7" X4S1I*^=1;_<:5%+M,3KP\ :Q0;?O$PS"R*!K M"Y2$R='/3G[YE MO#_M]2\%@=YCKRXU@T9#TJZHM/M"]2*R(.B%*)6(.J=12C)2/8%@H:\/J^;J M(7 -/#\9V,XN]Z#IJ@C?-.VQ@$VXJZ4NA)VU:\'OFL;3L"_\2>I;[$O5LEOL MM\EDF=CLOC=9ZA[?_;T@_87P ?,-A>ZJ)&M8G#<8P>;CNNG6 \FV39/XQ"2T MG,UM 1\JA"L'>+YF4*?;@9J@^_29_P)02P,$% @ NH!I56WO'*S5 P MAPX !D !X;"]W;W)K&ULK5??;]LV$/Y7"*W8 M6F"-1%*2IUH=L1KQN#\,>&/EL"Y5$E:3C!M@?/Y*25>M'C"SQBRU2 MWW=WW_%.),<'+C[+'8!"7_.LD!-GIU1Y[;HRV4'.Y!4OH=!O-ESD3.FAV+JR M%,#6EI1G+O&\T,U96CC3L9U;BNF8[U66%K 42.[SG(G'&\CX8>)@YSAQEVYW MRDRXTW')MK "]:E<"CUR&ROK-(="IKQ C83YP.^7F#/$"SBSQ0.\N09&2GW MG'\V@X_KB>.9B""#1!D33/\]P RRS%C2<7RIC3J-3T,\?3Y:_]F*UV+NF809 MS_Y*UVHW<2('K6'#]IFZXX=?H184&'L)SZ3]18<:ZSDHV4O%\YJL(\C3HOIG M7^M$G!"TG6$"J0FD2_"?(-":0)_KP:\)_G,]!#7!2GM\I84IE)42^FVJ>6KZ&U> <(#>HQ5L=0$H]+&HRL\LX_O6Z XR MIF"-%$=J!^CW$H1](1'?V)D9STM6//X@C^^*[=&L1&_GH%B:R7?:ZJ?5'+U] M\PZ]06F!_MCQO63%6HY=I169N-RDCOZFBIX\$3U%M[Q0.XD6Q1K6 _SY>7Y\ MAN_J3#;I),=TWI"S!E=07B'J_8B(1\A /+/GT_&0G-=Y7[S8>RL9M*DM:NWY M3]66_LY)EL'@PE;4T%+-U^QAB@F)(W_L/ISFJP^+_-"G;=2\CZ*!%]%1&[;H MPPCU1F'8P%HR_4:F?U;F+X)+B4K!-ZD:4EJQ@U.O <911V@?A0D-NT+[J)#V MDK;HHZ@7CIZ0&30R@[,R!UKZ[UO([T'\@_[5#;35>!#Z\[!2 !E:"I!R+P M MTQ(:Y%!^SKHU&^6U+%D"$T?OA!+$ SC3[[_#H??34']=TMC\DL86%S+66KNP M6;OPY9T8]JHEHF&W\F9]5!C[-.[49Q]%:.#[8:= ^S <1<3WARMTU*@7ELM^B@5Y/)L6YZ-XO^VY26-S2]I;'$A8ZVEC)NEC%_>EG&_Q&)J M]N56M?91."!>MUP'4#B@<_0$,H[,?=+7( %GEAMS7=DX-U#F)K;S02)7Q?J.HZ[T M)<$^[O1-$80!Z/<;KH_V]< X:.Z>T_\ 4$L#!!0 ( +J :55ZMD#B60, M H5 - >&POVS?)(9! MJ5><7LTIU=XRYZ(<^G.MBX]!4$[G-"?EB2RH,$@F54ZTZ:I94!:*DK0$4LZ# M;J<3!SEAPA\-Q"*_R'7I3>5"Z*'?;T*>O7Q)AWX8G_J>E1O+E []FZ/W/Q=2 MG[_S[/7@P\%!Y^;X?#=^5 ''?N 4/7N"Z$D'US48)AUO2U?##XV0)1YBM-Z3 M'#UB"!/N._P8^ZTEZ&#DQ$G>H"+$7L>==3LMFK<7NE?CS_UO=#U:;,M;4%?9 M:)!)T19;Y-N R4YRZMT2/O3'A+.)8L#*2,[XRH:[$)A*+I6G394;.R%$RCL+ MA[8'-T"MDS,A597;9K"_)_7P'6#= X.,\\9@U[>!T: @6E,E+DRG&EP%'T!> MW;Y>%<;A3)%5V#WS6T)U,4DF4J54-6E"?QT:#3C-P(YBLSE^U+%=/E5W#3H_U*_^MFSS;!Y/Q/ICG"J'?K?X0S-VZ3>9,&X9J+NS5F:4O'@T&7D M-9F8/_2V],WXE&9DP?5U P[]MOV-IFR1)\VH2UB(>E3;_@K3"^/F2&UR,9'2 M)4W'=5?-)E73,PV3M?X 81>YJ#YN!.-8S(T AN7!'& ]$^BBGCW(LRX6,JR^6Q\U)S,<]TR2)HCC&5G0\=CH88^L6Q_#C5L.\ 0/+ M YF>M];X;N,5\G@=8'OZ6(5@,\4K$9LIOM: N-<-&$GBWFTL#S"P7@_NO(^"]7LJ:/_[.?H+4$L#!!0 ( +J :567BKL

-8?20$3;8T.P6BP^0"X99K>]9!:G!EFB;"$5Z))6T^?4[I.>53,.#O9A^LB71\B=* M/!_/H=X]*_VX5.J1?.N%-+/1QMKMY7ALV@WKJ?E-;9F$(RNE>VIA4Z_'9JL9 M[OY=:?ZBI*5BT6HEQ&Q4[ X\,&UY^]/N MA8.\ITOC]UBZ_$H!9#::3N"$*ZZ-]2W\^2DP/C%HO-L:K/K,A65Z3BW[HM6P MY7+M3@-7,0XNP_?#_G/7B9?Z_W2C6JUXR^:J'7HF[:X?-1,.4)H-WYH1D;1G ML]&^"?D@._))6N@DL(?#-*\ XX.K)P./#3 +)$(,LC0OY5!I 5 ED=!?(C%52VC 20-0)9'Q$R MZLD&@6R.>;NK '**0$Z/"5D'D&<(Y-DQ(9L \AR!/#\LY UXAA3DE-SJ-97\ MQ;<@5+K'TG 30%X@D!<9($N _#@8+IDQT*/]DLN?0OD$B^63#) 50%[+)V@) MTF5A]Q6H9PXL&L]6 ]L7I;IG+D0(AKFE.+!#UD[7<[:T(1SFE.+ M4O%P4X#[3+DF#U0,C/S)J!FTLW.$B5FE.+!6/.898,Z9YD_43+ 8O&8YX"YL*I]W"C1,6U^(9_^'F!N%D)B7BD.+!8/>>$@-U2STR7= MA>\>3FF@=8B)F:4XL%IV47OBQHWJ>V[]C?91&U038V)N*;+(Q=GE*X.8.+ 0 M#/-)D4,H1>F#=:MZ1N[IMRA:EYA)RAPF*9Q*/K30>!!^WG!K-TR[^QUB8E(I M*H=[DAX_#3$Q 54Y!)3LS; 466$"JG((*(D9%B,K3$!5 M#@&]GA7Y!'*K9+384&,"JG,(*)H7N5%^+2V5:T ),3$+U3DL]+IP14[FS%(N M3+3@@%FHSF&AY!PN'$(U9J$ZAX62<[@($UV_.6:E+1KI-6:A^IB5MLCI-6:A M^IBUMOBF8Q:J0N/]:V(=6T%BU=W 7QC8WU+1WFGB/G8+V'7C M5I-6@Q!7L.]6_J%HMW_K;/_&W/M_ %!+ P04 " "Z@&E5678!^/4! X M(P &@ 'AL+U]R96QS+W=OZ)0A&51G ;-JJRQY>V_^F2-??>4]VW9 M=<=QN^O'V<=A?QR7S;:4_E]*XVJ;#^UXU?7Y>+JR[H9#6T[+89/Z=O7:;G+2 M^7R1AI\SFON[GS-GSY]]_I^)W7J]6^6';O5VR,?RR^#TW@VOXS;GTLR>VV&3 MR[))'_O+Z3&=#W)UFMS,'E^6S?#X(DVJ':00I/6##(*L?I!#D-BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'H;ZFT$>AOJ;01Z&^IM M!'K;9+.$0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!O0[V-0&]'O9U ;T>] MG4!O1[V=0&]'O9U ;Y]L=A/H[:BW$^CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z!VH M=Q#H':AW$.@=J'<0Z!VH=Q#H':AW$.@=DX^5!'H'ZAT$>@?J'01Z!^H=!'H' MZAU_J?=8/O=YO/1\K_$[]U]274[WYLOCS\OODXCSXHQS@A]E[K\ 4$L#!!0 M ( +J :547R,P;VP$ -$B 3 6T-O;G1E;G1?5'EP97-=+GAM;,W: M74^#,!0&X+^R<&M&UZ_Y$>>->JM>^ .+HS#9M4T7%ED5H[M@+!05M2;DUE&71I;6MR:F1[]BSA1KLR(F M9K,Y*VP7J8O3V-?(KBYO:&DV39S<[M+K4-MND7EJ0C:YWD_LLQ:9<:ZI"Q/3 M.-MVY9>4Z5M"GE8. MW7W6_*^+FGR8'R\,VV:Q78- M"_&EH9"/E_BF1[MG"=3AHHHMDV^+WHRGAS3#M/^RH_.'\J, M!::9#]ZZD$[,T^%Q[T?2KYZZ5(A\K,<_\2,QE3[Z^Z@_[9+*7V:G[7VV?CV< M1V##[?@]_GS&'_4/[$. ]"%!^E @?6B0/N8@?9R"]'$&TL&UL4$L! A0#% @ MNH!I523PH*'G!0 1\ !@ ("!#@@ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I5>B;^KUR P G T !@ ("! M_S$ 'AL+W=OT$ "%"P & M @('N/ >&PO=V]R:W-H965T&UL4$L! A0#% @ MNH!I5:97K_G6!0 C@T !D ("!$4( 'AL+W=O2 >&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I50-F-V&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I55.%?))Z @ B04 !D M ("!U%L 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ NH!I51_T:04.!@ ( X !D ("!YFH 'AL M+W=OPLL" M !C!@ &0 @($K<0 >&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I M52A&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I5?S="-X8! GPD M !D ("!JX8 'AL+W=O&PO=V]R:W-H965T- !X;"]W;W)K&UL4$L! A0#% @ NH!I58$OJ+(- P 8@< !D M ("!4) 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ NH!I50X21 *X @ YP4 !D ("!)YH 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I57A/ M75P# P O 8 !D ("!&:4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I5>V.?-S6! @QH !D M ("!FZX 'AL+W=OR"L# ?# &0 @(&HLP >&PO M=V]R:W-H965T&UL4$L! A0#% @ NH!I55U9.D5\ @ B@8 !D ("! MH+D 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ NH!I570!/6_G! &!T !D ("!6,( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I5&PO=V]R M:W-H965T&UL M4$L! A0#% @ NH!I54D9?UET @ N < !D ("!L>D M 'AL+W=OXGT MKQP# \"P &0 @(%<[ >&PO=V]R:W-H965T)+4P( $@& 9 M " @:_O !X;"]W;W)K&UL4$L! A0#% @ MNH!I5:1X5YH8!@ ARL !D ("!.?( 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ NH!I56P5BA#R P M!@T !D ("!]P ! 'AL+W=O\&PO=V]R:W-H965T7!E&UL4$L%!@ !# $, 3!( +06 $ 0 $! end XML 74 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 75 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 76 FilingSummary.xml IDEA: XBRL DOCUMENT 3.22.2.2 html 225 228 1 true 48 0 false 7 false false R1.htm 000 - Document - Document And Entity Information Sheet http://www.nwpipe.com/20220930/role/statement-document-and-entity-information Document And Entity Information Cover 1 false false R2.htm 001 - Statement - Condensed Consolidated Statements of Operations (Unaudited) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited Condensed Consolidated Statements of Operations (Unaudited) Statements 2 false false R3.htm 002 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited Condensed Consolidated Statements of Comprehensive Income (Unaudited) Statements 3 false false R4.htm 003 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited Condensed Consolidated Balance Sheets (Current Period Unaudited) Statements 4 false false R5.htm 004 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals) Statements 5 false false R6.htm 005 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited Condensed Consolidated Statements of Stockholders' Equity (Unaudited) Statements 6 false false R7.htm 006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals) Statements 7 false false R8.htm 007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited) Sheet http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited Condensed Consolidated Statements of Cash Flows (Unaudited) Statements 8 false false R9.htm 008 - Disclosure - Note 1 - Organization and Basis of Presentation Sheet http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation Note 1 - Organization and Basis of Presentation Notes 9 false false R10.htm 009 - Disclosure - Note 2 - Business Combination Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination Note 2 - Business Combination Notes 10 false false R11.htm 010 - Disclosure - Note 3 - Inventories Sheet http://www.nwpipe.com/20220930/role/statement-note-3-inventories Note 3 - Inventories Notes 11 false false R12.htm 011 - Disclosure - Note 4 - Goodwill Sheet http://www.nwpipe.com/20220930/role/statement-note-4-goodwill Note 4 - Goodwill Notes 12 false false R13.htm 012 - Disclosure - Note 5 - Current Debt Sheet http://www.nwpipe.com/20220930/role/statement-note-5-current-debt Note 5 - Current Debt Notes 13 false false R14.htm 013 - Disclosure - Note 6 - Fair Value Measurements Sheet http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements Note 6 - Fair Value Measurements Notes 14 false false R15.htm 014 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities Sheet http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities Note 7 - Derivative Instruments and Hedging Activities Notes 15 false false R16.htm 015 - Disclosure - Note 8 - Stockholders' Equity Sheet http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity Note 8 - Stockholders' Equity Notes 16 false false R17.htm 016 - Disclosure - Note 9 - Share-based Compensation Sheet http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation Note 9 - Share-based Compensation Notes 17 false false R18.htm 017 - Disclosure - Note 10 - Commitments and Contingencies Sheet http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies Note 10 - Commitments and Contingencies Notes 18 false false R19.htm 018 - Disclosure - Note 11 - Revenue Sheet http://www.nwpipe.com/20220930/role/statement-note-11-revenue Note 11 - Revenue Notes 19 false false R20.htm 019 - Disclosure - Note 12 - Income Taxes Sheet http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes Note 12 - Income Taxes Notes 20 false false R21.htm 020 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss Sheet http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss Note 13 - Accumulated Other Comprehensive Loss Notes 21 false false R22.htm 021 - Disclosure - Note 14 - Net Income Per Share Sheet http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share Note 14 - Net Income Per Share Notes 22 false false R23.htm 022 - Disclosure - Note 15 - Segment Information Sheet http://www.nwpipe.com/20220930/role/statement-note-15-segment-information Note 15 - Segment Information Notes 23 false false R24.htm 023 - Disclosure - Note 16 - Recent Accounting and Reporting Developments Sheet http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments Note 16 - Recent Accounting and Reporting Developments Notes 24 false false R25.htm 024 - Disclosure - Note 2 - Business Combination (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables Note 2 - Business Combination (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-2-business-combination 25 false false R26.htm 025 - Disclosure - Note 3 - Inventories (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables Note 3 - Inventories (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-3-inventories 26 false false R27.htm 026 - Disclosure - Note 4 - Goodwill (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables Note 4 - Goodwill (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-4-goodwill 27 false false R28.htm 027 - Disclosure - Note 6 - Fair Value Measurements (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables Note 6 - Fair Value Measurements (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements 28 false false R29.htm 028 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables Note 7 - Derivative Instruments and Hedging Activities (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities 29 false false R30.htm 029 - Disclosure - Note 9 - Share-based Compensation (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables Note 9 - Share-based Compensation (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation 30 false false R31.htm 030 - Disclosure - Note 11 - Revenue (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables Note 11 - Revenue (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-11-revenue 31 false false R32.htm 031 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables Note 13 - Accumulated Other Comprehensive Loss (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss 32 false false R33.htm 032 - Disclosure - Note 14 - Net Income Per Share (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables Note 14 - Net Income Per Share (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share 33 false false R34.htm 033 - Disclosure - Note 15 - Segment Information (Tables) Sheet http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables Note 15 - Segment Information (Tables) Tables http://www.nwpipe.com/20220930/role/statement-note-15-segment-information 34 false false R35.htm 034 - Disclosure - Note 1 - Organization and Basis of Presentation (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual Note 1 - Organization and Basis of Presentation (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation 35 false false R36.htm 035 - Disclosure - Note 2 - Business Combination (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual Note 2 - Business Combination (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables 36 false false R37.htm 036 - Disclosure - Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details) Details 37 false false R38.htm 037 - Disclosure - Note 2 - Business Combination - Intangible Assets Acquired (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details Note 2 - Business Combination - Intangible Assets Acquired (Details) Details 38 false false R39.htm 038 - Disclosure - Note 2 - Business Combination - Pro Forma Summary (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details Note 2 - Business Combination - Pro Forma Summary (Details) Details 39 false false R40.htm 039 - Disclosure - Note 3 - Inventories - Components of Inventories (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details Note 3 - Inventories - Components of Inventories (Details) Details 40 false false R41.htm 040 - Disclosure - Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details) Details 41 false false R42.htm 041 - Disclosure - Note 5 - Current Debt (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual Note 5 - Current Debt (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-5-current-debt 42 false false R43.htm 042 - Disclosure - Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details) Details 43 false false R44.htm 043 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual Note 7 - Derivative Instruments and Hedging Activities (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables 44 false false R45.htm 044 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details) Details 45 false false R46.htm 045 - Disclosure - Note 8 - Stockholders' Equity (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual Note 8 - Stockholders' Equity (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity 46 false false R47.htm 046 - Disclosure - Note 9 - Share-based Compensation (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual Note 9 - Share-based Compensation (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables 47 false false R48.htm 047 - Disclosure - Note 9 - Share-based Compensation - Share-based Compensation Expense (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details Note 9 - Share-based Compensation - Share-based Compensation Expense (Details) Details 48 false false R49.htm 048 - Disclosure - Note 9 - Share-based Compensation - RSU and PSA Activity (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details Note 9 - Share-based Compensation - RSU and PSA Activity (Details) Details 49 false false R50.htm 049 - Disclosure - Note 10 - Commitments and Contingencies (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual Note 10 - Commitments and Contingencies (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies 50 false false R51.htm 050 - Disclosure - Note 11 - Revenue 1 (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual Note 11 - Revenue 1 (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables 51 false false R52.htm 051 - Disclosure - Note 11 - Revenue 2 (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual Note 11 - Revenue 2 (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables 52 false false R53.htm 052 - Disclosure - Note 11 - Revenue - Disaggregation of Revenue (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details Note 11 - Revenue - Disaggregation of Revenue (Details) Details 53 false false R54.htm 053 - Disclosure - Note 12 - Income Taxes (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual Note 12 - Income Taxes (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes 54 false false R55.htm 054 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details) Details 55 false false R56.htm 055 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details) Details 56 false false R57.htm 056 - Disclosure - Note 14 - Net Income Per Share (Details Textual) Sheet http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual Note 14 - Net Income Per Share (Details Textual) Details http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables 57 false false R58.htm 057 - Disclosure - Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details) Details 58 false false R59.htm 058 - Disclosure - Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details) Sheet http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details) Details 59 false false All Reports Book All Reports [ix-0514-Hidden-Fact-Eligible-For-Transform] WARN: 46 fact(s) appearing in ix:hidden were eligible for transformation: dei:EntityRegistrantName, nwpx:NumberOfInactiveStockIncentivePlans, nwpx:PerformanceShareAwardTargetLevelPercentage, us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment, us-gaap:AllowanceForDoubtfulAccountsReceivable, us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount, us-gaap:BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred, us-gaap:CommonStockParOrStatedValuePerShare, us-gaap:CommonStockSharesAuthorized, us-gaap:CommonStockSharesIssued, us-gaap:CommonStockSharesOutstanding, us-gaap:ContractWithCustomerLiabilityRevenueRecognized, us-gaap:DerivativeNotionalAmount, us-gaap:GoodwillPurchaseAccountingAdjustments, us-gaap:OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent, us-gaap:OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax, us-gaap:PreferredStockParOrStatedValuePerShare, us-gaap:PreferredStockSharesAuthorized, us-gaap:PreferredStockSharesIssued, us-gaap:PreferredStockSharesOutstanding, us-gaap:RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1 - nwpx20220930_10q.htm 8, 13, 14, 15, 16, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59 nwpx20220930_10q.htm ex_433123.htm ex_433124.htm ex_433125.htm ex_433126.htm ex_440600.htm nwpx-20220930.xsd nwpx-20220930_cal.xml nwpx-20220930_def.xml nwpx-20220930_lab.xml nwpx-20220930_pre.xml http://fasb.org/us-gaap/2022 http://xbrl.sec.gov/dei/2022 true true JSON 79 MetaLinks.json IDEA: XBRL DOCUMENT { "instance": { "nwpx20220930_10q.htm": { "axisCustom": 0, "axisStandard": 24, "contextCount": 225, "dts": { "calculationLink": { "local": [ "nwpx-20220930_cal.xml" ] }, "definitionLink": { "local": [ "nwpx-20220930_def.xml" ] }, "inline": { "local": [ "nwpx20220930_10q.htm" ] }, "labelLink": { "local": [ "nwpx-20220930_lab.xml" ] }, "presentationLink": { "local": [ "nwpx-20220930_pre.xml" ] }, "schema": { "local": [ "nwpx-20220930.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-roles-2022.xsd", "https://xbrl.fasb.org/srt/2022/elts/srt-types-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-gaap-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-roles-2022.xsd", "https://xbrl.fasb.org/us-gaap/2022/elts/us-types-2022.xsd", "https://xbrl.sec.gov/country/2022/country-2022.xsd", "https://xbrl.sec.gov/currency/2022/currency-2022.xsd", "https://xbrl.sec.gov/dei/2022/dei-2022.xsd", "https://xbrl.sec.gov/exch/2022/exch-2022.xsd", "https://xbrl.sec.gov/naics/2022/naics-2022.xsd", "https://xbrl.sec.gov/sic/2022/sic-2022.xsd", "https://xbrl.sec.gov/stpr/2022/stpr-2022.xsd" ] } }, "elementCount": 374, "entityCount": 1, "hidden": { "http://fasb.org/us-gaap/2022": 45, "http://www.nwpipe.com/20220930": 2, "http://xbrl.sec.gov/dei/2022": 6, "total": 53 }, "keyCustom": 21, "keyStandard": 207, "memberCustom": 16, "memberStandard": 32, "nsprefix": "nwpx", "nsuri": "http://www.nwpipe.com/20220930", "report": { "R1": { "firstAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "document", "isDefault": "true", "longName": "000 - Document - Document And Entity Information", "role": "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information", "shortName": "Document And Entity Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "b", "p", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "dei:DocumentType", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R10": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "009 - Disclosure - Note 2 - Business Combination", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "shortName": "Note 2 - Business Combination", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:BusinessCombinationDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R11": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "010 - Disclosure - Note 3 - Inventories", "role": "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "shortName": "Note 3 - Inventories", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:InventoryDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R12": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "011 - Disclosure - Note 4 - Goodwill", "role": "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "shortName": "Note 4 - Goodwill", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:GoodwillDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R13": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "012 - Disclosure - Note 5 - Current Debt", "role": "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "shortName": "Note 5 - Current Debt", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:LongTermDebtTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R14": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "013 - Disclosure - Note 6 - Fair Value Measurements", "role": "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "shortName": "Note 6 - Fair Value Measurements", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:FairValueDisclosuresTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R15": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "014 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities", "role": "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "shortName": "Note 7 - Derivative Instruments and Hedging Activities", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R16": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "015 - Disclosure - Note 8 - Stockholders' Equity", "role": "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "shortName": "Note 8 - Stockholders' Equity", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R17": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "016 - Disclosure - Note 9 - Share-based Compensation", "role": "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "shortName": "Note 9 - Share-based Compensation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R18": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "017 - Disclosure - Note 10 - Commitments and Contingencies", "role": "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "shortName": "Note 10 - Commitments and Contingencies", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R19": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "018 - Disclosure - Note 11 - Revenue", "role": "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "shortName": "Note 11 - Revenue", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R2": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "001 - Statement - Condensed Consolidated Statements of Operations (Unaudited)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "shortName": "Condensed Consolidated Statements of Operations (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "lang": null, "name": "us-gaap:SellingGeneralAndAdministrativeExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R20": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "019 - Disclosure - Note 12 - Income Taxes", "role": "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "shortName": "Note 12 - Income Taxes", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R21": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "020 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss", "role": "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "shortName": "Note 13 - Accumulated Other Comprehensive Loss", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ComprehensiveIncomeNoteTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R22": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "021 - Disclosure - Note 14 - Net Income Per Share", "role": "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "shortName": "Note 14 - Net Income Per Share", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:EarningsPerShareTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R23": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "022 - Disclosure - Note 15 - Segment Information", "role": "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "shortName": "Note 15 - Segment Information", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R24": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "023 - Disclosure - Note 16 - Recent Accounting and Reporting Developments", "role": "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "shortName": "Note 16 - Recent Accounting and Reporting Developments", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R25": { "firstAnchor": { "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "024 - Disclosure - Note 2 - Business Combination (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "shortName": "Note 2 - Business Combination (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R26": { "firstAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "nwpx:ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "025 - Disclosure - Note 3 - Inventories (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "shortName": "Note 3 - Inventories (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "nwpx:ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R27": { "firstAnchor": { "ancestors": [ "us-gaap:GoodwillDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "026 - Disclosure - Note 4 - Goodwill (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "shortName": "Note 4 - Goodwill (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:GoodwillDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R28": { "firstAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "027 - Disclosure - Note 6 - Fair Value Measurements (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "shortName": "Note 6 - Fair Value Measurements (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R29": { "firstAnchor": { "ancestors": [ "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "028 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "shortName": "Note 7 - Derivative Instruments and Hedging Activities (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R3": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "002 - Statement - Condensed Consolidated Statements of Comprehensive Income (Unaudited)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "shortName": "Condensed Consolidated Statements of Comprehensive Income (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "lang": null, "name": "us-gaap:ComprehensiveIncomeNetOfTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R30": { "firstAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "029 - Disclosure - Note 9 - Share-based Compensation (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables", "shortName": "Note 9 - Share-based Compensation (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R31": { "firstAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "030 - Disclosure - Note 11 - Revenue (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "shortName": "Note 11 - Revenue (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R32": { "firstAnchor": { "ancestors": [ "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "nwpx:ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "031 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "shortName": "Note 13 - Accumulated Other Comprehensive Loss (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "nwpx:ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R33": { "firstAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "032 - Disclosure - Note 14 - Net Income Per Share (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "shortName": "Note 14 - Net Income Per Share (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R34": { "firstAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "033 - Disclosure - Note 15 - Segment Information (Tables)", "role": "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "shortName": "Note 15 - Segment Information (Tables)", "subGroupType": "tables", "uniqueAnchor": { "ancestors": [ "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R35": { "firstAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "034 - Disclosure - Note 1 - Organization and Basis of Presentation (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual", "shortName": "Note 1 - Organization and Basis of Presentation (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:NumberOfOperatingSegments", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R36": { "firstAnchor": { "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-10-05_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "035 - Disclosure - Note 2 - Business Combination (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "shortName": "Note 2 - Business Combination (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-10-05_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": "0", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionPercentageOfVotingInterestsAcquired", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R37": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "036 - Disclosure - Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "shortName": "Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-10-05_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": "-3", "lang": null, "name": "us-gaap:BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R38": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2021-10-05_2021-10-05_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "037 - Disclosure - Note 2 - Business Combination - Intangible Assets Acquired (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "shortName": "Note 2 - Business Combination - Intangible Assets Acquired (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2021-10-05_2021-10-05_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } }, "R39": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2021-07-01_2021-09-30_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "038 - Disclosure - Note 2 - Business Combination - Pro Forma Summary (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "shortName": "Note 2 - Business Combination - Pro Forma Summary (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:BusinessAcquisitionProFormaInformationTextBlock", "us-gaap:BusinessCombinationDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2021-07-01_2021-09-30_BusinessAcquisitionAxis-ParkEnvironmentalEquipmentLlcMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:BusinessAcquisitionsProFormaRevenue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R4": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "003 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "shortName": "Condensed Consolidated Balance Sheets (Current Period Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R40": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "nwpx:ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "039 - Disclosure - Note 3 - Inventories - Components of Inventories (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details", "shortName": "Note 3 - Inventories - Components of Inventories (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "nwpx:ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock", "us-gaap:InventoryDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R41": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-12-31", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:Goodwill", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "040 - Disclosure - Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "shortName": "Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details)", "subGroupType": "details", "uniqueAnchor": null }, "R42": { "firstAnchor": { "ancestors": [ "p", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-08-31_DebtInstrumentAxis-InterimFundingAgreementifaMember", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentFaceAmount", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "041 - Disclosure - Note 5 - Current Debt (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual", "shortName": "Note 5 - Current Debt (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:LongTermDebtTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-08-31_DebtInstrumentAxis-InterimFundingAgreementifaMember", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:DebtInstrumentFaceAmount", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R43": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:DeferredCompensationPlanAssets", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "042 - Disclosure - Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "shortName": "Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "us-gaap:FairValueDisclosuresTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-4", "first": true, "lang": null, "name": "us-gaap:DeferredCompensationPlanAssets", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R44": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "043 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "shortName": "Note 7 - Derivative Instruments and Hedging Activities (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "us-gaap:ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R45": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30_HedgingDesignationAxis-NondesignatedMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "044 - Disclosure - Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "shortName": "Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "us-gaap:DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30_HedgingDesignationAxis-NondesignatedMember", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R46": { "firstAnchor": { "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-02", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "USDPerShare", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "045 - Disclosure - Note 8 - Stockholders' Equity (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual", "shortName": "Note 8 - Stockholders' Equity (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-02", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:CommonStockParOrStatedValuePerShare", "reportCount": 1, "unique": true, "unitRef": "USDPerShare", "xsiNil": "false" } }, "R47": { "firstAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "INF", "first": true, "lang": null, "name": "nwpx:NumberOfActiveStockIncentivePlans", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "046 - Disclosure - Note 9 - Share-based Compensation (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "shortName": "Note 9 - Share-based Compensation (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "INF", "first": true, "lang": null, "name": "nwpx:NumberOfActiveStockIncentivePlans", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R48": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "047 - Disclosure - Note 9 - Share-based Compensation - Share-based Compensation Expense (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "shortName": "Note 9 - Share-based Compensation - Share-based Compensation Expense (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AllocatedShareBasedCompensationExpense", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R49": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "nwpx:ScheduleOfUnvestedRestrictedStockUnitsAndPerformanceShareAwardsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-12-31_AwardTypeAxis-RestrictedStockUnitsAndPerformanceStockAwardsMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "048 - Disclosure - Note 9 - Share-based Compensation - RSU and PSA Activity (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "shortName": "Note 9 - Share-based Compensation - RSU and PSA Activity (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "nwpx:ScheduleOfUnvestedRestrictedStockUnitsAndPerformanceShareAwardsActivityTableTextBlock", "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-12-31_AwardTypeAxis-RestrictedStockUnitsAndPerformanceStockAwardsMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R5": { "firstAnchor": null, "groupType": "statement", "isDefault": "false", "longName": "004 - Statement - Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "shortName": "Condensed Consolidated Balance Sheets (Current Period Unaudited) (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R50": { "firstAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "nwpx:OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "049 - Disclosure - Note 10 - Commitments and Contingencies (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual", "shortName": "Note 10 - Commitments and Contingencies (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "nwpx:OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R51": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "nwpx:IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "050 - Disclosure - Note 11 - Revenue 1 (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual", "shortName": "Note 11 - Revenue 1 (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-5", "first": true, "lang": null, "name": "nwpx:IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R52": { "firstAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-10-01", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligationPercentage", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "051 - Disclosure - Note 11 - Revenue 2 (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual", "shortName": "Note 11 - Revenue 2 (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-09-30_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis-RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis.domain-2022-10-01", "decimals": "2", "first": true, "lang": null, "name": "us-gaap:RevenueRemainingPerformanceObligationPercentage", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R53": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "052 - Disclosure - Note 11 - Revenue - Disaggregation of Revenue (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "shortName": "Note 11 - Revenue - Disaggregation of Revenue (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:DisaggregationOfRevenueTableTextBlock", "us-gaap:RevenueFromContractWithCustomerTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30_TimingOfTransferOfGoodOrServiceAxis-TransferredOverTimeMember", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R54": { "firstAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "053 - Disclosure - Note 12 - Income Taxes (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual", "shortName": "Note 12 - Income Taxes (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "us-gaap:IncomeTaxDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "3", "first": true, "lang": null, "name": "us-gaap:EffectiveIncomeTaxRateContinuingOperations", "reportCount": 1, "unique": true, "unitRef": "Pure", "xsiNil": "false" } }, "R55": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2022-06-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "054 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "shortName": "Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "nwpx:ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2021-12-31_StatementEquityComponentsAxis-AccumulatedDefinedBenefitPlansAdjustmentMember", "decimals": "-3", "lang": null, "name": "us-gaap:StockholdersEquity", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R56": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:CostOfGoodsAndServicesSold", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "055 - Disclosure - Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "shortName": "Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock", "us-gaap:ComprehensiveIncomeNoteTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis-ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember", "decimals": "-3", "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R57": { "firstAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "056 - Disclosure - Note 14 - Net Income Per Share (Details Textual)", "role": "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual", "shortName": "Note 14 - Net Income Per Share (Details Textual)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "p", "td", "tr", "tbody", "table", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R58": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "057 - Disclosure - Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "shortName": "Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "us-gaap:EarningsPerShareTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "lang": null, "name": "us-gaap:WeightedAverageNumberDilutedSharesOutstandingAdjustment", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R59": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "058 - Disclosure - Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details)", "role": "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "shortName": "Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details)", "subGroupType": "details", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "us-gaap:SegmentReportingDisclosureTextBlock", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-07-01_2022-09-30_ConsolidationItemsAxis-OperatingSegmentsMember_StatementBusinessSegmentsAxis-EngineeredSteelPressurePipeMember", "decimals": "-3", "lang": null, "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R6": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "005 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "i_2020-12-31_StatementEquityComponentsAxis-CommonStockMember", "decimals": "INF", "first": true, "lang": null, "name": "us-gaap:SharesOutstanding", "reportCount": 1, "unique": true, "unitRef": "Share", "xsiNil": "false" } }, "R7": { "firstAnchor": null, "groupType": "statement", "isDefault": "false", "longName": "006 - Statement - Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "shortName": "Condensed Consolidated Statements of Stockholders' Equity (Unaudited) (Parentheticals)", "subGroupType": "parenthetical", "uniqueAnchor": null }, "R8": { "firstAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "-3", "first": true, "lang": null, "name": "us-gaap:NetIncomeLoss", "reportCount": 1, "unitRef": "USD", "xsiNil": "false" }, "groupType": "statement", "isDefault": "false", "longName": "007 - Statement - Condensed Consolidated Statements of Cash Flows (Unaudited)", "role": "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "shortName": "Condensed Consolidated Statements of Cash Flows (Unaudited)", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "td", "tr", "tbody", "table", "div", "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": "-3", "lang": null, "name": "nwpx:DepreciationAndFinanceLeaseRightOfUseAssetAmortization", "reportCount": 1, "unique": true, "unitRef": "USD", "xsiNil": "false" } }, "R9": { "firstAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" }, "groupType": "disclosure", "isDefault": "false", "longName": "008 - Disclosure - Note 1 - Organization and Basis of Presentation", "role": "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "shortName": "Note 1 - Organization and Basis of Presentation", "subGroupType": "", "uniqueAnchor": { "ancestors": [ "body", "html" ], "baseRef": "nwpx20220930_10q.htm", "contextRef": "d_2022-01-01_2022-09-30", "decimals": null, "first": true, "lang": "en-US", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "reportCount": 1, "unique": true, "unitRef": null, "xsiNil": "false" } } }, "segmentCount": 48, "tag": { "dei_AmendmentFlag": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission.", "label": "Amendment Flag" } } }, "localname": "AmendmentFlag", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_CityAreaCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Area code of city", "label": "City Area Code" } } }, "localname": "CityAreaCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_CurrentFiscalYearEndDate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "End date of current fiscal year in the format --MM-DD.", "label": "Current Fiscal Year End Date" } } }, "localname": "CurrentFiscalYearEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "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" } } }, "localname": "DocumentFiscalPeriodFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "fiscalPeriodItemType" }, "dei_DocumentFiscalYearFocus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "This is focus fiscal year of the document report in 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" } } }, "localname": "DocumentFiscalYearFocus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "gYearItemType" }, "dei_DocumentInformationLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Document Information [Line Items]" } } }, "localname": "DocumentInformationLineItems", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "stringItemType" }, "dei_DocumentInformationTable": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Container to support the formal attachment of each official or unofficial, public or private document as part of a submission package.", "label": "Document Information [Table]" } } }, "localname": "DocumentInformationTable", "nsuri": "http://xbrl.sec.gov/dei/2022", "xbrltype": "stringItemType" }, "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" } } }, "localname": "DocumentPeriodEndDate", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "dateItemType" }, "dei_DocumentQuarterlyReport": { "auth_ref": [ "r608" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as an quarterly report.", "label": "Document Quarterly Report" } } }, "localname": "DocumentQuarterlyReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_DocumentTransitionReport": { "auth_ref": [ "r609" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true only for a form used as a transition report.", "label": "Document Transition Report" } } }, "localname": "DocumentTransitionReport", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_DocumentType": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type of document being provided (such as 10-K, 10-Q, 485BPOS, etc). The document type is limited to the same value as the supporting SEC submission type, or the word 'Other'.", "label": "Document Type" } } }, "localname": "DocumentType", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "submissionTypeItemType" }, "dei_EntityAddressAddressLine1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Address Line 1 such as Attn, Building Name, Street Name", "label": "Entity Address, Address Line One" } } }, "localname": "EntityAddressAddressLine1", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressCityOrTown": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the City or Town", "label": "Entity Address, City or Town" } } }, "localname": "EntityAddressCityOrTown", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressPostalZipCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Code for the postal or zip code", "label": "Entity Address, Postal Zip Code" } } }, "localname": "EntityAddressPostalZipCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityAddressStateOrProvince": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Name of the state or province.", "label": "Entity Address, State or Province" } } }, "localname": "EntityAddressStateOrProvince", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "stateOrProvinceItemType" }, "dei_EntityCentralIndexKey": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK.", "label": "Entity Central Index Key" } } }, "localname": "EntityCentralIndexKey", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "centralIndexKeyItemType" }, "dei_EntityCommonStockSharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate number of shares or other units outstanding of each of registrant's classes of capital or common stock or other ownership interests, if and as stated on cover of related periodic report. Where multiple classes or units exist define each class/interest by adding class of stock items such as Common Class A [Member], Common Class B [Member] or Partnership Interest [Member] onto the Instrument [Domain] of the Entity Listings, Instrument.", "label": "Entity Common Stock, Shares Outstanding" } } }, "localname": "EntityCommonStockSharesOutstanding", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "sharesItemType" }, "dei_EntityCurrentReportingStatus": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Indicate 'Yes' or 'No' whether registrants (1) have filed all reports required to be filed by Section 13 or 15(d) of the Securities Exchange Act of 1934 during the preceding 12 months (or for such shorter period that registrants were required to file such reports), and (2) have been subject to such filing requirements for the past 90 days. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Current Reporting Status" } } }, "localname": "EntityCurrentReportingStatus", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "yesNoItemType" }, "dei_EntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "All the names of the entities being reported upon in a document. Any legal structure used to conduct activities or to hold assets. Some examples of such structures are corporations, partnerships, limited liability companies, grantor trusts, and other trusts. This item does not include business and geographical segments which are included in the geographical or business segments domains.", "label": "Entity [Domain]" } } }, "localname": "EntityDomain", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "domainItemType" }, "dei_EntityEmergingGrowthCompany": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "Indicate if registrant meets the emerging growth company criteria.", "label": "Entity Emerging Growth Company" } } }, "localname": "EntityEmergingGrowthCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntityFileNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Commission file number. The field allows up to 17 characters. The prefix may contain 1-3 digits, the sequence number may contain 1-8 digits, the optional suffix may contain 1-4 characters, and the fields are separated with a hyphen.", "label": "Entity File Number" } } }, "localname": "EntityFileNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "fileNumberItemType" }, "dei_EntityFilerCategory": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "Indicate whether the registrant is one of the following: Large Accelerated Filer, Accelerated Filer, Non-accelerated Filer. Definitions of these categories are stated in Rule 12b-2 of the Exchange Act. This information should be based on the registrant's current or most recent filing containing the related disclosure.", "label": "Entity Filer Category" } } }, "localname": "EntityFilerCategory", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "filerCategoryItemType" }, "dei_EntityIncorporationStateCountryCode": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Two-character EDGAR code representing the state or country of incorporation.", "label": "Entity Incorporation, State or Country Code" } } }, "localname": "EntityIncorporationStateCountryCode", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "edgarStateCountryItemType" }, "dei_EntityInteractiveDataCurrent": { "auth_ref": [ "r610" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant has submitted electronically every Interactive Data File required to be submitted pursuant to Rule 405 of Regulation S-T during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).", "label": "Entity Interactive Data Current" } } }, "localname": "EntityInteractiveDataCurrent", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "yesNoItemType" }, "dei_EntityRegistrantName": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC.", "label": "Entity Registrant Name" } } }, "localname": "EntityRegistrantName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_EntityShellCompany": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act.", "label": "Entity Shell Company" } } }, "localname": "EntityShellCompany", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntitySmallBusiness": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "Indicates that the company is a Smaller Reporting Company (SRC).", "label": "Entity Small Business" } } }, "localname": "EntitySmallBusiness", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "booleanItemType" }, "dei_EntityTaxIdentificationNumber": { "auth_ref": [ "r606" ], "lang": { "en-us": { "role": { "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS.", "label": "Entity Tax Identification Number" } } }, "localname": "EntityTaxIdentificationNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "employerIdItemType" }, "dei_LegalEntityAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The set of legal entities associated with a report.", "label": "Legal Entity [Axis]" } } }, "localname": "LegalEntityAxis", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "stringItemType" }, "dei_LocalPhoneNumber": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Local phone number for entity.", "label": "Local Phone Number" } } }, "localname": "LocalPhoneNumber", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "normalizedStringItemType" }, "dei_Security12bTitle": { "auth_ref": [ "r605" ], "lang": { "en-us": { "role": { "documentation": "Title of a 12(b) registered security.", "label": "Title of 12(b) Security" } } }, "localname": "Security12bTitle", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "securityTitleItemType" }, "dei_SecurityExchangeName": { "auth_ref": [ "r607" ], "lang": { "en-us": { "role": { "documentation": "Name of the Exchange on which a security is registered.", "label": "Security Exchange Name" } } }, "localname": "SecurityExchangeName", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "edgarExchangeCodeItemType" }, "dei_TradingSymbol": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Trading symbol of an instrument as listed on an exchange.", "label": "Trading Symbol" } } }, "localname": "TradingSymbol", "nsuri": "http://xbrl.sec.gov/dei/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-document-and-entity-information" ], "xbrltype": "tradingSymbolItemType" }, "nwpx_AtthemarketOfferingMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the At-the-Market Offering", "label": "At-the-Market Offering [Member]" } } }, "localname": "AtthemarketOfferingMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_BacklogMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents information related to backlog.", "label": "Backlog [Member]" } } }, "localname": "BacklogMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "domainItemType" }, "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities": { "auth_ref": [], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 0.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accrued liabilities, assumed at the acquisition date.", "label": "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "verboseLabel": "Accrued liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccruedLiabilities", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilities": { "auth_ref": [], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease liabilities assumed at the acquisition date.", "label": "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilities", "verboseLabel": "Operating lease liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseLiabilities", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets": { "auth_ref": [], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 6.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of operating lease right-of-use assets acquired at the acquisition date.", "label": "nwpx_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets", "verboseLabel": "Operating lease right-of-use assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedOperatingLeaseRightOfUseAssets", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "nwpx_DepreciationAndFinanceLeaseRightOfUseAssetAmortization": { "auth_ref": [], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 5.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 and amount of amortization expense attributable to right-of-use asset from finance lease.", "label": "Depreciation and finance lease amortization" } } }, "localname": "DepreciationAndFinanceLeaseRightOfUseAssetAmortization", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "nwpx_EngineeredSteelPressurePipeMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Engineered Steel Pressure Pipe segment.", "label": "Engineered Steel Pressure Pipe [Member]" } } }, "localname": "EngineeredSteelPressurePipeMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "domainItemType" }, "nwpx_EquityOfferingCommissionPercentageOfGrossProceeds": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the cash commission percentage of gross proceeds", "label": "nwpx_EquityOfferingCommissionPercentageOfGrossProceeds", "terseLabel": "Equity Offering, Commission, Percentage of Gross Proceeds" } } }, "localname": "EquityOfferingCommissionPercentageOfGrossProceeds", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "percentItemType" }, "nwpx_EquityOfferingMaximumOfferingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Maximum value of company's equity authorized for issuance under equity offering.", "label": "nwpx_EquityOfferingMaximumOfferingAmount", "terseLabel": "Equity Offering, Maximum Offering Amount" } } }, "localname": "EquityOfferingMaximumOfferingAmount", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "monetaryItemType" }, "nwpx_EstimatedCostOfEPASelectedRemedy": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The estimated cost of the remedy selected by EPA.", "label": "nwpx_EstimatedCostOfEPASelectedRemedy", "terseLabel": "Estimated Cost of EPA Selected Remedy" } } }, "localname": "EstimatedCostOfEPASelectedRemedy", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "monetaryItemType" }, "nwpx_EstimatedTimeToCompleteSelectedEPARemedy": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The estimated amount of time to complete the selected EPA remedy.", "label": "nwpx_EstimatedTimeToCompleteSelectedEPARemedy", "terseLabel": "Estimated Time to Complete Selected EPA Remedy (Year)" } } }, "localname": "EstimatedTimeToCompleteSelectedEPARemedy", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "durationItemType" }, "nwpx_IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the period of the amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer.", "label": "nwpx_IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax", "terseLabel": "Increase (Decrease) in Revenue from Contract with Customers, Including Assessed Tax" } } }, "localname": "IncreaseDecreaseInRevenueFromContractWithCustomersIncludingAssessedTax", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual" ], "xbrltype": "monetaryItemType" }, "nwpx_InterimFundingAgreementifaMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Interim Funding Agreement with Wells Fargo Finance Inc.", "label": "Interim Funding AgreementIFA [Member]" } } }, "localname": "InterimFundingAgreementifaMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_LowerWillametteGroupMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Refers to information regarding the Lower Willamette Group.", "label": "Lower Willamette Group [Member]" } } }, "localname": "LowerWillametteGroupMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_NoncashOrPartNoncashAcquisitionValueOfConsiderationAccrued": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of consideration accrued in acquiring a business or in consideration for an asset received in a noncash (or part noncash) acquisition.", "label": "Accrued consideration in acquisition of business" } } }, "localname": "NoncashOrPartNoncashAcquisitionValueOfConsiderationAccrued", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "nwpx_NoteToFinancialStatementDetailsTextual": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note To Financial Statement Details Textual" } } }, "localname": "NoteToFinancialStatementDetailsTextual", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_NotesToFinancialStatementsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Notes To Financial Statements [Abstract]" } } }, "localname": "NotesToFinancialStatementsAbstract", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_NumberOfActiveStockIncentivePlans": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of active stock incentive plans.", "label": "nwpx_NumberOfActiveStockIncentivePlans", "terseLabel": "Number Of Active Stock Incentive Plans" } } }, "localname": "NumberOfActiveStockIncentivePlans", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "integerItemType" }, "nwpx_NumberOfInactiveStockIncentivePlans": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of inactive stock incentive plans.", "label": "nwpx_NumberOfInactiveStockIncentivePlans", "terseLabel": "Number Of Inactive Stock Incentive Plans" } } }, "localname": "NumberOfInactiveStockIncentivePlans", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "integerItemType" }, "nwpx_NumberOfManufacturingFacilities": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents number of manufacturing facilities.", "label": "nwpx_NumberOfManufacturingFacilities", "terseLabel": "Number of Manufacturing Facilities" } } }, "localname": "NumberOfManufacturingFacilities", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual" ], "xbrltype": "integerItemType" }, "nwpx_NumberOfPotentiallyResponsibleParties": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of potentially responsible parties for Portland Harbor Superfund site.", "label": "nwpx_NumberOfPotentiallyResponsibleParties", "terseLabel": "Number Of Potentially Responsible Parties" } } }, "localname": "NumberOfPotentiallyResponsibleParties", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "integerItemType" }, "nwpx_OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of commitment of payment for equipment purchased but not received.", "label": "nwpx_OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived", "terseLabel": "Other Commitment, Amount Paid for Equipment Purchased Yet Not Received" } } }, "localname": "OtherCommitmentAmountPaidForEquipmentPurchasedYetNotReceived", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "monetaryItemType" }, "nwpx_ParkEnvironmentalEquipmentLlcMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Park Environmental Equipment, LLC.", "label": "Park Environmental Equipment, LLC [Member]" } } }, "localname": "ParkEnvironmentalEquipmentLlcMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details" ], "xbrltype": "domainItemType" }, "nwpx_PerformanceAwardsIssuedMultiplier": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The percentage of the performance awards issued multiplier.", "label": "nwpx_PerformanceAwardsIssuedMultiplier", "terseLabel": "Performance Awards Issued Multiplier" } } }, "localname": "PerformanceAwardsIssuedMultiplier", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "percentItemType" }, "nwpx_PerformanceShareAwardTargetLevelPercentage": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the target level percentage for performance share awards.", "label": "nwpx_PerformanceShareAwardTargetLevelPercentage", "terseLabel": "Performance Share Award Target Level, Percentage" } } }, "localname": "PerformanceShareAwardTargetLevelPercentage", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "percentItemType" }, "nwpx_PortlandHarborNaturalreSourcesTrusteeCouncilMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The name or description of the loss contingency by its nature.", "label": "Portland Harbor Natural Resources Trustee Council [Member]" } } }, "localname": "PortlandHarborNaturalreSourcesTrusteeCouncilMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_PortlandHarborSuperfundSiteMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents the Portland Harbor Superfund Site.", "label": "Portland Harbor Superfund Site [Member]" } } }, "localname": "PortlandHarborSuperfundSiteMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_PrecastInfrastructureAndEngineeredSystemsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents Precast Infrastructure and Engineered Systems segment.", "label": "Precast Infrastructure and Engineered Systems [Member]" } } }, "localname": "PrecastInfrastructureAndEngineeredSystemsMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "domainItemType" }, "nwpx_PropertyAndEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents property and equipment.", "label": "Property and Equipment [Member]" } } }, "localname": "PropertyAndEquipmentMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "nwpx_ReclassifiedToInterestExpenseMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Related to reclassified to interest expense.", "label": "Reclassified to Interest Expense [Member]" } } }, "localname": "ReclassifiedToInterestExpenseMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_ReclassifiedToNetSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Related to reclassified to net sales.", "label": "Reclassified to Net Sales [Member]" } } }, "localname": "ReclassifiedToNetSalesMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_ReclassifiedToPropertyAndEquipmentMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Related to reclassified to property and equipment.", "label": "Reclassified to Property and Equipment [Member]" } } }, "localname": "ReclassifiedToPropertyAndEquipmentMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_RestrictedStockUnitsAndPerformanceStockAwardsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The type or description of the award.", "label": "Restricted Stock Units and Performance Stock Awards [Member]" } } }, "localname": "RestrictedStockUnitsAndPerformanceStockAwardsMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "domainItemType" }, "nwpx_ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents schedule of changes in accumulated other comprehensive income loss.", "label": "Schedule of Changes in Accumulated Other Comprehensive Income Loss [Table Text Block]" } } }, "localname": "ScheduleOfChangesInAccumulatedOtherComprehensiveIncomeLossTableTextBlock", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables" ], "xbrltype": "textBlockItemType" }, "nwpx_ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock": { "auth_ref": [], "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. Includes current and non-current inventory balances.", "label": "Schedule Of Inventory Current And Non Current [Table Text Block]" } } }, "localname": "ScheduleOfInventoryCurrentAndNonCurrentTableTextBlock", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables" ], "xbrltype": "textBlockItemType" }, "nwpx_ScheduleOfUnvestedRestrictedStockUnitsAndPerformanceShareAwardsActivityTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the change in restricted stock units (RSUs) and performance share awards (PSAs).", "label": "Schedule of Unvested Restricted Stock Units and Performance Share Awards Activity [Table Text Block]" } } }, "localname": "ScheduleOfUnvestedRestrictedStockUnitsAndPerformanceShareAwardsActivityTableTextBlock", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "nwpx_SecondForeignExchangeForwardContractMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Related to the second foreign exchange forward contract.", "label": "Second Foreign Exchange Forward Contract [Member]" } } }, "localname": "SecondForeignExchangeForwardContractMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumberAtTargetLevelOfPerformance": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "The number of non-vested equity-based payment instruments at a target level of performance, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.", "label": "nwpx_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumberAtTargetLevelOfPerformance", "terseLabel": "Share Based Compensation Arrangement By Share Based Payment Award Equity Instruments Other Than Options Nonvested Number At Target Level Of Performance (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumberAtTargetLevelOfPerformance", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "sharesItemType" }, "nwpx_StockAwardsMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Represents stock awards.", "label": "Stock Awards [Member]" } } }, "localname": "StockAwardsMember", "nsuri": "http://www.nwpipe.com/20220930", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "nwpx_statement-statement-note-11-revenue-disaggregation-of-revenue-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 11 - Revenue - Disaggregation of Revenue (Details)" } } }, "localname": "statement-statement-note-11-revenue-disaggregation-of-revenue-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-11-revenue-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 11 - Revenue" } } }, "localname": "statement-statement-note-11-revenue-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Accumulated Other Comprehensive Loss - Components of Accumulated Other Comprehensive Loss (Details)" } } }, "localname": "statement-statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Accumulated Other Comprehensive Loss - Reclassification of Accumulated Other Comprehensive Loss (Details)" } } }, "localname": "statement-statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-13-accumulated-other-comprehensive-loss-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 13 - Accumulated Other Comprehensive Loss" } } }, "localname": "statement-statement-note-13-accumulated-other-comprehensive-loss-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 14 - Net Income Per Share - Loss Per Basic and Diluted Weighted Average Common Share Outstanding for Continuing and Discontinued Operations (Details)" } } }, "localname": "statement-statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-14-net-income-per-share-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 14 - Net Income Per Share" } } }, "localname": "statement-statement-note-14-net-income-per-share-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 15 - Segment Information - Information Related to the Operations of the Company's Operating Segments (Details)" } } }, "localname": "statement-statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-15-segment-information-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 15 - Segment Information" } } }, "localname": "statement-statement-note-15-segment-information-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Business Combination - Assets Acquired and Liabilities Assumed (Details)" } } }, "localname": "statement-statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-2-business-combination-intangible-assets-acquired-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Business Combination - Intangible Assets Acquired (Details)" } } }, "localname": "statement-statement-note-2-business-combination-intangible-assets-acquired-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-2-business-combination-pro-forma-summary-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Business Combination - Pro Forma Summary (Details)" } } }, "localname": "statement-statement-note-2-business-combination-pro-forma-summary-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-2-business-combination-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 2 - Business Combination" } } }, "localname": "statement-statement-note-2-business-combination-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-3-inventories-components-of-inventories-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 3 - Inventories - Components of Inventories (Details)" } } }, "localname": "statement-statement-note-3-inventories-components-of-inventories-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-3-inventories-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 3 - Inventories" } } }, "localname": "statement-statement-note-3-inventories-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 4 - Goodwill and Intangible Assets - Schedule of Goodwill (Details)" } } }, "localname": "statement-statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-4-goodwill-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 4 - Goodwill" } } }, "localname": "statement-statement-note-4-goodwill-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 6 - Fair Value Measurements - Assets and Liabilities Measured at Fair Value on Recurring Basis (Details)" } } }, "localname": "statement-statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-6-fair-value-measurements-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 6 - Fair Value Measurements" } } }, "localname": "statement-statement-note-6-fair-value-measurements-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Derivative Instruments and Hedging Activities - Summary of Gains (Losses) (Details)" } } }, "localname": "statement-statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-7-derivative-instruments-and-hedging-activities-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 7 - Derivative Instruments and Hedging Activities" } } }, "localname": "statement-statement-note-7-derivative-instruments-and-hedging-activities-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-9-sharebased-compensation-rsu-and-psa-activity-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 9 - Share-based Compensation - RSU and PSA Activity (Details)" } } }, "localname": "statement-statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-9-sharebased-compensation-sharebased-compensation-expense-details": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 9 - Share-based Compensation - Share-based Compensation Expense (Details)" } } }, "localname": "statement-statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "nwpx_statement-statement-note-9-sharebased-compensation-tables": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Note 9 - Share-based Compensation" } } }, "localname": "statement-statement-note-9-sharebased-compensation-tables", "nsuri": "http://www.nwpipe.com/20220930", "xbrltype": "stringItemType" }, "srt_ConsolidationItemsAxis": { "auth_ref": [ "r102", "r142", "r155", "r156", "r157", "r158", "r160", "r162", "r166", "r241", "r242", "r243", "r244", "r245", "r246", "r248", "r249", "r251", "r253", "r254" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Axis]" } } }, "localname": "ConsolidationItemsAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "stringItemType" }, "srt_ConsolidationItemsDomain": { "auth_ref": [ "r102", "r142", "r155", "r156", "r157", "r158", "r160", "r162", "r166", "r241", "r242", "r243", "r244", "r245", "r246", "r248", "r249", "r251", "r253", "r254" ], "lang": { "en-us": { "role": { "label": "Consolidation Items [Domain]" } } }, "localname": "ConsolidationItemsDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "domainItemType" }, "srt_CounterpartyNameAxis": { "auth_ref": [ "r44", "r46", "r100", "r101", "r260", "r282" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Axis]" } } }, "localname": "CounterpartyNameAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "stringItemType" }, "srt_DirectorMember": { "auth_ref": [ "r173" ], "lang": { "en-us": { "role": { "label": "Director [Member]" } } }, "localname": "DirectorMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_MaximumMember": { "auth_ref": [ "r231", "r233", "r234", "r235", "r259", "r281", "r386", "r392", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r591", "r592", "r603", "r604" ], "lang": { "en-us": { "role": { "label": "Maximum [Member]" } } }, "localname": "MaximumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_MinimumMember": { "auth_ref": [ "r231", "r233", "r234", "r235", "r259", "r281", "r386", "r392", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r591", "r592", "r603", "r604" ], "lang": { "en-us": { "role": { "label": "Minimum [Member]" } } }, "localname": "MinimumMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_RangeAxis": { "auth_ref": [ "r216", "r231", "r233", "r234", "r235", "r259", "r281", "r341", "r386", "r392", "r417", "r418", "r419", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r591", "r592", "r603", "r604" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Axis]" } } }, "localname": "RangeAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "stringItemType" }, "srt_RangeMember": { "auth_ref": [ "r216", "r231", "r233", "r234", "r235", "r259", "r281", "r341", "r386", "r392", "r417", "r418", "r419", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r591", "r592", "r603", "r604" ], "lang": { "en-us": { "role": { "label": "Statistical Measurement [Domain]" } } }, "localname": "RangeMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "srt_RepurchaseAgreementCounterpartyNameDomain": { "auth_ref": [ "r45", "r46", "r100", "r101", "r260", "r282" ], "lang": { "en-us": { "role": { "label": "Counterparty Name [Domain]" } } }, "localname": "RepurchaseAgreementCounterpartyNameDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "srt_ScenarioForecastMember": { "auth_ref": [ "r115", "r387" ], "lang": { "en-us": { "role": { "label": "Forecast [Member]" } } }, "localname": "ScenarioForecastMember", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "srt_ScenarioUnspecifiedDomain": { "auth_ref": [ "r115", "r120", "r229", "r387" ], "lang": { "en-us": { "role": { "label": "Scenario [Domain]" } } }, "localname": "ScenarioUnspecifiedDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "srt_StatementScenarioAxis": { "auth_ref": [ "r115", "r120", "r229", "r387", "r543" ], "lang": { "en-us": { "role": { "label": "Scenario [Axis]" } } }, "localname": "StatementScenarioAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualAxis": { "auth_ref": [ "r173", "r539" ], "lang": { "en-us": { "role": { "label": "Title of Individual [Axis]" } } }, "localname": "TitleOfIndividualAxis", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "stringItemType" }, "srt_TitleOfIndividualWithRelationshipToEntityDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Title of Individual [Domain]" } } }, "localname": "TitleOfIndividualWithRelationshipToEntityDomain", "nsuri": "http://fasb.org/srt/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_AccountsPayableCurrent": { "auth_ref": [ "r33", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accounts payable" } } }, "localname": "AccountsPayableCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccruedLiabilitiesCurrent": { "auth_ref": [ "r36" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Carrying value as of the balance sheet date of obligations incurred and payable, pertaining to costs that are statutory in nature, are incurred on contractual obligations, or accumulate over time and for which invoices have not yet been received or will not be rendered. Examples include taxes, interest, rent and utilities. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer).", "label": "Accrued liabilities" } } }, "localname": "AccruedLiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedDefinedBenefitPlansAdjustmentMember": { "auth_ref": [ "r47", "r53", "r60", "r61", "r62", "r480" ], "lang": { "en-us": { "role": { "documentation": "Accumulated other comprehensive (income) loss related to defined benefit plans attributable to the parent.", "label": "Accumulated Defined Benefit Plans Adjustment Attributable to Parent [Member]" } } }, "localname": "AccumulatedDefinedBenefitPlansAdjustmentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "auth_ref": [ "r11", "r212" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services.", "label": "Accumulated depreciation and amortization" } } }, "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedGainLossNetCashFlowHedgeParentMember": { "auth_ref": [ "r53", "r60", "r61", "r62", "r63", "r479" ], "lang": { "en-us": { "role": { "documentation": "Accumulated other comprehensive income (loss) from gain (loss) of derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.", "label": "Accumulated Gain (Loss), Net, Cash Flow Hedge, Parent [Member]" } } }, "localname": "AccumulatedGainLossNetCashFlowHedgeParentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "auth_ref": [ "r22", "r50", "r52", "r53", "r578", "r597", "r600" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Accumulated change in equity from transactions and other events and circumstances from non-owner sources, net of tax effect, at period end. Excludes Net Income (Loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners. Includes foreign currency translation items, certain pension adjustments, unrealized gains and losses on certain investments in debt and equity securities, other than temporary impairment (OTTI) losses related to factors other than credit losses on available-for-sale and held-to-maturity debt securities that an entity does not intend to sell and it is not more likely than not that the entity will be required to sell before recovery of the amortized cost basis, as well as changes in the fair value of derivatives related to the effective portion of a designated cash flow hedge.", "label": "Accumulated other comprehensive loss" } } }, "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r49", "r53", "r60", "r61", "r62", "r103", "r104", "r105", "r480", "r537", "r593", "r594" ], "lang": { "en-us": { "role": { "documentation": "Accumulated increase (decrease) in equity from transactions and other events and circumstances from non-owner sources, attributable to the parent. Excludes net income (loss), and accumulated changes in equity from transactions resulting from investments by owners and distributions to owners.", "label": "AOCI Attributable to Parent [Member]" } } }, "localname": "AccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife": { "auth_ref": [ "r206" ], "lang": { "en-us": { "role": { "documentation": "Weighted average amortization period of finite-lived intangible assets acquired either individually or as part of a group of assets, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days.", "label": "Intangible Asset Acquired, Useful Life (Year)" } } }, "localname": "AcquiredFiniteLivedIntangibleAssetsWeightedAverageUsefulLife", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "durationItemType" }, "us-gaap_AdditionalPaidInCapitalCommonStock": { "auth_ref": [ "r20" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value received from shareholders in common stock-related transactions that are in excess of par value or stated value and amounts received from other stock-related transactions. Includes only common stock transactions (excludes preferred stock transactions). May be called contributed capital, capital in excess of par, capital surplus, or paid-in capital.", "label": "Additional paid-in-capital" } } }, "localname": "AdditionalPaidInCapitalCommonStock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdditionalPaidInCapitalMember": { "auth_ref": [ "r103", "r104", "r105", "r427", "r428", "r429", "r501" ], "lang": { "en-us": { "role": { "documentation": "Excess of issue price over par or stated value of the entity's capital stock and amounts received from other transactions involving the entity's stock or stockholders.", "label": "Additional Paid-in Capital [Member]" } } }, "localname": "AdditionalPaidInCapitalMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "auth_ref": [ "r393", "r430", "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": "Share-based compensation expense" } } }, "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Adjustments to reconcile net income to net cash provided by (used in) operating activities:" } } }, "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_AllocatedShareBasedCompensationExpense": { "auth_ref": [ "r422" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of expense for award under share-based payment arrangement. Excludes amount capitalized.", "label": "us-gaap_AllocatedShareBasedCompensationExpense", "terseLabel": "Share-based compensation expense" } } }, "localname": "AllocatedShareBasedCompensationExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "auth_ref": [ "r26", "r174", "r182", "r183", "r184" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of allowance for credit loss on accounts receivable.", "label": "Allowance for doubtful accounts" } } }, "localname": "AllowanceForDoubtfulAccountsReceivable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "monetaryItemType" }, "us-gaap_AmortizationOfIntangibleAssets": { "auth_ref": [ "r87", "r203", "r210" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method.", "label": "us-gaap_AmortizationOfIntangibleAssets", "terseLabel": "Amortization of intangible assets" } } }, "localname": "AmortizationOfIntangibleAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "auth_ref": [ "r130" ], "lang": { "en-us": { "role": { "documentation": "Securities (including those issuable pursuant to contingent stock agreements) that could potentially dilute basic earnings per share (EPS) or earnings per unit (EPU) in the future that were not included in the computation of diluted EPS or EPU because to do so would increase EPS or EPU amounts or decrease loss per share or unit amounts for the period presented.", "label": "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "terseLabel": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount (in shares)" } } }, "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual" ], "xbrltype": "sharesItemType" }, "us-gaap_Assets": { "auth_ref": [ "r14", "r96", "r150", "r157", "r164", "r178", "r241", "r242", "r243", "r245", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r477", "r481", "r512", "r540", "r542", "r562", "r576" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "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": "us-gaap_Assets", "totalLabel": "Total assets" } } }, "localname": "Assets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrent": { "auth_ref": [ "r8", "r32", "r96", "r178", "r241", "r242", "r243", "r245", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r477", "r481", "r512", "r540", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events.", "label": "us-gaap_AssetsCurrent", "totalLabel": "Total current assets" } } }, "localname": "AssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_AssetsCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current assets:" } } }, "localname": "AssetsCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_AssetsFairValueDisclosure": { "auth_ref": [ "r508" ], "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": "Total financial assets" } } }, "localname": "AssetsFairValueDisclosure", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_AwardTypeAxis": { "auth_ref": [ "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420" ], "lang": { "en-us": { "role": { "documentation": "Information by type of award under share-based payment arrangement.", "label": "Award Type [Axis]" } } }, "localname": "AwardTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "auth_ref": [ "r382", "r388", "r466" ], "lang": { "en-us": { "role": { "documentation": "Identification of the acquiree in a material business combination (or series of individually immaterial business combinations), which may include the name or other type of identification of the acquiree.", "label": "Business Acquisition, Acquiree [Domain]" } } }, "localname": "BusinessAcquisitionAcquireeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details" ], "xbrltype": "domainItemType" }, "us-gaap_BusinessAcquisitionAxis": { "auth_ref": [ "r382", "r388", "r461", "r462", "r466" ], "lang": { "en-us": { "role": { "documentation": "Information by business combination or series of individually immaterial business combinations.", "label": "Business Acquisition [Axis]" } } }, "localname": "BusinessAcquisitionAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired": { "auth_ref": [ "r458" ], "lang": { "en-us": { "role": { "documentation": "Percentage of voting equity interests acquired at the acquisition date in the business combination.", "label": "us-gaap_BusinessAcquisitionPercentageOfVotingInterestsAcquired", "terseLabel": "Business Acquisition, Percentage of Voting Interests Acquired" } } }, "localname": "BusinessAcquisitionPercentageOfVotingInterestsAcquired", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_BusinessAcquisitionProFormaInformationTextBlock": { "auth_ref": [ "r459", "r460" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of pro forma results of operations for a material business acquisition or series of individually immaterial business acquisitions that are material in the aggregate.", "label": "Business Acquisition, Pro Forma Information [Table Text Block]" } } }, "localname": "BusinessAcquisitionProFormaInformationTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss": { "auth_ref": [ "r459", "r460" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The pro forma net Income or Loss for the period as if the business combination or combinations had been completed at the beginning of a period.", "label": "us-gaap_BusinessAcquisitionsProFormaNetIncomeLoss", "verboseLabel": "Net income" } } }, "localname": "BusinessAcquisitionsProFormaNetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessAcquisitionsProFormaRevenue": { "auth_ref": [ "r459", "r460" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The pro forma revenue for a period as if the business combination or combinations had been completed at the beginning of the period.", "label": "us-gaap_BusinessAcquisitionsProFormaRevenue", "verboseLabel": "Net sales" } } }, "localname": "BusinessAcquisitionsProFormaRevenue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationAcquisitionRelatedCosts": { "auth_ref": [ "r457" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "This element represents acquisition-related costs incurred to effect a business combination which costs have been expensed during the period. Such costs include finder's fees; advisory, legal, accounting, valuation, and other professional or consulting fees; general administrative costs, including the costs of maintaining an internal acquisitions department; and may include costs of registering and issuing debt and equity securities.", "label": "us-gaap_BusinessCombinationAcquisitionRelatedCosts", "terseLabel": "Business Combination, Acquisition Related Costs" } } }, "localname": "BusinessCombinationAcquisitionRelatedCosts", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "auth_ref": [ "r471", "r472", "r473" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of consideration transferred, consisting of acquisition-date fair value of assets transferred by the acquirer, liabilities incurred by the acquirer, and equity interest issued by the acquirer.", "label": "us-gaap_BusinessCombinationConsiderationTransferred1", "verboseLabel": "Total purchase consideration" } } }, "localname": "BusinessCombinationConsiderationTransferred1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationDisclosureTextBlock": { "auth_ref": [ "r467", "r474" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for a business combination (or series of individually immaterial business combinations) completed during the period, including background, timing, and recognized assets and liabilities. The disclosure may include leverage buyout transactions (as applicable).", "label": "Business Combination Disclosure [Text Block]" } } }, "localname": "BusinessCombinationDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination" ], "xbrltype": "textBlockItemType" }, "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred": { "auth_ref": [ "r465" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "This element represents the amount of any measurement period adjustment (as defined) realized during the reporting period to items of consideration transferred in connection with a business combination for which the initial accounting was incomplete.", "label": "us-gaap_BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred", "terseLabel": "Business Combination, Provisional Information, Initial Accounting Incomplete, Adjustment, Consideration Transferred" } } }, "localname": "BusinessCombinationProvisionalInformationInitialAccountingIncompleteAdjustmentConsiderationTransferred", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of assets acquired at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "totalLabel": "Total assets acquired" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssetsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 0.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of currency on hand as well as demand deposits with banks or financial institutions, acquired at the acquisition date. Includes other kinds of accounts that have the general characteristics of demand deposits. Also includes short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "verboseLabel": "Cash and cash equivalents" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCashAndEquivalents", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 1.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets", "verboseLabel": "Prepaid expenses and other" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsPrepaidExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 3.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount due from customers or clients for goods or services, including trade receivables, that have been delivered or sold in the normal course of business, and amounts due from others, including related parties expected to be converted to cash, sold or exchanged within one year or the normal operating cycle, if longer, acquired at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "verboseLabel": "Trade and other receivables" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentAssetsReceivables", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities incurred for goods and services received that are used in an entity's business and related party payables, assumed at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "verboseLabel": "Accounts payable" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedCurrentLiabilitiesAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 5.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of deferred tax asset attributable to deductible temporary differences and carryforwards acquired at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets", "verboseLabel": "Deferred income taxes" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedDeferredTaxAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 7.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of intangible assets, excluding goodwill, acquired at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "verboseLabel": "Intangible assets" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedIntangibleAssetsOtherThanGoodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory": { "auth_ref": [ "r463", "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 4.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of inventory recognized as of the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "verboseLabel": "Inventories" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedInventory", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities": { "auth_ref": [ "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities assumed at the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "totalLabel": "Total liabilities assumed" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Liabilities" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedLiabilitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "stringItemType" }, "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment": { "auth_ref": [ "r463", "r464" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details": { "order": 2.0, "parentTag": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedAssets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The amount of property, plant, and equipment recognized as of the acquisition date.", "label": "us-gaap_BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "verboseLabel": "Property and equipment" } } }, "localname": "BusinessCombinationRecognizedIdentifiableAssetsAcquiredAndLiabilitiesAssumedPropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "auth_ref": [ "r90", "r91", "r92" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred.", "label": "Accrued property and equipment purchases" } } }, "localname": "CapitalExpendituresIncurredButNotYetPaid", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "auth_ref": [ "r6", "r10", "r89" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "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" } } }, "localname": "CashAndCashEquivalentsAtCarryingValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations": { "auth_ref": [ "r84", "r89", "r93" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; 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": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "periodEndLabel": "Cash and cash equivalents, end of period", "periodStartLabel": "Cash and cash equivalents, beginning of period" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsIncludingDisposalGroupAndDiscontinuedOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "auth_ref": [ "r84", "r516" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "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": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "totalLabel": "Change in cash and cash equivalents" } } }, "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Noncash investing and financing activities:" } } }, "localname": "CashFlowNoncashInvestingAndFinancingActivitiesDisclosureAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_CommitmentsAndContingencies": { "auth_ref": [ "r40", "r566", "r583" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Represents the caption on the face of the balance sheet to indicate that the entity has entered into (1) purchase or supply arrangements that will require expending a portion of its resources to meet the terms thereof, and (2) is exposed to potential losses or, less frequently, gains, arising from (a) possible claims against a company's resources due to future performance under contract terms, and (b) possible losses or likely gains from uncertainties that will ultimately be resolved when one or more future events that are deemed likely to occur do occur or fail to occur.", "label": "Commitments and contingencies (Note 10)" } } }, "localname": "CommitmentsAndContingencies", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "auth_ref": [ "r225", "r226", "r227", "r236", "r602" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for commitments and contingencies.", "label": "Commitments and Contingencies Disclosure [Text Block]" } } }, "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies" ], "xbrltype": "textBlockItemType" }, "us-gaap_CommonStockMember": { "auth_ref": [ "r103", "r104", "r501" ], "lang": { "en-us": { "role": { "documentation": "Stock that is subordinate to all other stock of the issuer.", "label": "Common Stock [Member]" } } }, "localname": "CommonStockMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_CommonStockParOrStatedValuePerShare": { "auth_ref": [ "r19" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of common stock.", "label": "Common stock, par value (in dollars per share)", "terseLabel": "Common Stock, Par or Stated Value Per Share (in dollars per share)" } } }, "localname": "CommonStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "perShareItemType" }, "us-gaap_CommonStockSharesAuthorized": { "auth_ref": [ "r19" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws.", "label": "Common stock, shares authorized (in shares)" } } }, "localname": "CommonStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesIssued": { "auth_ref": [ "r19" ], "lang": { "en-us": { "role": { "documentation": "Total number of common shares of an entity that have been sold or granted to shareholders (includes common shares that were issued, repurchased and remain in the treasury). These shares represent capital invested by the firm's shareholders and owners, and may be all or only a portion of the number of shares authorized. Shares issued include shares outstanding and shares held in the treasury.", "label": "Common stock, shares issued (in shares)" } } }, "localname": "CommonStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockSharesOutstanding": { "auth_ref": [ "r19", "r294" ], "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 (in shares)" } } }, "localname": "CommonStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_CommonStockValue": { "auth_ref": [ "r19", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable common stock (or common stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable common shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Common stock, $.01 par value, 15,000,000 shares authorized, 9,927,360 and 9,870,567 shares issued and outstanding as of September 30, 2022 and December 31, 2021, respectively" } } }, "localname": "CommonStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNetOfTax": { "auth_ref": [ "r56", "r58", "r59", "r68", "r570", "r586" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of increase (decrease) in equity from transactions and other events and circumstances from net income and other comprehensive income, attributable to parent entity. Excludes changes in equity resulting from investments by owners and distributions to owners.", "label": "us-gaap_ComprehensiveIncomeNetOfTax", "totalLabel": "Comprehensive income" } } }, "localname": "ComprehensiveIncomeNetOfTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ComprehensiveIncomeNoteTextBlock": { "auth_ref": [ "r67", "r74", "r569", "r585" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for comprehensive income, which includes, but is not limited to, 1) the amount of income tax expense or benefit allocated to each component of other comprehensive income, including reclassification adjustments, 2) the reclassification adjustments for each classification of other comprehensive income and 3) the ending accumulated balances for each component of comprehensive income.", "label": "Comprehensive Income (Loss) Note [Text Block]" } } }, "localname": "ComprehensiveIncomeNoteTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss" ], "xbrltype": "textBlockItemType" }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "auth_ref": [ "r297", "r299", "r312" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after allowance for credit loss, of right to consideration in exchange for good or service transferred to customer when right is conditioned on something other than passage of time, classified as current.", "label": "Contract assets" } } }, "localname": "ContractWithCustomerAssetNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "auth_ref": [ "r297", "r298", "r312" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.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 liabilities" } } }, "localname": "ContractWithCustomerLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "auth_ref": [ "r313" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of revenue recognized that was previously included in balance of obligation to transfer good or service to customer for which consideration from customer has been received or is due.", "label": "us-gaap_ContractWithCustomerLiabilityRevenueRecognized", "terseLabel": "Contract with Customer, Liability, Revenue Recognized" } } }, "localname": "ContractWithCustomerLiabilityRevenueRecognized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfGoodsAndServicesSold": { "auth_ref": [ "r71", "r554" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 0.0, "parentTag": "us-gaap_GrossProfit", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The aggregate costs related to goods produced and sold and services rendered by an entity during the reporting period. This excludes costs incurred during the reporting period related to financial services rendered and other revenue generating activities.", "label": "Cost of sales" } } }, "localname": "CostOfGoodsAndServicesSold", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_CostOfSalesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing cost of sales.", "label": "Cost of Sales [Member]" } } }, "localname": "CostOfSalesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details" ], "xbrltype": "domainItemType" }, "us-gaap_CustomerRelationshipsMember": { "auth_ref": [ "r469" ], "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]" } } }, "localname": "CustomerRelationshipsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "domainItemType" }, "us-gaap_DebtInstrumentAxis": { "auth_ref": [ "r15", "r16", "r17", "r95", "r102", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r274", "r275", "r276", "r277", "r526", "r563", "r564", "r575" ], "lang": { "en-us": { "role": { "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities.", "label": "Debt Instrument [Axis]" } } }, "localname": "DebtInstrumentAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument.", "label": "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1", "terseLabel": "Debt Instrument, Basis Spread on Variable Rate" } } }, "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_DebtInstrumentFaceAmount": { "auth_ref": [ "r256", "r274", "r275", "r524", "r526", "r527" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Face (par) amount of debt instrument at time of issuance.", "label": "us-gaap_DebtInstrumentFaceAmount", "terseLabel": "Debt Instrument, Face Amount" } } }, "localname": "DebtInstrumentFaceAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DebtInstrumentNameDomain": { "auth_ref": [ "r38", "r95", "r102", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r270", "r271", "r272", "r274", "r275", "r276", "r277", "r526" ], "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]" } } }, "localname": "DebtInstrumentNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_DeferredCompensationPlanAssets": { "auth_ref": [ "r13" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount as of the balance sheet date of assets held under deferred compensation agreements.", "label": "Deferred compensation plan" } } }, "localname": "DeferredCompensationPlanAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "auth_ref": [ "r87", "r97", "r440", "r448", "r449", "r450" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 8.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 taxes" } } }, "localname": "DeferredIncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DeferredIncomeTaxLiabilitiesNet": { "auth_ref": [ "r433", "r434" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after deferred tax asset, of deferred tax liability attributable to taxable differences with jurisdictional netting.", "label": "us-gaap_DeferredIncomeTaxLiabilitiesNet", "terseLabel": "Deferred income taxes" } } }, "localname": "DeferredIncomeTaxLiabilitiesNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeAssets": { "auth_ref": [ "r42", "r43", "r46", "r511" ], "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": "us-gaap_DerivativeAssets", "terseLabel": "Derivative assets" } } }, "localname": "DerivativeAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeContractTypeDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Financial instrument or contract with one or more underlyings, notional amount or payment provision or both, and the contract can be net settled by means outside the contract or delivery of an asset.", "label": "Derivative Contract [Domain]" } } }, "localname": "DerivativeContractTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_DerivativeFixedInterestRate": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Fixed interest rate related to the interest rate derivative.", "label": "us-gaap_DerivativeFixedInterestRate", "terseLabel": "Derivative, Fixed Interest Rate" } } }, "localname": "DerivativeFixedInterestRate", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_DerivativeInstrumentRiskAxis": { "auth_ref": [ "r46", "r487", "r488", "r490", "r494" ], "lang": { "en-us": { "role": { "documentation": "Information by type of derivative contract.", "label": "Derivative Instrument [Axis]" } } }, "localname": "DerivativeInstrumentRiskAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "stringItemType" }, "us-gaap_DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock": { "auth_ref": [ "r498", "r507" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for derivative instruments and hedging activities including, but not limited to, risk management strategies, non-hedging derivative instruments, assets, liabilities, revenue and expenses, and methodologies and assumptions used in determining the amounts.", "label": "Derivative Instruments and Hedging Activities Disclosure [Text Block]" } } }, "localname": "DerivativeInstrumentsAndHedgingActivitiesDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities" ], "xbrltype": "textBlockItemType" }, "us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet": { "auth_ref": [ "r489", "r491" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of realized and unrealized gain (loss) of derivative instruments not designated or qualifying as hedging instruments.", "label": "us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet", "verboseLabel": "Gains (losses) recognized on derivatives" } } }, "localname": "DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeLiabilities": { "auth_ref": [ "r42", "r43", "r46", "r511" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Fair value, after the effects of master netting arrangements, of a financial liability 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. Includes liabilities not subject to a master netting arrangement and not elected to be offset.", "label": "us-gaap_DerivativeLiabilities", "negatedTerseLabel": "Foreign currency forward contracts" } } }, "localname": "DerivativeLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_DerivativeNotionalAmount": { "auth_ref": [ "r484", "r485" ], "lang": { "en-us": { "role": { "documentation": "Nominal or face amount used to calculate payment on derivative.", "label": "us-gaap_DerivativeNotionalAmount", "terseLabel": "Derivative, Notional Amount" } } }, "localname": "DerivativeNotionalAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_DesignatedAsHedgingInstrumentMember": { "auth_ref": [ "r486" ], "lang": { "en-us": { "role": { "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).", "label": "Designated as Hedging Instrument [Member]" } } }, "localname": "DesignatedAsHedgingInstrumentMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "auth_ref": [ "r311" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor.", "label": "Disaggregation of Revenue [Table Text Block]" } } }, "localname": "DisaggregationOfRevenueTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "auth_ref": [ "r394", "r395", "r423", "r424", "r426", "r432" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for share-based payment arrangement.", "label": "Share-Based Payment Arrangement [Text Block]" } } }, "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation" ], "xbrltype": "textBlockItemType" }, "us-gaap_DisclosureTextBlockAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "us-gaap_DisclosureTextBlockAbstract", "terseLabel": "Notes to Financial Statements" } } }, "localname": "DisclosureTextBlockAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "us-gaap_EarningsPerShareAbstract", "terseLabel": "Net income per share:" } } }, "localname": "EarningsPerShareAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_EarningsPerShareBasic": { "auth_ref": [ "r69", "r112", "r113", "r114", "r115", "r116", "r123", "r125", "r127", "r128", "r129", "r133", "r134", "r502", "r503", "r571", "r587" ], "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": "Basic (in dollars per share)", "terseLabel": "Basic (in dollars per share)" } } }, "localname": "EarningsPerShareBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareDiluted": { "auth_ref": [ "r69", "r112", "r113", "r114", "r115", "r116", "r125", "r127", "r128", "r129", "r133", "r134", "r502", "r503", "r571", "r587" ], "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": "Diluted (in dollars per share)", "terseLabel": "Diluted (in dollars per share)" } } }, "localname": "EarningsPerShareDiluted", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "perShareItemType" }, "us-gaap_EarningsPerShareTextBlock": { "auth_ref": [ "r130", "r131", "r132", "r135" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for earnings per share.", "label": "Earnings Per Share [Text Block]" } } }, "localname": "EarningsPerShareTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share" ], "xbrltype": "textBlockItemType" }, "us-gaap_EffectiveIncomeTaxRateContinuingOperations": { "auth_ref": [ "r436" ], "lang": { "en-us": { "role": { "documentation": "Percentage of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations.", "label": "us-gaap_EffectiveIncomeTaxRateContinuingOperations", "terseLabel": "Effective Income Tax Rate Reconciliation, Percent, Total" } } }, "localname": "EffectiveIncomeTaxRateContinuingOperations", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "auth_ref": [ "r425" ], "lang": { "en-us": { "role": { "documentation": "Weighted-average period over which cost not yet recognized is expected to be recognized for award under share-based payment arrangement, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "terseLabel": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition (Year)" } } }, "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "durationItemType" }, "us-gaap_EnvironmentalRemediationSiteAxis": { "auth_ref": [ "r217", "r218", "r219", "r220", "r221", "r234", "r235" ], "lang": { "en-us": { "role": { "documentation": "Information by location or named area designated for environmental remediation.", "label": "Environmental Remediation Site [Axis]" } } }, "localname": "EnvironmentalRemediationSiteAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_EnvironmentalRemediationSiteDomain": { "auth_ref": [ "r217", "r218", "r219", "r220", "r221", "r234", "r235" ], "lang": { "en-us": { "role": { "documentation": "Location or named area designated for environmental remediation.", "label": "Environmental Remediation Site [Domain]" } } }, "localname": "EnvironmentalRemediationSiteDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_EquityComponentDomain": { "auth_ref": [ "r0", "r60", "r61", "r62", "r103", "r104", "r105", "r109", "r117", "r119", "r136", "r179", "r294", "r295", "r427", "r428", "r429", "r441", "r442", "r501", "r517", "r518", "r519", "r520", "r521", "r522", "r537", "r593", "r594", "r595" ], "lang": { "en-us": { "role": { "documentation": "Components of equity are the parts of the total Equity balance including that which is allocated to common, preferred, treasury stock, retained earnings, etc.", "label": "Equity Component [Domain]" } } }, "localname": "EquityComponentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "auth_ref": [ "r265", "r274", "r275", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r378", "r509", "r544", "r545", "r546" ], "lang": { "en-us": { "role": { "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient.", "label": "Fair Value Hierarchy and NAV [Axis]" } } }, "localname": "FairValueByFairValueHierarchyLevelAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "stringItemType" }, "us-gaap_FairValueDisclosuresTextBlock": { "auth_ref": [ "r510" ], "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]" } } }, "localname": "FairValueDisclosuresTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements" ], "xbrltype": "textBlockItemType" }, "us-gaap_FairValueInputsLevel1Member": { "auth_ref": [ "r265", "r342", "r343", "r348", "r378", "r509", "r544" ], "lang": { "en-us": { "role": { "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date.", "label": "Fair Value, Inputs, Level 1 [Member]" } } }, "localname": "FairValueInputsLevel1Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel2Member": { "auth_ref": [ "r265", "r274", "r275", "r342", "r343", "r348", "r378", "r509", "r545" ], "lang": { "en-us": { "role": { "documentation": "Inputs other than quoted prices included within level 1 that are observable for an asset or liability, either directly or indirectly, including, but not limited to, quoted prices for similar assets or liabilities in active markets, or quoted prices for identical or similar assets or liabilities in inactive markets.", "label": "Fair Value, Inputs, Level 2 [Member]" } } }, "localname": "FairValueInputsLevel2Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueInputsLevel3Member": { "auth_ref": [ "r265", "r274", "r275", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r378", "r509", "r546" ], "lang": { "en-us": { "role": { "documentation": "Unobservable inputs that reflect the entity's own assumption about the assumptions market participants would use in pricing.", "label": "Fair Value, Inputs, Level 3 [Member]" } } }, "localname": "FairValueInputsLevel3Member", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "auth_ref": [ "r265", "r274", "r275", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r378", "r544", "r545", "r546" ], "lang": { "en-us": { "role": { "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value.", "label": "Fair Value Hierarchy and NAV [Domain]" } } }, "localname": "FairValueMeasurementsFairValueHierarchyDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details" ], "xbrltype": "domainItemType" }, "us-gaap_FinanceLeasePrincipalPayments": { "auth_ref": [ "r532", "r533" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for principal payment on finance lease.", "label": "us-gaap_FinanceLeasePrincipalPayments", "negatedLabel": "Payments on finance lease obligations" } } }, "localname": "FinanceLeasePrincipalPayments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "auth_ref": [ "r204", "r207", "r209", "r211", "r555", "r559" ], "lang": { "en-us": { "role": { "documentation": "Information by major type or class of finite-lived intangible assets.", "label": "Finite-Lived Intangible Assets by Major Class [Axis]" } } }, "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "stringItemType" }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "auth_ref": [ "r204", "r208" ], "lang": { "en-us": { "role": { "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company.", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]" } } }, "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "domainItemType" }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "auth_ref": [ "r209", "r555" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.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": "Intangible assets, net" } } }, "localname": "FiniteLivedIntangibleAssetsNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_FinitelivedIntangibleAssetsAcquired1": { "auth_ref": [ "r205" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in assets, excluding financial assets, lacking physical substance with a definite life, from an acquisition.", "label": "Intangible Asset Acquired, Fair Value" } } }, "localname": "FinitelivedIntangibleAssetsAcquired1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months": { "auth_ref": [ "r497" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The estimated net amount of unrealized gains or losses on foreign currency cash flow hedges at the reporting date expected to be reclassified to earnings within the next 12 months.", "label": "us-gaap_ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months", "terseLabel": "Foreign Currency Cash Flow Hedge Gain (Loss) to be Reclassified During Next 12 Months" } } }, "localname": "ForeignCurrencyCashFlowHedgeGainLossToBeReclassifiedDuringNext12Months", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_ForeignExchangeForwardMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Foreign exchange forward traded on an exchange (examples include but are not limited to the International Securities Exchange, Philadelphia Stock Exchange, or the Chicago Mercantile Exchange) for options or future contracts to buy or sell a certain currency, at a specified date, at a fixed exercise exchange rate.", "label": "Foreign Exchange Forward [Member]" } } }, "localname": "ForeignExchangeForwardMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_Goodwill": { "auth_ref": [ "r12", "r188", "r189", "r196", "r201", "r542", "r561" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "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", "periodStartLabel": "Goodwill", "verboseLabel": "Goodwill" } } }, "localname": "Goodwill", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GoodwillDisclosureTextBlock": { "auth_ref": [ "r197", "r199", "r201", "r202" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for goodwill.", "label": "Goodwill Disclosure [Text Block]" } } }, "localname": "GoodwillDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill" ], "xbrltype": "textBlockItemType" }, "us-gaap_GoodwillPurchaseAccountingAdjustments": { "auth_ref": [ "r195", "r456" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) from adjustments after acquisition date under purchase accounting of an asset representing the future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized.", "label": "Measurement period adjustment (Note 2)", "terseLabel": "Goodwill, Purchase Accounting Adjustments" } } }, "localname": "GoodwillPurchaseAccountingAdjustments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_GrossProfit": { "auth_ref": [ "r70", "r96", "r150", "r156", "r160", "r163", "r166", "r178", "r241", "r242", "r243", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r512" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 0.0, "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity.", "label": "Gross profit", "totalLabel": "Gross profit" } } }, "localname": "GrossProfit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_HedgingDesignationAxis": { "auth_ref": [ "r486", "r495" ], "lang": { "en-us": { "role": { "documentation": "Information by designation of purpose of derivative instrument.", "label": "Hedging Designation [Axis]" } } }, "localname": "HedgingDesignationAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "stringItemType" }, "us-gaap_HedgingDesignationDomain": { "auth_ref": [ "r486" ], "lang": { "en-us": { "role": { "documentation": "Designation of purpose of derivative instrument.", "label": "Hedging Designation [Domain]" } } }, "localname": "HedgingDesignationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "auth_ref": [ "r65", "r150", "r156", "r160", "r163", "r166", "r560", "r567", "r573", "r588" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 0.0, "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (loss) from continuing operations, including income (loss) from equity method investments, before deduction of income tax expense (benefit), and income (loss) attributable to noncontrolling interest.", "label": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "totalLabel": "Income before income taxes" } } }, "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncomeStatementAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Income Statement [Abstract]" } } }, "localname": "IncomeStatementAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationAxis": { "auth_ref": [ "r214", "r222" ], "lang": { "en-us": { "role": { "documentation": "Information by location in the income statement.", "label": "Income Statement Location [Axis]" } } }, "localname": "IncomeStatementLocationAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details" ], "xbrltype": "stringItemType" }, "us-gaap_IncomeStatementLocationDomain": { "auth_ref": [ "r222" ], "lang": { "en-us": { "role": { "documentation": "Location in the income statement.", "label": "Income Statement Location [Domain]" } } }, "localname": "IncomeStatementLocationDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details" ], "xbrltype": "domainItemType" }, "us-gaap_IncomeTaxDisclosureTextBlock": { "auth_ref": [ "r98", "r437", "r438", "r439", "r446", "r451", "r453", "r454", "r455" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for income taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information.", "label": "Income Tax Disclosure [Text Block]" } } }, "localname": "IncomeTaxDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes" ], "xbrltype": "textBlockItemType" }, "us-gaap_IncomeTaxExpenseBenefit": { "auth_ref": [ "r99", "r118", "r119", "r148", "r435", "r447", "r452", "r589" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 1.0, "parentTag": "us-gaap_NetIncomeLoss", "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", "negatedLabel": "Tax (expense) benefit" } } }, "localname": "IncomeTaxExpenseBenefit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsAndOtherReceivables": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "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 amount due from customers for the credit sale of goods and services; includes accounts receivable and other types of receivables.", "label": "us-gaap_IncreaseDecreaseInAccountsAndOtherReceivables", "negatedTerseLabel": "Trade and other receivables" } } }, "localname": "IncreaseDecreaseInAccountsAndOtherReceivables", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate amount of liabilities incurred (and for which invoices have typically been received) and payable to vendors for goods and services received that are used in an entity's business.", "label": "us-gaap_IncreaseDecreaseInAccountsPayable", "terseLabel": "Accounts payable" } } }, "localname": "IncreaseDecreaseInAccountsPayable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 9.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in accrued expenses, and obligations classified as other.", "label": "us-gaap_IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities", "terseLabel": "Accrued and other liabilities" } } }, "localname": "IncreaseDecreaseInAccruedLiabilitiesAndOtherOperatingLiabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 2.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": "us-gaap_IncreaseDecreaseInContractWithCustomerAsset", "negatedLabel": "Contract assets, net" } } }, "localname": "IncreaseDecreaseInContractWithCustomerAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInInventories": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The increase (decrease) during the reporting period in the aggregate value of all inventory held by the reporting entity, associated with underlying transactions that are classified as operating activities.", "label": "us-gaap_IncreaseDecreaseInInventories", "negatedTerseLabel": "Inventories" } } }, "localname": "IncreaseDecreaseInInventories", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 6.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) in prepaid expenses, and assets classified as other.", "label": "us-gaap_IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "negatedTerseLabel": "Prepaid expenses and other assets" } } }, "localname": "IncreaseDecreaseInPrepaidDeferredExpenseAndOtherAssets", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpense": { "auth_ref": [ "r64", "r144", "r523", "r525", "r572" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 1.0, "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of the cost of borrowed funds accounted for as interest expense.", "label": "Interest expense", "negatedLabel": "Interest expense" } } }, "localname": "InterestExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InterestExpenseMember": { "auth_ref": [ "r493" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing interest expense.", "label": "Interest Expense [Member]" } } }, "localname": "InterestExpenseMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_InterestRateSwapMember": { "auth_ref": [ "r492" ], "lang": { "en-us": { "role": { "documentation": "Forward based contracts in which two parties agree to swap periodic payments that are fixed at the outset of the swap contract with variable payments based on a market interest rate (index rate) over a specified period.", "label": "Interest Rate Swap [Member]" } } }, "localname": "InterestRateSwapMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_InventoryDisclosureTextBlock": { "auth_ref": [ "r187" ], "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]" } } }, "localname": "InventoryDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories" ], "xbrltype": "textBlockItemType" }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "auth_ref": [ "r27", "r186" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details": { "order": 1.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of merchandise or goods held by the company that are readily available for sale.", "label": "Finished goods" } } }, "localname": "InventoryFinishedGoodsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryNet": { "auth_ref": [ "r7", "r31", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 }, "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer.", "label": "Inventories", "totalLabel": "Total inventories" } } }, "localname": "InventoryNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "auth_ref": [ "r29", "r186" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details": { "order": 0.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of valuation reserves and adjustments, as of the balance sheet date of unprocessed items to be consumed in the manufacturing or production process.", "label": "Raw materials" } } }, "localname": "InventoryRawMaterialsNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventorySuppliesNetOfReserves": { "auth_ref": [ "r30", "r185" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details": { "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 products used directly or indirectly in the manufacturing or production process, which may or may not become part of the final product. May also include items used in the storage, presentation or transportation of physical goods.", "label": "Supplies" } } }, "localname": "InventorySuppliesNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "auth_ref": [ "r28", "r186" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details": { "order": 2.0, "parentTag": "us-gaap_InventoryNet", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Carrying amount, net of reserves and adjustments, as of the balance sheet date of merchandise or goods which are partially completed. This inventory is generally comprised of raw materials, labor and factory overhead costs, which require further materials, labor and overhead to be converted into finished goods, and which generally require the use of estimates to determine percentage complete and pricing.", "label": "Work-in-process" } } }, "localname": "InventoryWorkInProcessNetOfReserves", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_LettersOfCreditOutstandingAmount": { "auth_ref": [], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date.", "label": "us-gaap_LettersOfCreditOutstandingAmount", "terseLabel": "Letters of Credit Outstanding, Amount" } } }, "localname": "LettersOfCreditOutstandingAmount", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_Liabilities": { "auth_ref": [ "r35", "r96", "r158", "r178", "r241", "r242", "r243", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r478", "r481", "r482", "r512", "r540", "r541" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Sum of the carrying amounts as of the balance sheet date of all liabilities that are recognized. Liabilities are probable future sacrifices of economic benefits arising from present obligations of an entity to transfer assets or provide services to other entities in the future.", "label": "us-gaap_Liabilities", "totalLabel": "Total liabilities" } } }, "localname": "Liabilities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesAndStockholdersEquity": { "auth_ref": [ "r25", "r96", "r178", "r512", "r542", "r565", "r580" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any.", "label": "us-gaap_LiabilitiesAndStockholdersEquity", "totalLabel": "Total liabilities and stockholders\u2019 equity" } } }, "localname": "LiabilitiesAndStockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrent": { "auth_ref": [ "r9", "r37", "r96", "r178", "r241", "r242", "r243", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r478", "r481", "r482", "r512", "r540", "r541", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total obligations incurred as part of normal operations that are expected to be paid during the following twelve months or within one business cycle, if longer.", "label": "us-gaap_LiabilitiesCurrent", "totalLabel": "Total current liabilities" } } }, "localname": "LiabilitiesCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LiabilitiesCurrentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Current liabilities:" } } }, "localname": "LiabilitiesCurrentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_LongTermDebt": { "auth_ref": [ "r17", "r264", "r273", "r274", "r275", "r564", "r577" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, excluding unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation.", "label": "us-gaap_LongTermDebt", "terseLabel": "Long-Term Debt, Total" } } }, "localname": "LongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtCurrent": { "auth_ref": [ "r34" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after unamortized (discount) premium and debt issuance costs, of long-term debt, classified as current. Includes, but not limited to, notes payable, bonds payable, debentures, mortgage loans and commercial paper. Excludes capital lease obligations.", "label": "Current debt" } } }, "localname": "LongTermDebtCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LongTermDebtTextBlock": { "auth_ref": [ "r278" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for long-term debt.", "label": "Long-Term Debt [Text Block]" } } }, "localname": "LongTermDebtTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt" ], "xbrltype": "textBlockItemType" }, "us-gaap_LongTermLineOfCredit": { "auth_ref": [ "r38", "r239", "r240" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The carrying value as of the balance sheet date of the noncurrent portion 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": "Borrowings on line of credit" } } }, "localname": "LongTermLineOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingenciesByNatureOfContingencyAxis": { "auth_ref": [ "r228", "r230", "r231", "r232", "r233", "r237", "r238" ], "lang": { "en-us": { "role": { "documentation": "Information by type of existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur.", "label": "Loss Contingency Nature [Axis]" } } }, "localname": "LossContingenciesByNatureOfContingencyAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_LossContingencyAccrualCarryingValueCurrent": { "auth_ref": [ "r228" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of loss contingency liability expected to be resolved within one year or the normal operating cycle, if longer.", "label": "us-gaap_LossContingencyAccrualCarryingValueCurrent", "terseLabel": "Loss Contingency, Accrual, Current" } } }, "localname": "LossContingencyAccrualCarryingValueCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_LossContingencyNatureDomain": { "auth_ref": [ "r228", "r230", "r231", "r232", "r233", "r237", "r238" ], "lang": { "en-us": { "role": { "documentation": "An existing condition, situation, or set of circumstances involving uncertainty as to possible loss to an enterprise that will ultimately be resolved when one or more future events occur or fail to occur. Resolution of the uncertainty may confirm the incurrence of a loss or impairment of an asset or the incurrence of a liability.", "label": "Loss Contingency, Nature [Domain]" } } }, "localname": "LossContingencyNatureDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "auth_ref": [ "r84" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 1.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": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "totalLabel": "Net cash used in financing activities" } } }, "localname": "NetCashProvidedByUsedInFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from financing activities:" } } }, "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "auth_ref": [ "r84" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 0.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": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "totalLabel": "Net cash used in investing activities" } } }, "localname": "NetCashProvidedByUsedInInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from investing activities:" } } }, "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "auth_ref": [ "r84", "r85", "r88" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 2.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": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "totalLabel": "Net cash provided by (used in) operating activities" } } }, "localname": "NetCashProvidedByUsedInOperatingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Cash flows from operating activities:" } } }, "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_NetIncomeLoss": { "auth_ref": [ "r4", "r54", "r57", "r62", "r66", "r88", "r96", "r108", "r112", "r113", "r114", "r115", "r118", "r119", "r126", "r150", "r156", "r160", "r163", "r166", "r178", "r241", "r242", "r243", "r246", "r247", "r248", "r250", "r252", "r254", "r255", "r503", "r512", "r568", "r584" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0 }, "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 }, "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "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", "totalLabel": "Net income" } } }, "localname": "NetIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock": { "auth_ref": [ "r1", "r106", "r107", "r110", "r111", "r120", "r121", "r122", "r176", "r177", "r180", "r181", "r443", "r444", "r445", "r500", "r504", "r505", "r506", "r513", "r514", "r515", "r528", "r529", "r536", "r538", "r556", "r557", "r558", "r596", "r597", "r598", "r599", "r600" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for change in accounting principle. Includes, but is not limited to, nature, reason, and method of adopting amendment to accounting standards or other change in accounting principle.", "label": "Accounting Standards Update and Change in Accounting Principle [Text Block]" } } }, "localname": "NewAccountingPronouncementsAndChangesInAccountingPrinciplesTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments" ], "xbrltype": "textBlockItemType" }, "us-gaap_NondesignatedMember": { "auth_ref": [ "r486" ], "lang": { "en-us": { "role": { "documentation": "Derivative instrument not designated as hedging instrument under Generally Accepted Accounting Principles (GAAP).", "label": "Not Designated as Hedging Instrument [Member]" } } }, "localname": "NondesignatedMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_NumberOfOperatingSegments": { "auth_ref": [ "r138" ], "lang": { "en-us": { "role": { "documentation": "Number of operating segments. An operating segment is a component of an enterprise: (a) that engages in business activities from which it may earn revenues and incur expenses (including revenues and expenses relating to transactions with other components of the same enterprise), (b) whose operating results are regularly reviewed by the enterprise's chief operating decision maker to make decisions about resources to be allocated to the segment and assess its performance, and (c) for which discrete financial information is available. An operating segment may engage in business activities for which it has yet to earn revenues, for example, start-up operations may be operating segments before earning revenues.", "label": "us-gaap_NumberOfOperatingSegments", "terseLabel": "Number of Operating Segments" } } }, "localname": "NumberOfOperatingSegments", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual" ], "xbrltype": "integerItemType" }, "us-gaap_OciBeforeReclassificationsNetOfTaxAttributableToParent": { "auth_ref": [ "r53", "r63" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details": { "order": 0.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax, before reclassification adjustments, of other comprehensive income (loss), attributable to parent.", "label": "Other comprehensive income (loss) before reclassifications" } } }, "localname": "OciBeforeReclassificationsNetOfTaxAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingIncomeLoss": { "auth_ref": [ "r150", "r156", "r160", "r163", "r166" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 2.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": "us-gaap_OperatingIncomeLoss", "totalLabel": "Operating income" } } }, "localname": "OperatingIncomeLoss", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityCurrent": { "auth_ref": [ "r531" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current.", "label": "Current portion of operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "auth_ref": [ "r531" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_Liabilities", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent.", "label": "Operating lease liabilities" } } }, "localname": "OperatingLeaseLiabilityNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingLeaseRightOfUseAsset": { "auth_ref": [ "r530" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of lessee's right to use underlying asset under operating lease.", "label": "us-gaap_OperatingLeaseRightOfUseAsset", "terseLabel": "Operating lease right-of-use assets" } } }, "localname": "OperatingLeaseRightOfUseAsset", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OperatingSegmentsMember": { "auth_ref": [ "r155", "r156", "r157", "r158", "r160", "r166" ], "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]" } } }, "localname": "OperatingSegmentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "domainItemType" }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "auth_ref": [ "r5", "r483" ], "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]" } } }, "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation" ], "xbrltype": "textBlockItemType" }, "us-gaap_OtherAssetsNoncurrent": { "auth_ref": [ "r13" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 5.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" } } }, "localname": "OtherAssetsNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r48", "r50", "r475", "r479" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and reclassification adjustment, of (increase) decrease in accumulated other comprehensive income for defined benefit plan, attributable to parent.", "label": "us-gaap_OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent", "negatedLabel": "Pension liability adjustment" } } }, "localname": "OtherComprehensiveIncomeDefinedBenefitPlansAdjustmentNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent": { "auth_ref": [ "r50" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after tax and reclassification, of gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.", "label": "Unrealized gain (loss) on cash flow hedges" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTaxParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent": { "auth_ref": [ "r51" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount, after reclassification, of tax expense (benefit) for gain (loss) from derivative instrument designated and qualifying as cash flow hedge included in assessment of hedge effectiveness, attributable to parent.", "label": "Unrealized gain (loss) on cash flow hedges, tax expense/benefit" } } }, "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTaxParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "auth_ref": [ "r55", "r58", "r475", "r476", "r479" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited": { "order": 0.0, "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0 }, "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity.", "label": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "totalLabel": "Net current period other comprehensive income (loss)" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Other comprehensive income (loss), net of tax:" } } }, "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax": { "auth_ref": [ "r48", "r51", "r475" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount, after reclassification adjustment, of tax (expense) benefit for (increase) decrease in accumulated other comprehensive income of defined benefit plan.", "label": "Pension liability adjustment, tax expense/benefit" } } }, "localname": "OtherComprehensiveIncomeLossPensionAndOtherPostretirementBenefitPlansTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherLiabilitiesNoncurrent": { "auth_ref": [ "r39" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 2.0, "parentTag": "us-gaap_Liabilities", "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 long-term liabilities" } } }, "localname": "OtherLiabilitiesNoncurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNoncashIncomeExpense": { "auth_ref": [ "r88" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 11.0, "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other.", "label": "us-gaap_OtherNoncashIncomeExpense", "negatedLabel": "Other, net" } } }, "localname": "OtherNoncashIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_OtherNonoperatingIncomeExpense": { "auth_ref": [ "r73" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 0.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 income" } } }, "localname": "OtherNonoperatingIncomeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PatentsMember": { "auth_ref": [ "r470" ], "lang": { "en-us": { "role": { "documentation": "Exclusive legal right granted by the government to the owner of the patent to exploit an invention or a process for a period of time specified by law.", "label": "Patents [Member]" } } }, "localname": "PatentsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "domainItemType" }, "us-gaap_PaymentsForProceedsFromOtherInvestingActivities": { "auth_ref": [ "r75", "r78" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash (inflow) outflow from investing activities classified as other.", "label": "us-gaap_PaymentsForProceedsFromOtherInvestingActivities", "negatedLabel": "Other investing activities" } } }, "localname": "PaymentsForProceedsFromOtherInvestingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation": { "auth_ref": [ "r81" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 5.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow to satisfy grantee's tax withholding obligation for award under share-based payment arrangement.", "label": "us-gaap_PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "negatedLabel": "Tax withholdings related to net share settlements of equity awards" } } }, "localname": "PaymentsRelatedToTaxWithholdingForShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired": { "auth_ref": [ "r76" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of a business, net of the cash acquired from the purchase.", "label": "us-gaap_PaymentsToAcquireBusinessesNetOfCashAcquired", "terseLabel": "Payments to Acquire Businesses, Net of Cash Acquired, Total" } } }, "localname": "PaymentsToAcquireBusinessesNetOfCashAcquired", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "auth_ref": [ "r77" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow associated with the acquisition of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale; includes cash outflows to pay for construction of self-constructed assets.", "label": "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment", "negatedLabel": "Purchases of property and equipment" } } }, "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PensionPlansDefinedBenefitMember": { "auth_ref": [ "r317", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r388", "r389", "r390", "r391" ], "lang": { "en-us": { "role": { "documentation": "Plan designed to provide participant with pension benefits. Includes, but is not limited to, defined benefit and defined contribution plans. Excludes other postretirement benefits.", "label": "Pension Plan [Member]" } } }, "localname": "PensionPlansDefinedBenefitMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals" ], "xbrltype": "domainItemType" }, "us-gaap_PerformanceSharesMember": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Share-based payment arrangement awarded for meeting performance target.", "label": "Performance Shares [Member]" } } }, "localname": "PerformanceSharesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "auth_ref": [ "r18", "r279" ], "lang": { "en-us": { "role": { "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer.", "label": "Preferred stock, par value (in dollars per share)" } } }, "localname": "PreferredStockParOrStatedValuePerShare", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "perShareItemType" }, "us-gaap_PreferredStockSharesAuthorized": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "The maximum number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) permitted to be issued by an entity's charter and bylaws.", "label": "Preferred stock, shares authorized (in shares)" } } }, "localname": "PreferredStockSharesAuthorized", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesIssued": { "auth_ref": [ "r18", "r279" ], "lang": { "en-us": { "role": { "documentation": "Total number of nonredeemable preferred shares (or preferred stock redeemable solely at the option of the issuer) issued to shareholders (includes related preferred shares that were issued, repurchased, and remain in the treasury). May be all or portion of the number of preferred shares authorized. Excludes preferred shares that are classified as debt.", "label": "Preferred stock, shares issued (in shares)" } } }, "localname": "PreferredStockSharesIssued", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockSharesOutstanding": { "auth_ref": [ "r18" ], "lang": { "en-us": { "role": { "documentation": "Aggregate share number for all nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer) held by stockholders. Does not include preferred shares that have been repurchased.", "label": "Preferred stock, shares outstanding (in shares)" } } }, "localname": "PreferredStockSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals" ], "xbrltype": "sharesItemType" }, "us-gaap_PreferredStockValue": { "auth_ref": [ "r18", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 4.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Aggregate par or stated value of issued nonredeemable preferred stock (or preferred stock redeemable solely at the option of the issuer). This item includes treasury stock repurchased by the entity. Note: elements for number of nonredeemable preferred shares, par value and other disclosure concepts are in another section within stockholders' equity.", "label": "Preferred stock, $.01 par value, 10,000,000 shares authorized, none issued or outstanding" } } }, "localname": "PreferredStockValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PrepaidExpenseAndOtherAssetsCurrent": { "auth_ref": [ "r32" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 3.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of asset related to consideration paid in advance for costs that provide economic benefits in future periods, and amount of other assets that are expected to be realized or consumed within one year or the normal operating cycle, if longer.", "label": "Prepaid expenses and other" } } }, "localname": "PrepaidExpenseAndOtherAssetsCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromIssuanceOfLongTermDebt": { "auth_ref": [ "r79" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 4.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The cash inflow from a debt initially having maturity due after one year or beyond the operating cycle, if longer.", "label": "Borrowings on other debt" } } }, "localname": "ProceedsFromIssuanceOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromLinesOfCredit": { "auth_ref": [ "r79", "r95" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 2.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow from contractual arrangement with the lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "us-gaap_ProceedsFromLinesOfCredit", "terseLabel": "Borrowings on line of credit" } } }, "localname": "ProceedsFromLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ProceedsFromPaymentsForOtherFinancingActivities": { "auth_ref": [ "r80", "r83" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 0.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of cash inflow (outflow) from financing activities classified as other.", "label": "Other financing activities" } } }, "localname": "ProceedsFromPaymentsForOtherFinancingActivities", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentGrossPeriodIncreaseDecrease": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Amount of increase (decrease) of long-lived, physical assets used in the normal conduct of business and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, furniture and fixtures, and computer equipment.", "label": "Property and equipment" } } }, "localname": "PropertyPlantAndEquipmentGrossPeriodIncreaseDecrease", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_PropertyPlantAndEquipmentNet": { "auth_ref": [ "r213", "r542", "r574", "r582" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_Assets", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after accumulated depreciation, depletion and amortization of physical assets used in the normal conduct of business to produce goods and services and not intended for resale. Examples include, but are not limited to, land, buildings, machinery and equipment, office equipment, and furniture and fixtures.", "label": "Property and equipment, less accumulated depreciation and amortization of $115,377 and $106,957" } } }, "localname": "PropertyPlantAndEquipmentNet", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReceivablesNetCurrent": { "auth_ref": [ "r542", "r581", "r601" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "The total amount due to the entity within one year of the balance sheet date (or one operating cycle, if longer) from outside sources, including trade accounts receivable, notes and loans receivable, as well as any other types of receivables, net of allowances established for the purpose of reducing such receivables to an amount that approximates their net realizable value.", "label": "Trade and other receivables, less allowance for doubtful accounts of $498 and $503" } } }, "localname": "ReceivablesNetCurrent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent": { "auth_ref": [ "r53", "r63" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details": { "order": 1.0, "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": -1.0 } }, "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount after tax of reclassification adjustments of other comprehensive income (loss) attributable to parent.", "label": "us-gaap_ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent", "negatedLabel": "Amounts reclassified from Accumulated other comprehensive loss" } } }, "localname": "ReclassificationFromAociCurrentPeriodNetOfTaxAttributableToParent", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis": { "auth_ref": [ "r62" ], "lang": { "en-us": { "role": { "documentation": "Information by item reclassified out of accumulated other comprehensive income (loss).", "label": "Reclassification out of Accumulated Other Comprehensive Income [Axis]" } } }, "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "stringItemType" }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain": { "auth_ref": [ "r62" ], "lang": { "en-us": { "role": { "documentation": "Item reclassified out of accumulated other comprehensive income (loss).", "label": "Reclassification out of Accumulated Other Comprehensive Income [Domain]" } } }, "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember": { "auth_ref": [ "r62" ], "lang": { "en-us": { "role": { "documentation": "Identifies item reclassified out of accumulated other comprehensive income (loss).", "label": "Reclassification out of Accumulated Other Comprehensive Income [Member]" } } }, "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "domainItemType" }, "us-gaap_ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of information about items reclassified out of accumulated other comprehensive income (loss).", "label": "Reclassification out of Accumulated Other Comprehensive Income [Table Text Block]" } } }, "localname": "ReclassificationOutOfAccumulatedOtherComprehensiveIncomeTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ReclassificationTypeAxis": { "auth_ref": [ "r2" ], "lang": { "en-us": { "role": { "documentation": "Information by type of reclassification adjustment affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.", "label": "Reclassification, Type [Axis]" } } }, "localname": "ReclassificationTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_ReclassificationTypeDomain": { "auth_ref": [ "r2" ], "lang": { "en-us": { "role": { "documentation": "Type of reclassification adjustment affecting comparability of financial statement. Excludes amendment to accounting standards, other change in accounting principle, and correction of error.", "label": "Reclassification, Type [Domain]" } } }, "localname": "ReclassificationTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_RepaymentsOfLinesOfCredit": { "auth_ref": [ "r82", "r95" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 1.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of cash outflow for payment of an obligation from a lender, including but not limited to, letter of credit, standby letter of credit and revolving credit arrangements.", "label": "us-gaap_RepaymentsOfLinesOfCredit", "negatedLabel": "Repayments on line of credit" } } }, "localname": "RepaymentsOfLinesOfCredit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_RepaymentsOfLongTermDebt": { "auth_ref": [ "r82" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "order": 3.0, "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cash outflow for debt initially having maturity due after one year or beyond the normal operating cycle, if longer.", "label": "us-gaap_RepaymentsOfLongTermDebt", "negatedLabel": "Payments on other debt" } } }, "localname": "RepaymentsOfLongTermDebt", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "auth_ref": [ "r21", "r295", "r542", "r579", "r596", "r600" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 0.0, "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained earnings" } } }, "localname": "RetainedEarningsAccumulatedDeficit", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_RetainedEarningsMember": { "auth_ref": [ "r0", "r103", "r104", "r105", "r109", "r117", "r119", "r179", "r427", "r428", "r429", "r441", "r442", "r501", "r593", "r595" ], "lang": { "en-us": { "role": { "documentation": "The cumulative amount of the reporting entity's undistributed earnings or deficit.", "label": "Retained Earnings [Member]" } } }, "localname": "RetainedEarningsMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "domainItemType" }, "us-gaap_RetirementPlanTypeAxis": { "auth_ref": [ "r317", "r318", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r388", "r389", "r390", "r391" ], "lang": { "en-us": { "role": { "documentation": "Information by type of retirement benefit plan. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.", "label": "Retirement Plan Type [Axis]" } } }, "localname": "RetirementPlanTypeAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals" ], "xbrltype": "stringItemType" }, "us-gaap_RetirementPlanTypeDomain": { "auth_ref": [ "r317", "r318", "r319", "r320", "r321", "r322", "r323", "r324", "r325", "r326", "r327", "r328", "r329", "r330", "r331", "r332", "r333", "r334", "r335", "r336", "r337", "r338", "r339", "r340", "r341", "r342", "r343", "r344", "r345", "r346", "r347", "r348", "r349", "r350", "r351", "r352", "r353", "r354", "r355", "r356", "r357", "r358", "r359", "r360", "r361", "r362", "r363", "r364", "r365", "r366", "r367", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r388", "r389", "r390", "r391" ], "lang": { "en-us": { "role": { "documentation": "Type of plan designed to provide participants with retirement benefits. Includes, but is not limited to, retirement benefit arrangement for defined benefit pension and other postretirement plans, retirement benefit arrangement for defined contribution pension and other postretirement plans, and special and contractual termination benefits payable upon retirement.", "label": "Retirement Plan Type [Domain]" } } }, "localname": "RetirementPlanTypeDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals" ], "xbrltype": "domainItemType" }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "auth_ref": [ "r141", "r142", "r155", "r161", "r162", "r168", "r169", "r171", "r310", "r311", "r554" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "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": "Net sales" } } }, "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "auth_ref": [ "r300", "r301", "r302", "r303", "r304", "r305", "r308", "r309", "r314", "r316" ], "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]" } } }, "localname": "RevenueFromContractWithCustomerTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue" ], "xbrltype": "textBlockItemType" }, "us-gaap_RevenueRemainingPerformanceObligation": { "auth_ref": [ "r306" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue.", "label": "us-gaap_RevenueRemainingPerformanceObligation", "terseLabel": "Revenue, Remaining Performance Obligation, Amount" } } }, "localname": "RevenueRemainingPerformanceObligation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "auth_ref": [ "r307" ], "lang": { "en-us": { "role": { "documentation": "Period in which remaining performance obligation is expected to be recognized as revenue, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days.", "label": "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period (Year)" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual" ], "xbrltype": "durationItemType" }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "auth_ref": [ "r307" ], "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]" } } }, "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_RevenueRemainingPerformanceObligationPercentage": { "auth_ref": [ "r307" ], "lang": { "en-us": { "role": { "documentation": "Percentage of remaining performance obligation to total remaining performance obligation not recognized as revenue.", "label": "us-gaap_RevenueRemainingPerformanceObligationPercentage", "terseLabel": "Revenue, Remaining Performance Obligation, Percentage" } } }, "localname": "RevenueRemainingPerformanceObligationPercentage", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual" ], "xbrltype": "percentItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability": { "auth_ref": [ "r534", "r535" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in right-of-use asset obtained in exchange for finance lease liability.", "label": "Right-of-use assets obtained in exchange for finance lease liabilities" } } }, "localname": "RightOfUseAssetObtainedInExchangeForFinanceLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability": { "auth_ref": [ "r534", "r535" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Amount of increase in right-of-use asset obtained in exchange for operating lease liability.", "label": "Right-of-use assets obtained in exchange for operating lease liabilities" } } }, "localname": "RightOfUseAssetObtainedInExchangeForOperatingLeaseLiability", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_SaleOfStockNameOfTransactionDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Sale of the entity's stock, including, but not limited to, initial public offering (IPO) and private placement.", "label": "Sale of Stock [Domain]" } } }, "localname": "SaleOfStockNameOfTransactionDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_SalesMember": { "auth_ref": [ "r493" ], "lang": { "en-us": { "role": { "documentation": "Primary financial statement caption encompassing revenue from sale of goods and services rendered in the normal course of business.", "label": "Sales [Member]" } } }, "localname": "SalesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details" ], "xbrltype": "domainItemType" }, "us-gaap_ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock": { "auth_ref": [ "r204" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the characteristics, including initial carrying value, residual amount, weighted average useful life, of finite-lived intangible assets acquired during the period by major class. A major class is composed of intangible assets that can be grouped together because they are similar, either by nature or by their use in the operations of the company.", "label": "Schedule of Acquired Finite-Lived Intangible Assets by Major Class [Table Text Block]" } } }, "localname": "ScheduleOfAcquiredFiniteLivedIntangibleAssetsByMajorClassTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock": { "auth_ref": [ "r461", "r462" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of a material business combination completed during the period, including background, timing, and recognized assets and liabilities. This table does not include leveraged buyouts.", "label": "Schedule of Business Acquisitions, by Acquisition [Table Text Block]" } } }, "localname": "ScheduleOfBusinessAcquisitionsByAcquisitionTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock": { "auth_ref": [ "r487", "r490", "r495" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the location and amount of derivative instruments and nonderivative instruments designated as hedging instruments reported before netting adjustments, and the amount of gain (loss) on derivative instruments and nonderivative instruments designated and qualified as hedging instruments.", "label": "Derivative Instruments, Gain (Loss) [Table Text Block]" } } }, "localname": "ScheduleOfDerivativeInstrumentsGainLossInStatementOfFinancialPerformanceTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "auth_ref": [ "r129" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of an entity's basic and diluted earnings per share calculations, including a reconciliation of numerators and denominators of the basic and diluted per-share computations for income from continuing operations.", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]" } } }, "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock": { "auth_ref": [ "r421" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of allocation of amount expensed and capitalized for award under share-based payment arrangement to statement of income or comprehensive income and statement of financial position. Includes, but is not limited to, corresponding line item in financial statement.", "label": "Share-Based Payment Arrangement, Expensed and Capitalized, Amount [Table Text Block]" } } }, "localname": "ScheduleOfEmployeeServiceShareBasedCompensationAllocationOfRecognizedPeriodCostsTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock": { "auth_ref": [ "r508", "r509" ], "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]" } } }, "localname": "ScheduleOfFairValueAssetsAndLiabilitiesMeasuredOnRecurringBasisTableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfGoodwillTextBlock": { "auth_ref": [ "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r198", "r200", "r201" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule.", "label": "Schedule of Goodwill [Table Text Block]" } } }, "localname": "ScheduleOfGoodwillTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "auth_ref": [ "r150", "r153", "r159", "r197" ], "lang": { "en-us": { "role": { "documentation": "Tabular disclosure of the profit or loss and total assets for each reportable segment. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss.", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]" } } }, "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables" ], "xbrltype": "textBlockItemType" }, "us-gaap_SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember": { "auth_ref": [ "r496" ], "lang": { "en-us": { "role": { "documentation": "Fixed rate on U.S. dollar, constant-notional interest rate swap that has its variable-rate leg referenced to Secured Overnight Financing Rate (SOFR) with no additional spread over SOFR on variable-rate leg.", "label": "Secured Overnight Financing Rate (SOFR) Overnight Index Swap Rate [Member]" } } }, "localname": "SecuredOvernightFinancingRateSofrOvernightIndexSwapRateMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentDomain": { "auth_ref": [ "r137", "r141", "r142", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r155", "r156", "r157", "r158", "r160", "r161", "r162", "r163", "r164", "r166", "r171", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r201", "r223", "r224", "r590" ], "lang": { "en-us": { "role": { "documentation": "Components of an entity that engage in business activities from which they may earn revenue and incur expenses, including transactions with other components of the same entity.", "label": "Segments [Domain]" } } }, "localname": "SegmentDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "domainItemType" }, "us-gaap_SegmentReportingDisclosureTextBlock": { "auth_ref": [ "r137", "r139", "r140", "r150", "r154", "r160", "r164", "r165", "r166", "r167", "r168", "r170", "r171", "r172" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for reporting segments including data and tables. Reportable segments include those that meet any of the following quantitative thresholds a) it's reported revenue, including sales to external customers and intersegment sales or transfers is 10 percent or more of the combined revenue, internal and external, of all operating segments b) the absolute amount of its reported profit or loss is 10 percent or more of the greater, in absolute amount of 1) the combined reported profit of all operating segments that did not report a loss or 2) the combined reported loss of all operating segments that did report a loss c) its assets are 10 percent or more of the combined assets of all operating segments.", "label": "Segment Reporting Disclosure [Text Block]" } } }, "localname": "SegmentReportingDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information" ], "xbrltype": "textBlockItemType" }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "auth_ref": [ "r72" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited": { "order": 1.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" } } }, "localname": "SellingGeneralAndAdministrativeExpense", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "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]" } } }, "localname": "SellingGeneralAndAdministrativeExpensesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details" ], "xbrltype": "domainItemType" }, "us-gaap_ShareBasedCompensation": { "auth_ref": [ "r86" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited": { "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": "us-gaap_ShareBasedCompensation", "terseLabel": "Share-based compensation expense" } } }, "localname": "ShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that were forfeited during the reporting period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "negatedLabel": "Unvested RSUs and PSAs canceled (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeitedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue": { "auth_ref": [ "r411" ], "lang": { "en-us": { "role": { "documentation": "Weighted average fair value as of the grant date of equity-based award plans other than stock (unit) option plans that were not exercised or put into effect as a result of the occurrence of a terminating event.", "label": "Unvested RSUs and PSAs canceled, weighted average grant date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsForfeituresWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "auth_ref": [ "r409" ], "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": "RSUs and PSAs granted (in shares)", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r409" ], "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": "RSUs and PSAs granted, weighted average grant date fair value (in dollars per share)", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber": { "auth_ref": [ "r406", "r407" ], "lang": { "en-us": { "role": { "documentation": "The number of non-vested equity-based payment instruments, excluding stock (or unit) options, that validly exist and are outstanding as of the balance sheet date.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "periodEndLabel": "Unvested RSUs and PSAs (in shares)", "periodStartLabel": "Unvested RSUs and PSAs (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedNumber", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue": { "auth_ref": [ "r406", "r407" ], "lang": { "en-us": { "role": { "documentation": "Per share or unit weighted-average fair value of nonvested award under share-based payment arrangement. Excludes share and unit options.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "periodEndLabel": "Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share)", "periodStartLabel": "Unvested RSUs and PSAs, weighted average grant date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsNonvestedWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod": { "auth_ref": [ "r410" ], "lang": { "en-us": { "role": { "documentation": "The number of equity-based payment instruments, excluding stock (or unit) options, that vested during the reporting period.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "negatedLabel": "RSUs and PSAs vested (in shares)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriod", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "sharesItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "auth_ref": [ "r413" ], "crdr": "debit", "lang": { "en-us": { "role": { "documentation": "Fair value of share-based awards for which the grantee gained the right by satisfying service and performance requirements, to receive or retain shares or units, other instruments, or cash.", "label": "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "terseLabel": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual" ], "xbrltype": "monetaryItemType" }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue": { "auth_ref": [ "r410" ], "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": "RSUs and PSAs vested, weighted average grant date fair value (in dollars per share)" } } }, "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodWeightedAverageGrantDateFairValue", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "perShareItemType" }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "auth_ref": [ "r395", "r396", "r397", "r398", "r399", "r400", "r401", "r402", "r403", "r404", "r405", "r406", "r407", "r408", "r409", "r410", "r411", "r412", "r413", "r414", "r415", "r416", "r417", "r418", "r419", "r420" ], "lang": { "en-us": { "role": { "documentation": "Award under share-based payment arrangement.", "label": "Award Type [Domain]" } } }, "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details" ], "xbrltype": "domainItemType" }, "us-gaap_SharesOutstanding": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Number of shares issued which are neither cancelled nor held in the treasury.", "label": "us-gaap_SharesOutstanding", "periodEndLabel": "Balances (in shares)", "periodStartLabel": "Balances (in shares)" } } }, "localname": "SharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StatementBusinessSegmentsAxis": { "auth_ref": [ "r3", "r137", "r141", "r142", "r143", "r144", "r145", "r146", "r147", "r148", "r149", "r150", "r151", "r152", "r155", "r156", "r157", "r158", "r160", "r161", "r162", "r163", "r164", "r166", "r171", "r189", "r190", "r191", "r192", "r193", "r194", "r195", "r196", "r197", "r201", "r215", "r223", "r224", "r590" ], "lang": { "en-us": { "role": { "documentation": "Information by business segments.", "label": "Segments [Axis]" } } }, "localname": "StatementBusinessSegmentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details" ], "xbrltype": "stringItemType" }, "us-gaap_StatementEquityComponentsAxis": { "auth_ref": [ "r0", "r41", "r60", "r61", "r62", "r103", "r104", "r105", "r109", "r117", "r119", "r136", "r179", "r294", "r295", "r427", "r428", "r429", "r441", "r442", "r501", "r517", "r518", "r519", "r520", "r521", "r522", "r537", "r593", "r594", "r595" ], "lang": { "en-us": { "role": { "documentation": "Information by component of equity.", "label": "Equity Components [Axis]" } } }, "localname": "StatementEquityComponentsAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "stringItemType" }, "us-gaap_StatementLineItems": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table.", "label": "Statement [Line Items]" } } }, "localname": "StatementLineItems", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "stringItemType" }, "us-gaap_StatementOfCashFlowsAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Cash Flows [Abstract]" } } }, "localname": "StatementOfCashFlowsAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfFinancialPositionAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Financial Position [Abstract]" } } }, "localname": "StatementOfFinancialPositionAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Comprehensive Income [Abstract]" } } }, "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementOfStockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Statement of Stockholders' Equity [Abstract]" } } }, "localname": "StatementOfStockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "xbrltype": "stringItemType" }, "us-gaap_StatementTable": { "auth_ref": [ "r103", "r104", "r105", "r136", "r554" ], "lang": { "en-us": { "role": { "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed.", "label": "Statement [Table]" } } }, "localname": "StatementTable", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-cash-flows-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-comprehensive-income-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited-parentheticals", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation", "http://www.nwpipe.com/20220930/role/statement-note-1-organization-and-basis-of-presentation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies", "http://www.nwpipe.com/20220930/role/statement-note-10-commitments-and-contingencies-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-1-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-2-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details", "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes", "http://www.nwpipe.com/20220930/role/statement-note-12-income-taxes-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-reclassification-of-accumulated-other-comprehensive-loss-details", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-information-related-to-the-operations-of-the-companys-operating-segments-details", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "http://www.nwpipe.com/20220930/role/statement-note-16-recent-accounting-and-reporting-developments", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-assets-acquired-and-liabilities-assumed-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-pro-forma-summary-details", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-components-of-inventories-details", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-and-intangible-assets-schedule-of-goodwill-details", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-assets-and-liabilities-measured-at-fair-value-on-recurring-basis-details", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-summary-of-gains-losses-details", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-details-textual", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-rsu-and-psa-activity-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-sharebased-compensation-expense-details", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "stringItemType" }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "auth_ref": [ "r18", "r19", "r294", "r295" ], "lang": { "en-us": { "role": { "documentation": "Number, after forfeiture, of shares or units issued under share-based payment arrangement. Excludes shares or units issued under employee stock ownership plan (ESOP).", "label": "Issuance of common stock under stock compensation plans, net of tax withholdings (in shares)" } } }, "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "sharesItemType" }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "auth_ref": [ "r18", "r19", "r295", "r412" ], "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP).", "label": "Issuance of common stock under stock compensation plans, net of tax withholdings" } } }, "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquity": { "auth_ref": [ "r19", "r23", "r24", "r96", "r175", "r178", "r512", "r542" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited": { "order": 1.0, "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0 } }, "crdr": "credit", "lang": { "en-us": { "role": { "documentation": "Total of all stockholders' equity (deficit) items, net of receivables from officers, directors, owners, and affiliates of the entity which are attributable to the parent. The amount of the economic entity's stockholders' equity attributable to the parent excludes the amount of stockholders' equity which is allocable to that ownership interest in subsidiary equity which is not attributable to the parent (noncontrolling interest, minority interest). This excludes temporary equity and is sometimes called permanent equity.", "label": "us-gaap_StockholdersEquity", "periodEndLabel": "Balance", "periodStartLabel": "Balance", "totalLabel": "Total stockholders\u2019 equity" } } }, "localname": "StockholdersEquity", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited", "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-stockholders-equity-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-components-of-accumulated-other-comprehensive-loss-details" ], "xbrltype": "monetaryItemType" }, "us-gaap_StockholdersEquityAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Stockholders\u2019 equity:" } } }, "localname": "StockholdersEquityAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-balance-sheets-current-period-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "auth_ref": [ "r94", "r280", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r291", "r292", "r293", "r295", "r296", "r499" ], "lang": { "en-us": { "role": { "documentation": "The entire disclosure for shareholders' equity comprised of portions attributable to the parent entity and noncontrolling interest, including other comprehensive income. Includes, but is not limited to, balances of common stock, preferred stock, additional paid-in capital, other capital and retained earnings, accumulated balance for each classification of other comprehensive income and amount of comprehensive income.", "label": "Stockholders' Equity Note Disclosure [Text Block]" } } }, "localname": "StockholdersEquityNoteDisclosureTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity" ], "xbrltype": "textBlockItemType" }, "us-gaap_SubsidiarySaleOfStockAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of sale of the entity's stock.", "label": "Sale of Stock [Axis]" } } }, "localname": "SubsidiarySaleOfStockAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity", "http://www.nwpipe.com/20220930/role/statement-note-8-stockholders-equity-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_TableTextBlock": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "us-gaap_TableTextBlock", "terseLabel": "Notes Tables" } } }, "localname": "TableTextBlock", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-tables", "http://www.nwpipe.com/20220930/role/statement-note-13-accumulated-other-comprehensive-loss-tables", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-tables", "http://www.nwpipe.com/20220930/role/statement-note-15-segment-information-tables", "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-tables", "http://www.nwpipe.com/20220930/role/statement-note-3-inventories-tables", "http://www.nwpipe.com/20220930/role/statement-note-4-goodwill-tables", "http://www.nwpipe.com/20220930/role/statement-note-6-fair-value-measurements-tables", "http://www.nwpipe.com/20220930/role/statement-note-7-derivative-instruments-and-hedging-activities-tables", "http://www.nwpipe.com/20220930/role/statement-note-9-sharebased-compensation-tables" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "auth_ref": [ "r311", "r315" ], "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]" } } }, "localname": "TimingOfTransferOfGoodOrServiceAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details" ], "xbrltype": "stringItemType" }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "auth_ref": [ "r311", "r315" ], "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]" } } }, "localname": "TimingOfTransferOfGoodOrServiceDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details" ], "xbrltype": "domainItemType" }, "us-gaap_TrademarksAndTradeNamesMember": { "auth_ref": [ "r468" ], "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]" } } }, "localname": "TrademarksAndTradeNamesMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-2-business-combination-intangible-assets-acquired-details" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredAtPointInTimeMember": { "auth_ref": [ "r315" ], "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]" } } }, "localname": "TransferredAtPointInTimeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details" ], "xbrltype": "domainItemType" }, "us-gaap_TransferredOverTimeMember": { "auth_ref": [ "r315" ], "lang": { "en-us": { "role": { "documentation": "Contract with customer in which good or service is transferred over time.", "label": "Transferred over Time [Member]" } } }, "localname": "TransferredOverTimeMember", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-11-revenue-disaggregation-of-revenue-details" ], "xbrltype": "domainItemType" }, "us-gaap_VariableRateAxis": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Information by type of variable rate.", "label": "Variable Rate [Axis]" } } }, "localname": "VariableRateAxis", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "stringItemType" }, "us-gaap_VariableRateDomain": { "auth_ref": [], "lang": { "en-us": { "role": { "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index.", "label": "Variable Rate [Domain]" } } }, "localname": "VariableRateDomain", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt", "http://www.nwpipe.com/20220930/role/statement-note-5-current-debt-details-textual" ], "xbrltype": "domainItemType" }, "us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment": { "auth_ref": [ "r129" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details": { "order": 0.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": "Effect of potentially dilutive common shares (in shares)" } } }, "localname": "WeightedAverageNumberDilutedSharesOutstandingAdjustment", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "auth_ref": [ "r124", "r129" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details": { "order": null, "parentTag": null, "root": true, "weight": null } }, "lang": { "en-us": { "role": { "documentation": "The average number of shares or units issued and outstanding that are used in calculating diluted EPS or earnings per unit (EPU), determined based on the timing of issuance of shares or units in the period.", "label": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "terseLabel": "Diluted (in shares)", "totalLabel": "Diluted weighted-average common shares outstanding (in shares)" } } }, "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "sharesItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingAbstract": { "auth_ref": [], "lang": { "en-us": { "role": { "label": "Shares used in per share calculations:" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingAbstract", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited" ], "xbrltype": "stringItemType" }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "auth_ref": [ "r123", "r129" ], "calculation": { "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details": { "order": 1.0, "parentTag": "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding", "weight": 1.0 } }, "lang": { "en-us": { "role": { "documentation": "Number of [basic] shares or units, after adjustment for contingently issuable shares or units and other shares or units not deemed outstanding, determined by relating the portion of time within a reporting period that common shares or units have been outstanding to the total time in that period.", "label": "Basic (in shares)" } } }, "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "nsuri": "http://fasb.org/us-gaap/2022", "presentation": [ "http://www.nwpipe.com/20220930/role/statement-condensed-consolidated-statements-of-operations-unaudited", "http://www.nwpipe.com/20220930/role/statement-note-14-net-income-per-share-loss-per-basic-and-diluted-weighted-average-common-share-outstanding-for-continuing-and-discontinued-operations-details" ], "xbrltype": "sharesItemType" } }, "unitCount": 7 } }, "std_ref": { "r0": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r1": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "105", "URI": "https://asc.fasb.org/extlink&oid=126987489&loc=SL124442142-165695" }, "r10": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r100": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(m)(1)(iii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r101": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(m)(2)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r102": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.12-04(a))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e24072-122690" }, "r103": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21914-107793" }, "r104": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21930-107793" }, "r105": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124436220&loc=d3e21711-107793" }, "r106": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r107": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r108": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r109": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(3)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r11": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(14))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r110": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(4)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r111": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22499-107794" }, "r112": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r113": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22694-107794" }, "r114": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22583-107794" }, "r115": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22595-107794" }, "r116": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r117": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22644-107794" }, "r118": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22658-107794" }, "r119": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=124431687&loc=d3e22663-107794" }, "r12": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(15))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r120": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.M.Q2)", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=d3e31137-122693" }, "r121": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Topic": "250", "URI": "https://asc.fasb.org/extlink&oid=122038215&loc=SL108384541-122693" }, "r122": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "250", "URI": "https://asc.fasb.org/topic&trid=2122394" }, "r123": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1448-109256" }, "r124": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1505-109256" }, "r125": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1252-109256" }, "r126": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r127": { "Name": "Accounting Standards Codification", "Paragraph": "60B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=SL5780133-109256" }, "r128": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=126958026&loc=d3e1337-109256" }, "r129": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r13": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(17))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r130": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3550-109257" }, "r131": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=124432515&loc=d3e3630-109257" }, "r132": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=109243012&loc=SL65017193-207537" }, "r133": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e3842-109258" }, "r134": { "Name": "Accounting Standards Codification", "Paragraph": "52", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "260", "URI": "https://asc.fasb.org/extlink&oid=128363288&loc=d3e4984-109258" }, "r135": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "260", "URI": "https://asc.fasb.org/topic&trid=2144383" }, "r136": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "272", "URI": "https://asc.fasb.org/extlink&oid=125520817&loc=d3e70191-108054" }, "r137": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8657-108599" }, "r138": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8672-108599" }, "r139": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599" }, "r14": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(18))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r140": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8721-108599" }, "r141": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r142": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r143": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r144": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r145": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r146": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r147": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r148": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r149": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(j)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r15": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(19))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r150": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8736-108599" }, "r151": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r152": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r153": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8813-108599" }, "r154": { "Name": "Accounting Standards Codification", "Paragraph": "26", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8844-108599" }, "r155": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r156": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r157": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r158": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r159": { "Name": "Accounting Standards Codification", "Paragraph": "30", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8906-108599" }, "r16": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(20))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r160": { "Name": "Accounting Standards Codification", "Paragraph": "31", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8924-108599" }, "r161": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r162": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r163": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r164": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r165": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r166": { "Name": "Accounting Standards Codification", "Paragraph": "32", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8933-108599" }, "r167": { "Name": "Accounting Standards Codification", "Paragraph": "34", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e8981-108599" }, "r168": { "Name": "Accounting Standards Codification", "Paragraph": "40", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9031-108599" }, "r169": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "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/extlink&oid=120391452&loc=d3e13212-122682" }, "r170": { "Name": "Accounting Standards Codification", "Paragraph": "41", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9038-108599" }, "r171": { "Name": "Accounting Standards Codification", "Paragraph": "42", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "280", "URI": "https://asc.fasb.org/extlink&oid=126901519&loc=d3e9054-108599" }, "r172": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "280", "URI": "https://asc.fasb.org/topic&trid=2134510" }, "r173": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=124259787&loc=d3e4647-111522" }, "r174": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=123577603&loc=d3e5074-111524" }, "r175": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 4.E)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=122038336&loc=d3e74512-122707" }, "r176": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(1)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r177": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(d)(2)", "Topic": "310", "URI": "https://asc.fasb.org/extlink&oid=126986314&loc=SL124402458-218513" }, "r178": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "323", "URI": "https://asc.fasb.org/extlink&oid=114001798&loc=d3e33918-111571" }, "r179": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r18": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(28))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r180": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r181": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=122640432&loc=SL121648383-210437" }, "r182": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255206&loc=SL82895884-210446" }, "r183": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r184": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "326", "URI": "https://asc.fasb.org/extlink&oid=124255953&loc=SL82919249-210447" }, "r185": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r186": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.BB)", "Topic": "330", "URI": "https://asc.fasb.org/extlink&oid=27011343&loc=d3e100047-122729" }, "r187": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "330", "URI": "https://asc.fasb.org/topic&trid=2126998" }, "r188": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=99380562&loc=d3e13770-109266" }, "r189": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r19": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(29))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r190": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r191": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r192": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r193": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r194": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r195": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r196": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r197": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13816-109267" }, "r198": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=SL108378252-109267" }, "r199": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r2": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=124429488&loc=d3e326-107755" }, "r20": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r200": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=121556970&loc=d3e13854-109267" }, "r201": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=122137925&loc=d3e14258-109268" }, "r202": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "SubTopic": "20", "Topic": "350", "URI": "https://asc.fasb.org/subtopic&trid=2144439" }, "r203": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=6388964&loc=d3e16225-109274" }, "r204": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r205": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r206": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(3)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r207": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16265-109275" }, "r208": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r209": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(1)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r21": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r210": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)(2)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r211": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "350", "URI": "https://asc.fasb.org/extlink&oid=66006027&loc=d3e16323-109275" }, "r212": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r213": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=6391035&loc=d3e2868-110229" }, "r214": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r215": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "360", "URI": "https://asc.fasb.org/extlink&oid=109226691&loc=d3e2941-110230" }, "r216": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859" }, "r217": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(1)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859" }, "r218": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(2)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859" }, "r219": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(d)(3)", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6393242&loc=d3e13237-110859" }, "r22": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r220": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6571209&loc=d3e13644-110860" }, "r221": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "410", "URI": "https://asc.fasb.org/extlink&oid=6571209&loc=d3e13703-110860" }, "r222": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r223": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=6394359&loc=d3e17939-110869" }, "r224": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 5.P.4(d))", "Topic": "420", "URI": "https://asc.fasb.org/extlink&oid=115931487&loc=d3e140904-122747" }, "r225": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "440", "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r226": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "440", "URI": "https://asc.fasb.org/extlink&oid=123406679&loc=d3e25336-109308" }, "r227": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "440", "URI": "https://asc.fasb.org/topic&trid=2144648" }, "r228": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14326-108349" }, "r229": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14615-108349" }, "r23": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(30))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r230": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r231": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14435-108349" }, "r232": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r233": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=121557415&loc=d3e14557-108349" }, "r234": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751" }, "r235": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "20", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Topic": "450", "URI": "https://asc.fasb.org/extlink&oid=27011672&loc=d3e149879-122751" }, "r236": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "450", "URI": "https://asc.fasb.org/topic&trid=2127136" }, "r237": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12021-110248" }, "r238": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "460", "URI": "https://asc.fasb.org/extlink&oid=124440162&loc=d3e12053-110248" }, "r239": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=99376301&loc=d3e1314-112600" }, "r24": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(31))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r240": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=99376301&loc=d3e1336-112600" }, "r241": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r242": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r243": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r244": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r245": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r246": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r247": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-01(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442526-122756" }, "r248": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r249": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r25": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(32))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r250": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r251": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r252": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r253": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r254": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r255": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.13-02(a)(5))", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=126975872&loc=SL124442552-122756" }, "r256": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r257": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r258": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r259": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r26": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r260": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r261": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r262": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495323-112611" }, "r263": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r264": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r265": { "Name": "Accounting Standards Codification", "Paragraph": "1D", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495340-112611" }, "r266": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r267": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r268": { "Name": "Accounting Standards Codification", "Paragraph": "1E", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495348-112611" }, "r269": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r27": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r270": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r271": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r272": { "Name": "Accounting Standards Codification", "Paragraph": "1F", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466505&loc=SL123495355-112611" }, "r273": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466204&loc=SL6031897-161870" }, "r274": { "Name": "Accounting Standards Codification", "Paragraph": "69B", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495735-112612" }, "r275": { "Name": "Accounting Standards Codification", "Paragraph": "69C", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495737-112612" }, "r276": { "Name": "Accounting Standards Codification", "Paragraph": "69E", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495743-112612" }, "r277": { "Name": "Accounting Standards Codification", "Paragraph": "69F", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "470", "URI": "https://asc.fasb.org/extlink&oid=123466577&loc=SL123495745-112612" }, "r278": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "470", "URI": "https://asc.fasb.org/topic&trid=2208564" }, "r279": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r28": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r280": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r281": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r282": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r283": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(g)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r284": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r285": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r286": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496158-112644" }, "r287": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644" }, "r288": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644" }, "r289": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496171-112644" }, "r29": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r290": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496180-112644" }, "r291": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644" }, "r292": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644" }, "r293": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=SL123496189-112644" }, "r294": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=126973232&loc=d3e21463-112644" }, "r295": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.3-04)", "Topic": "505", "URI": "https://asc.fasb.org/extlink&oid=120397183&loc=d3e187085-122770" }, "r296": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "505", "URI": "https://asc.fasb.org/topic&trid=2208762" }, "r297": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130531-203044" }, "r298": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130532-203044" }, "r299": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126919976&loc=SL49130533-203044" }, "r3": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=d3e1361-107760" }, "r30": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6)(a)(5))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r300": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130551-203045" }, "r301": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r302": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r303": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r304": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r305": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130554-203045" }, "r306": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r307": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(1)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r308": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)(2)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130556-203045" }, "r309": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130558-203045" }, "r31": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(6))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r310": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130543-203045" }, "r311": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130545-203045" }, "r312": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045" }, "r313": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130549-203045" }, "r314": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920106&loc=SL49130550-203045" }, "r315": { "Name": "Accounting Standards Codification", "Paragraph": "91", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "606", "URI": "https://asc.fasb.org/extlink&oid=126920602&loc=SL49130690-203046-203046" }, "r316": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "606", "URI": "https://asc.fasb.org/topic&trid=49130388" }, "r317": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "712", "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664" }, "r318": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "15", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "712", "URI": "https://asc.fasb.org/extlink&oid=6410066&loc=d3e79218-111664" }, "r319": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123453770&loc=d3e1703-114919" }, "r32": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02(9))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r320": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r321": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r322": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(10)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r323": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r324": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r325": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r326": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r327": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r328": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r329": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(8)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r33": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19(a))", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r330": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(9)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r331": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r332": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r333": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r334": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r335": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r336": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r337": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r338": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r339": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(8)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r34": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19,20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r340": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r341": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r342": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(ii)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r343": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(01)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r344": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r345": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(A)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r346": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(B)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r347": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(02)(C)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r348": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(d)(iv)(03)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r349": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(e)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r35": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.19-26)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r350": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(f)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r351": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r352": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r353": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r354": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r355": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r356": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r357": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r358": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r359": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(h)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r36": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.20)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r360": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(i)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r361": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(j)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r362": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r363": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r364": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(k)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r365": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(n)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r366": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(q)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e1928-114920" }, "r367": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2410-114920" }, "r368": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r369": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(1)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r37": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.21)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r370": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(2)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r371": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r372": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(4)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r373": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(5)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r374": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(6)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r375": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)(7)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r376": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2709-114920" }, "r377": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123447040&loc=d3e2919-114920" }, "r378": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4179-114921" }, "r379": { "Name": "Accounting Standards Codification", "Paragraph": "18", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=123450688&loc=d3e4587-114921" }, "r38": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.22)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r380": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "70", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=49170846&loc=d3e28014-114942" }, "r381": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "35", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=29639808&loc=d3e29008-114946" }, "r382": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r383": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r384": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r385": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450702-114947" }, "r386": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(d)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r387": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(f)(3)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450657-114947" }, "r388": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(a)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r389": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r39": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.24)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r390": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(c)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450673-114947" }, "r391": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "80", "Subparagraph": "(b)", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=65877416&loc=SL14450691-114947" }, "r392": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "80", "Topic": "715", "URI": "https://asc.fasb.org/extlink&oid=35742348&loc=SL14450788-114948" }, "r393": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "35", "SubTopic": "10", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126961718&loc=d3e4534-113899" }, "r394": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r395": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r396": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r397": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(3)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r398": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r399": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r4": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "205", "URI": "https://asc.fasb.org/extlink&oid=109222650&loc=SL51721683-107760" }, "r40": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.25)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r400": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r401": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r402": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r403": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r404": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r405": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)(iv)(04)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r406": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r407": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r408": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r409": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(01)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r41": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-02.29-31)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=120391452&loc=d3e13212-122682" }, "r410": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(02)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r411": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(2)(iii)(03)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r412": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r413": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r414": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r415": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r416": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r417": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(ii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r418": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iii)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r419": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(iv)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r42": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=51824906&loc=SL20225862-175312" }, "r420": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)(2)(v)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r421": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r422": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(1)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r423": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r424": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r425": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(i)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r426": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(l)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128089324&loc=d3e5070-113901" }, "r427": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r428": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r429": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(2)", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=128097895&loc=SL121327923-165333" }, "r43": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226008-175313" }, "r430": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11149-113907" }, "r431": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "718", "URI": "https://asc.fasb.org/extlink&oid=126964447&loc=d3e11178-113907" }, "r432": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "718", "URI": "https://asc.fasb.org/topic&trid=2228938" }, "r433": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31917-109318" }, "r434": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123427490&loc=d3e31931-109318" }, "r435": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32672-109319" }, "r436": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32687-109319" }, "r437": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32705-109319" }, "r438": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32809-109319" }, "r439": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32857-109319" }, "r44": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226024-175313" }, "r440": { "Name": "Accounting Standards Codification", "Paragraph": "9", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=121826272&loc=d3e32639-109319" }, "r441": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r442": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(d)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r443": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r444": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r445": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=126983759&loc=SL121830611-158277" }, "r446": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.5.Q1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r447": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB TOPIC 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r448": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.7)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r449": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.1)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r45": { "Name": "Accounting Standards Codification", "Paragraph": "21", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226049-175313" }, "r450": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 6.I.Fact.2)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330036-122817" }, "r451": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.C)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=122134291&loc=d3e330215-122817" }, "r452": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=123586238&loc=d3e38679-109324" }, "r453": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "270", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424409&loc=d3e44925-109338" }, "r454": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "740", "URI": "https://asc.fasb.org/extlink&oid=6424122&loc=d3e41874-109331" }, "r455": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "740", "URI": "https://asc.fasb.org/topic&trid=2144680" }, "r456": { "Name": "Accounting Standards Codification", "Paragraph": "16", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e961-128460" }, "r457": { "Name": "Accounting Standards Codification", "Paragraph": "23", "Publisher": "FASB", "Section": "25", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123586518&loc=d3e1043-128460" }, "r458": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r459": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(2)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r46": { "Name": "Accounting Standards Codification", "Paragraph": "22", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=99393222&loc=SL20226052-175313" }, "r460": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(h)(3)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r461": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1392-128463" }, "r462": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=79982066&loc=d3e1486-128463" }, "r463": { "Name": "Accounting Standards Codification", "Paragraph": "37", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123455525&loc=d3e2207-128464" }, "r464": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4845-128472" }, "r465": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=SL65897772-128472" }, "r466": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472" }, "r467": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=128092470&loc=d3e4946-128472" }, "r468": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5263-128473" }, "r469": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Subparagraph": "(c)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5333-128473" }, "r47": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(i),(j),(k)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r470": { "Name": "Accounting Standards Codification", "Paragraph": "38", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=123410050&loc=d3e5504-128473" }, "r471": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6578-128477" }, "r472": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "30", "SubTopic": "30", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=126966197&loc=d3e6613-128477" }, "r473": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "805", "URI": "https://asc.fasb.org/extlink&oid=126975305&loc=d3e6927-128479" }, "r474": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "805", "URI": "https://asc.fasb.org/topic&trid=2303972" }, "r475": { "Name": "Accounting Standards Codification", "Paragraph": "19", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569616-111683" }, "r476": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=126929396&loc=SL4569643-111683" }, "r477": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r478": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=116870748&loc=SL6758485-165988" }, "r479": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r48": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(i-k)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r480": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c),(3)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=109239629&loc=SL4573702-111684" }, "r481": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(bb)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r482": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "810", "URI": "https://asc.fasb.org/extlink&oid=123419778&loc=d3e5710-111685" }, "r483": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "810", "URI": "https://asc.fasb.org/topic&trid=2197479" }, "r484": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(d)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5579245-113959" }, "r485": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5580258-113959" }, "r486": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=d3e41620-113959" }, "r487": { "Name": "Accounting Standards Codification", "Paragraph": "4A", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5618551-113959" }, "r488": { "Name": "Accounting Standards Codification", "Paragraph": "4B", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624163-113959" }, "r489": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(e)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r49": { "Name": "Accounting Standards Codification", "Paragraph": "10A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669646-108580" }, "r490": { "Name": "Accounting Standards Codification", "Paragraph": "4C", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624171-113959" }, "r491": { "Name": "Accounting Standards Codification", "Paragraph": "4CC", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL109998890-113959" }, "r492": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r493": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r494": { "Name": "Accounting Standards Codification", "Paragraph": "4D", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624177-113959" }, "r495": { "Name": "Accounting Standards Codification", "Paragraph": "4E", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=125515794&loc=SL5624181-113959" }, "r496": { "Name": "Accounting Standards Codification", "Paragraph": "6A", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=124256753&loc=SL5864739-113975" }, "r497": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=121549185&loc=d3e80748-113994" }, "r498": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=d3e90205-114008" }, "r499": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(a)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126731327&loc=SL126733271-114008" }, "r5": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "205", "URI": "https://asc.fasb.org/topic&trid=2122149" }, "r50": { "Name": "Accounting Standards Codification", "Paragraph": "11", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e637-108580" }, "r500": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r501": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r502": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)(4)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r503": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL123482106-238011" }, "r504": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(1)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r505": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(2)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r506": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(c)(3)", "Topic": "815", "URI": "https://asc.fasb.org/extlink&oid=126732423&loc=SL126732908-238011" }, "r507": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "815", "URI": "https://asc.fasb.org/topic&trid=2229140" }, "r508": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r509": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r51": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e640-108580" }, "r510": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "820", "URI": "https://asc.fasb.org/extlink&oid=126976982&loc=d3e19207-110258" }, "r511": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123594938&loc=d3e13433-108611" }, "r512": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(f)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=123596393&loc=d3e14064-108612" }, "r513": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r514": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(2)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r515": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(3)", "Topic": "825", "URI": "https://asc.fasb.org/extlink&oid=126983955&loc=SL121967933-165497" }, "r516": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "230", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=123444420&loc=d3e33268-110906" }, "r517": { "Name": "Accounting Standards Codification", "Paragraph": "17", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32136-110900" }, "r518": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(a)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r519": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(b)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r52": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e681-108580" }, "r520": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(c)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r521": { "Name": "Accounting Standards Codification", "Paragraph": "20", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Subparagraph": "(d)", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=118261656&loc=d3e32211-110900" }, "r522": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "830", "URI": "https://asc.fasb.org/extlink&oid=6450520&loc=d3e32583-110901" }, "r523": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=6450988&loc=d3e26243-108391" }, "r524": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28551-108399" }, "r525": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "45", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124435984&loc=d3e28555-108399" }, "r526": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=124429444&loc=SL124452920-239629" }, "r527": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "55", "SubTopic": "30", "Topic": "835", "URI": "https://asc.fasb.org/extlink&oid=114775985&loc=d3e28878-108400" }, "r528": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r529": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(f)(3)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128293352&loc=SL126838806-209984" }, "r53": { "Name": "Accounting Standards Codification", "Paragraph": "14A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669686-108580" }, "r530": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r531": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(b)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918627-209977" }, "r532": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "20", "Subparagraph": "(a)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123391704&loc=SL77918643-209977" }, "r533": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(1)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r534": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(g)(2)", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=128292326&loc=SL77918686-209980" }, "r535": { "Name": "Accounting Standards Codification", "Paragraph": "53", "Publisher": "FASB", "Section": "55", "SubTopic": "20", "Topic": "842", "URI": "https://asc.fasb.org/extlink&oid=123414884&loc=SL77918982-209971" }, "r536": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(e)(1)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL122150809-237846" }, "r537": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(a)(3)(iii)(03)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r538": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "848", "URI": "https://asc.fasb.org/extlink&oid=125980421&loc=SL125981372-237846" }, "r539": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "850", "URI": "https://asc.fasb.org/extlink&oid=6457730&loc=d3e39599-107864" }, "r54": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r540": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r541": { "Name": "Accounting Standards Codification", "Paragraph": "7", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=124433192&loc=SL2890621-112765" }, "r542": { "Name": "Accounting Standards Codification", "Paragraph": "10", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "852", "URI": "https://asc.fasb.org/extlink&oid=84165509&loc=d3e56426-112766" }, "r543": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "855", "URI": "https://asc.fasb.org/extlink&oid=6842918&loc=SL6314020-165662" }, "r544": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r545": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r546": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(bb)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r547": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r548": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r549": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(c)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107207-111719" }, "r55": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r550": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(1)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r551": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(2)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r552": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Subparagraph": "(b)(3)", "Topic": "860", "URI": "https://asc.fasb.org/extlink&oid=121570589&loc=d3e107314-111719" }, "r553": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "910", "URI": "https://asc.fasb.org/extlink&oid=126937589&loc=SL119991595-234733" }, "r554": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SAB Topic 11.L)", "Topic": "924", "URI": "https://asc.fasb.org/extlink&oid=6472922&loc=d3e499488-122856" }, "r555": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "20", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154696&loc=d3e54445-107959" }, "r556": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(1)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r557": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(2)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r558": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "20", "Subparagraph": "(f)(3)", "Topic": "926", "URI": "https://asc.fasb.org/extlink&oid=120154821&loc=SL120154904-197079" }, "r559": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "340", "Topic": "928", "URI": "https://asc.fasb.org/extlink&oid=6473545&loc=d3e61844-108004" }, "r56": { "Name": "Accounting Standards Codification", "Paragraph": "1A", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669619-108580" }, "r560": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "25", "SubTopic": "20", "Topic": "940", "URI": "https://asc.fasb.org/extlink&oid=126941158&loc=d3e41242-110953" }, "r561": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(10)(1))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r562": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(11))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r563": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(13))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r564": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(16))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r565": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r566": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.9-03.17)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=126897435&loc=d3e534808-122878" }, "r567": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(15))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r568": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(22))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r569": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(23))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r57": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r570": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(26))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r571": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04(27))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r572": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.9-04.9)", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399700&loc=SL114874048-224260" }, "r573": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "235", "Subparagraph": "(SX 210.9-05(b)(2))", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=120399901&loc=d3e537907-122884" }, "r574": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "360", "Topic": "942", "URI": "https://asc.fasb.org/extlink&oid=124429447&loc=SL124453093-239630" }, "r575": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(16))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r576": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(12))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r577": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(16))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r578": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r579": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r58": { "Name": "Accounting Standards Codification", "Paragraph": "1B", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=SL7669625-108580" }, "r580": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(25))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r581": { "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/extlink&oid=126734703&loc=d3e572229-122910" }, "r582": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03(a)(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r583": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.7-03.(a),19)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126734703&loc=d3e572229-122910" }, "r584": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(18))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r585": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(19))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r586": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(22))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r587": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(23))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r588": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(8))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r589": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "220", "Subparagraph": "(SX 210.7-04(9))", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=120400993&loc=SL114874131-224263" }, "r59": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126968391&loc=d3e557-108580" }, "r590": { "Name": "Accounting Standards Codification", "Paragraph": "4H", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=116884468&loc=SL65671331-158438" }, "r591": { "Name": "Accounting Standards Codification", "Paragraph": "7A", "Publisher": "FASB", "Section": "50", "SubTopic": "40", "Subparagraph": "(d)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124506351&loc=SL117782755-158439" }, "r592": { "Name": "Accounting Standards Codification", "Paragraph": "29F", "Publisher": "FASB", "Section": "55", "SubTopic": "40", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=126561865&loc=SL117819544-158441" }, "r593": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(e)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r594": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(1)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r595": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(f)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r596": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(i)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r597": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(ii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r598": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iii)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r599": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(g)(2)(iv)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r6": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r60": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442407-227067" }, "r600": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "65", "SubTopic": "40", "Subparagraph": "(h)(2)", "Topic": "944", "URI": "https://asc.fasb.org/extlink&oid=124501264&loc=SL117420844-207641" }, "r601": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "S99", "SubTopic": "210", "Subparagraph": "(SX 210.6-06(3))", "Topic": "946", "URI": "https://asc.fasb.org/extlink&oid=120401414&loc=d3e604059-122996" }, "r602": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "440", "Subparagraph": "(a)", "Topic": "954", "URI": "https://asc.fasb.org/extlink&oid=6491277&loc=d3e6429-115629" }, "r603": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(c)", "Topic": "976", "URI": "https://asc.fasb.org/extlink&oid=6497875&loc=d3e22274-108663" }, "r604": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "50", "SubTopic": "310", "Subparagraph": "(b)", "Topic": "978", "URI": "https://asc.fasb.org/extlink&oid=126945304&loc=d3e27327-108691" }, "r605": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b" }, "r606": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "b-2" }, "r607": { "Name": "Exchange Act", "Number": "240", "Publisher": "SEC", "Section": "12", "Subsection": "d1-1" }, "r608": { "Name": "Form 10-Q", "Number": "240", "Publisher": "SEC", "Section": "308", "Subsection": "a" }, "r609": { "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Publisher": "SEC", "Section": "13", "Subsection": "a-1" }, "r61": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124442411-227067" }, "r610": { "Name": "Regulation S-T", "Number": "232", "Publisher": "SEC", "Section": "405" }, "r62": { "Name": "Accounting Standards Codification", "Paragraph": "6", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124431353&loc=SL124452729-227067" }, "r63": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "55", "SubTopic": "10", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=124507222&loc=d3e1436-108581" }, "r64": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(210.5-03(11))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r65": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(10))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r66": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(20))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r67": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(21))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r68": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(24))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r69": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03(25))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r7": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r70": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.1,2)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r71": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.2(a),(d))", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r72": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.4)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r73": { "Name": "Accounting Standards Codification", "Paragraph": "2", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.5-03.9)", "Topic": "220", "URI": "https://asc.fasb.org/extlink&oid=126953954&loc=SL114868664-224227" }, "r74": { "Name": "Accounting Standards Codification", "Publisher": "FASB", "Topic": "220", "URI": "https://asc.fasb.org/topic&trid=2134417" }, "r75": { "Name": "Accounting Standards Codification", "Paragraph": "12", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3179-108585" }, "r76": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r77": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(c)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r78": { "Name": "Accounting Standards Codification", "Paragraph": "13", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3213-108585" }, "r79": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585" }, "r8": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6676-107765" }, "r80": { "Name": "Accounting Standards Codification", "Paragraph": "14", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3255-108585" }, "r81": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585" }, "r82": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585" }, "r83": { "Name": "Accounting Standards Codification", "Paragraph": "15", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3291-108585" }, "r84": { "Name": "Accounting Standards Codification", "Paragraph": "24", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3521-108585" }, "r85": { "Name": "Accounting Standards Codification", "Paragraph": "25", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3536-108585" }, "r86": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(a)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r87": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Subparagraph": "(b)", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r88": { "Name": "Accounting Standards Codification", "Paragraph": "28", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3602-108585" }, "r89": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126954810&loc=d3e3044-108585" }, "r9": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "45", "SubTopic": "10", "Topic": "210", "URI": "https://asc.fasb.org/extlink&oid=124098289&loc=d3e6904-107765" }, "r90": { "Name": "Accounting Standards Codification", "Paragraph": "3", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4304-108586" }, "r91": { "Name": "Accounting Standards Codification", "Paragraph": "4", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4313-108586" }, "r92": { "Name": "Accounting Standards Codification", "Paragraph": "5", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=d3e4332-108586" }, "r93": { "Name": "Accounting Standards Codification", "Paragraph": "8", "Publisher": "FASB", "Section": "50", "SubTopic": "10", "Topic": "230", "URI": "https://asc.fasb.org/extlink&oid=126999549&loc=SL98516268-108586" }, "r94": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(e)(1))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r95": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(f))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r96": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r97": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r98": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h)(2))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" }, "r99": { "Name": "Accounting Standards Codification", "Paragraph": "1", "Publisher": "FASB", "Section": "S99", "SubTopic": "10", "Subparagraph": "(SX 210.4-08(h))", "Topic": "235", "URI": "https://asc.fasb.org/extlink&oid=120395691&loc=d3e23780-122690" } }, "version": "2.1" } ZIP 80 0001437749-22-026589-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0001437749-22-026589-xbrl.zip M4$L#!!0 ( +J :56M;A&B@0@ -$[ - 97A?-#,S,3(S+FAT;>U; M;7,:.1+^O/D5?;Y*UJX:#)CXD@!Q%;%)SG4;VVN3JKM/5V)&P^BB&4TD#9C[ M]=O9+UPHK^1&__O?+ M5JMYT-K'WF[=-S[[!?O_4JO!!YYQS2R/8#B%05)D$=--N--NMO\'%1ZC5CKHIMPS"A&G#[=N=PL:UUSME:\92_G8G5CIE MMA9QRT,K5+8#H M1B5RVP'7$+-4R&D;7GPIE.T,1,H-G/$)7*J49;ZQ SF+(I&-VM 0&33VFR+K M0%AHHW0;6&%5AV3F,T&67]L:DV*4M4&+48*B4J9' A])+FYJ>-2_3L10V&Y] M>/0B&YJ\@VVMYGZ3&KKU_.A99;VJGK^N:/AK9[$MMROW.&9:L,RV,[*8[)32 MO?!2W%=DP(J,TE(W3#>3 J48J&X\Q.^%ZS4[/^Y?#D[?GQ[W!J?G9W#QZ?+J M4^]L (-S:+Y>,L>G_:O]XWVXZA_3R*6N9NNP$7S+5'_L-GI7T#LYOQCT3Y;V ML$[;5N, SM_#X.]]N.I=ONN=]:]JY__\K?\OZ!T/J.>@T3CX?_CB5PUV!PD5 M6_VG,%;$TV6AIP%V[4)$V> "0GL6-#!N8F#5^('^ M1C.18S)1R&1I6:ORV=+[KYY7]F6C.\]L[;>>.XDX_*&^_.:^,SV)O(^J<^,\ MH*JGD+ Q!\W'@D\P?=E$&/B]8!K1+Z=PR7-,8* R>(_K>?,W&R_^^OJ@\:;S M.Z@8SK _F7!CX4+D'(Y5FK-LVEDU /ZE;QLSE'/'K>\_5M\_V!S??\<,>CSZ M=CJ%SYF:2!Z->. AH+WC1PJ%9LHZQL60!*%O0X$1O>"H)!*^%/,DP8!AID3( M".1Z,0NQ28-*A06K_+@; S(>RIL&V")5!D9*\AV30@%#H ML$AQ6(;3P?%,F"0B3, 4]-]B_H1K7BY"&TB%D<@-T<]A(FR"&S0YTDF23NOF MJ)J*<)OX#7D66S'#%LU/%D7F2^VL,K" MSZ$L(EP3,5@!0X#X%90;)?(,BNB,8)$@A8.:$0A<0!B6N54 M-V*KJ.6006W9J;,#6VWT'VJT'VY.= = M+/DYLPX$I\ T=W!#^ CR+X0%(!5%7Q,FH1DT M+,6\3;F;GB-A0JE,@?-"5YA)C[M.;6H>.913*O$@+-)7.@+3GS G-!21:H4V!B1UV, MDB)R)\*F&!H1";0,;4!X9N\H2D8K%8;8MHMUQE%SE\"5X:B01<) DW)&7UHA M&?$.W)938L':<8:O :JE"WX:WA.L8>&%)GU80!C ME,B14FP#P=,,!.'F!(+^F,G"94]""8]C>O,Y1O\V:PKC><%P!S;@']?7R@[W M.!$SN?$5^5 5]G8-[L)7V'PTI^.&^-N';3"<'62X4,:])5"?#BV^A>Z3A&ZT M.= ]\:BXB2XZ.B^K6]>S%L+WR-S$TU48%IHP5"'%:U9-E;'83B^U<2V#IH(O M_AT7[-XR)<9@@#EU972I>(@0=:?^]$(@*^9Z[7FM$F;F%01E8Q<\>.1HBK-' M22&F(,5G+LM7 "OC@Q\VT39@/.7SO\/-"1G???[GWEU'LX 3+%(G9?(JZ!=9 ME&![C\+B1JD_UXYAN6^5-G,N[QIPR305UG+^%9XR5%@M4'\D4#^WR"Z&!J0% MAF@'_J5#AUD\XU\*@>J[V%5D[@:8V=L>[CU-(K!!AWL]B64L]@H$+9U+TS%W M*#A"K.3A\T.V"6>?B5C[LM91:U>0N[?HLQ=D]P)N>1[FWP^LR;8LPHF&SY/M MK2 ORWB<@DA%+P\\NZ?[7*9(<;]H(K>9DN2L?96X3<1/%[ ;=/K60X(>:TQC M <*'N^2+ '271TJD!I[?BFRLY)@3R<;Z &"STSA0]+W)TM>?]WZ1ZR[Y 7SB]C+EZY/ M$'QM.$,8I$.NO5N\"8!^2G"/T+)DG-9CLU;;5,;.1+^O/D5?5PE"U5C\$NH$-NAR@&3HVX76'#N MY=.5/*/QZ)B1)I+&QOOKMUL:OV(22-AD#:X*L4?2J%L]_70_K9';BV%3;EA_SF?Z\;C5K]]2[VMO=\XXN?L/]OE0I\X))K9GD$_3'TDD)& M7!^KC,.%TI:E4(%:=:]VL%>OUNOPMEFM-ZO[/4W2YMQ8C?>1.5R&T+7$/,,I&.F_#J4Z%LJR=2][ MIR>G1YW>Z?D97'R\O/K8.>M![QQJ!PLF_[A[M7NT"U?=(QJYT%5K[%>#+SV. M/W<9G2OH')]?]+K'"VM8I6VC6H?S$^C]HPM7G7\/[]T_PN=HQ[U MU*O5OX1S+1OLH1). ^@PK23\6Z370IH S:>MB,=@$V:;WW%YEO53#GVE,<:] MVZIB-.)I6D:*Z;7)63BY?K@U1B*R"7ZMOBSUJ*0\MDT7 MZJ+Y:[O.]"3R(:I.C?,=53V%A TY:#X4?(3IT";"P&\%TXCT= R7/,>$".C& M)SB?-W^M^NKO!_7JV]9OH&(XP_YDQ(V%"Y%S.%)9SN2XM6P _*2GC1G/N>/& M]Y^J[]?7Q_??,X,>C[Z=C>%:JE'*HP$// 2T=_Q(H5"IK&-P#$D5^C84TNJ" MHY)((#/,B00#AED1(2.0.\8LQ"8-*A,6K/+C;@V0/.3&,#VF(1F[YBAW;DZ# M;1$J@R)3\AZ200-"H<,BPV$2;P?'6V&4B# !4]!_L_M'7/-R$EI )DR*7!/] M'$;")KA DR,])>DT;XZJJ0B7B4_(L^(Y,VS0_%S1W'@":.80"XEX(>C-\!$@ ME'$X=NNY?B%]\895&WX/TR+".1&#WX.?$+FMO6J8$9UDV4>)2<2SP9MRMUT'0D3ILH4>!]E=*U2C[M:"DBQ0I\#$CKH8E8K([3";HF]$)- RM #AF;VC*))F*@RQ;1?KC*/F M+H$KPU$ABX2!;LH9/;0B9<0[<%E.B1EKQSM\#3!?NN"W/J>!2 WP?AYMJ,#S MC ?]=8T']\ZBM\+"_?/OO:,#1I2AB CTS"CI7)@9#!A4B%,D8#J:H!+CA&!] MD0H[)A:_2BS%* =@ATT?7A:&SA7RCM3K:V6'>[P1,[GQ%7E?%?9N#>[#5]AT-*?MAOC+FVW0GVQD MN%#&O250GQ9-OH'NLX1NM#[0/?:HN(TNVCHOJUO7LQ+"#\C8.-(A0M3M^M,+ 5E,]=KQ M6B7,3"L(RL8N>/#(T11GCY)"C"$5USPM7P$LC0^^V42;@/&<]__VUR=D?/7^ MGWMW'4T"3C!+G93)YT$_RZ($VP<4%K=*_:EV#,M]J[29"O"SC\19$*GIYX-F]06IOB@S7BR9RBRE)SLI7 MB9M$_'0!NZY;;1UDX['&G!4@5KC+M(@V=U*DA&7@R:R00Y4..3%:R0;E@1== M)F>>Y:D:<^P=)@3IH]#]6X;]0?#Y?A!=Q&5NEY%)+:M.^G[F@'C@ MCP%CZ,(''*\X ^S=$1QT81Z[[JPO+("W//X[ >]CZ[+U!?0 P6>B\#[I^\B2 M5Y^C_A;K+GC!](3UXFGJ8P1?$\X0!EF?:^\6;P.@WR$\(+0L&*?Q5&SS?GR+ M]<[;P.>T2E]9JS*<-[\!]Q(.]*"_70V _NVTX'.F>OWFJ=AJS^QYYW&'T/W7 M\B3Z'9'TJ8'XWOS@3P3+U^GP=+QPXWP;Y_LQSC?].Z#AC@P+&7$:73EPFEUQ M*5298?\E0NZ_76BL/&E< $>)X+%O/9D04G]Y[O>A@FE9]]==Y9'2R*"15'C- MKWBHN65ZO,'A!H??*0ELERI6+SH=NY?UEM_-/^BGM7._%AY/>Y5);$E>T&MUNI$(.+CZU8;6_;-A#^W/R*FXNF"2#9DIUDB>48!EJB(@T2J%)78^_4[ZL6Q/:]IT33+D &9!Y/O./=\QQ/[(0J MCKJ=D!*_N_.FHYB*:)?._SAHM>SF81UG.XU"N/,&YW\R3;B@G$JBJ ^S!;AA MQGTJST1,82RD(A&88%L-^[C1M)I-.&I;1^WF,8ROP#2[G9@J EY(9$K5:2U3 M@7E<*Z6,MT&O XK.E4DB=H,"R6Y"A;J=67E_V99OCMT0RPE6;ZYA$3NF0GJY5YOYC&[!APX%[&Y ; M@34K4)I9BZ>'V:72@=6 Y]'M#R;NY?EEO^=>CH8POIY,KWM#%]P1V,=K(;^N M3^O].DP'?:VY-F6W#BWCH73\V&WTIM [&XW=P=G:'K9Y>V(=P>@VI>76B?,)\RIS,PF53/A L9CY,*6)HO&,RD*]91F0%S.2 M0L B5%AZ-Z5>)IEB& S"?1C,L;;QF]REF*6IW@G^M*:/%1-"*BGZO^IHL:O* M3P,N#9AZ0BFXPAA*D:8&G#&)41'2@+&D*?,1:$9NKA\R&J!1=$*Q6PJC(& > ME3I$VD(9 P.A*76\#4@RF6:8$U ".53LKB3/[EO[Z&>GC(\FC=XM\46B"_WJ M>ZN*&J^EL2F1,\)I:H[F$5U S\LSI?%JX#Q1[2>$K"*SB,),2#R93FL6GB$T MBLIJOQRG"?&J\;S\.E#324_]6.'1S4#Q_=LX>* M@XL(*_D?9!$6 P^Q'6G:+:DHZ><,B1(C.U(-O;2H)!6B]P@6 0GVX9Z_O\3L M/7N7S"V!:Y^T#AQ-LLT8X5,G$=N/'&6OD'Y.D&[^SR#->-'OZG-"][F$<:RV MK#@Q*KP3ID^_!$N_AK:AITD489^!QR+#?ALG$L1Z:N1O!8P3[FDY+NBS?&E] M5J!6%A7,$(GNWW$BW3@IZL\$[$]'J'46)6J31UJRK6'<_9P)Y6QX5 B-HILT ML !)%FQI)0O,04XT6&5:\:FQ1K6RBZRH]MB^U#8I4A08UC[VI:XY[%P/SPV30^U7?N*[, MCB_.W[^*=2-&HPOAM=7]]900U\,;WF@%PU]4=SM-/(;[[\!4$L# M!!0 ( +J :549-/4MY@0 #X7 - 97A?-#,S,3(V+FAT;>U8;7/: M1A#^'/^*+9DX]HP$$MBNC3 S"L:NIPD0P'WYU#FD$[I6NE-.APW]]=W3"0R4 M:9-I0MW&,S#2O>AV;_=Y=O>N%:LT:;=B2L+VP8N68BJA;3K_Y:31<.MG51QM MU4PGCGYCVW!#.95$T1 F"QC',QY2>252"@,A%4G !M>IU?6O7L?7INLVZZ

>VW6ZE5!$(8B)SJBXK,Q79YY6REY.47E8B(5.B[) J&B@F> 4"P17E.%O1 MA&:QX/22BTK[H%4S.K/ H PHAL"$%2C&P;M< '4OE#L-VNL/Q[?5MQQ_?]GLPN!N. M[OS>&,9]<,_AKCJJ=JHPZG:*4;=QZEA_9_8OJZX_ O^J/QAWKS9T76IXX9Q! M_QK&WW5AY _?^+WNR.[_]+;[,_B=L1ZI.\Z3 ,ZVD3Y"PII]?IWEBD6+3:&W M7#.8&S;# U,QJ)C"^QF1:,MD 4.:8> $4$/G_$#S14,6$:A(]*,\ 4IB=N8[N=RZ\]^A+68C)J&0B!(I!*H01S11-)U2: MZ0W'@B)(D1PBEN"$E78C&LPD4PR-07@(W3F&+#XM5$I9GNN=X$_/##$20DPE M1?W7%36[6NIIP:T%/I'XT8\L^8WQW$(9G*&6/[ 0Z>D.0L1719T8D8CN&:< M\(!A..U'$'+S 5"KQ13_#I*LY)^F#%)4V11 MKM&8FY"S!/D1P6@AP3T]"H]7,'ZD^8KB)9;=B\:)ISFW;2-\:K]B^5$ [QGE M3QSE]?\8RADW);#.,;KT)8QC3&8FVRPI0)C.G!EF#8UV2P^3),&Z!%.J3AHX MD"'\IM?68%=U?Y_\0) MN^O_S5J_EM=,'6> 4Q9SGQ!AOJ1=EF#>(.I>,/)U./_9\5^CXU?_X^W9FQU1'O&67_?Y2AZ)ZX7[N= MN#"7$T_9]_NN 4-V#T%"\ORR\M8?C>V!?].UWPR[_O?ZXG9M='!S/1YN]<61 M+<7#GSMU<0>#F][=NT=I.$/?+^]XH!8U?=_<;M6*>_,_ %!+ P04 " "Z M@&E5>E0NE0_HH>S M2<@JB-9A.[;DJ$J6)4>56/9:RJ;VTU83:)(]!@$.#DG,K]]W=#<:!RE*EB+; MT=;NQ@+1U^MW7W@U+6;Q_JNIDM'^=_]X5>@B5OOJZO^>[NQL[NP,X==73_CA M=_^ W_^YL2'>JD1ELE"1&"W$^;1,(I6]26=*?$BS0L9B0VQM/=EZLKVYO2V> M[S[=V=U^+CZ\$QL;^Z]FJI BG,HL5\7/O;(8;[SHF:>)G*F?>^,TF\EB(U*% M"@N=)CT1IDFA$GB[4+&:3]-$_9RDO?WO7CWA/;\:I=%"Y,4BIN%)L9'K/]6N MV-J<%WN"'HSE3,>+7?'#?\JTV#O7,Y6+4W4I/J8SF?##/3&74:23R:[8U(G8 M'&[I9$^$99:GV:Z099'NX9ISN]!,9A.=P,NX2*&NB@T9ZPD\R/1D:M>]U48 M'OAN[41VW(^-(3\&@IX$(E>9'K>6A;E&^T=74SW2A7CYU= MZJB8XB2;W^\)AN &PLN T3PAG.!'/2(CH+.L$QXW6+IY!IP9)X[LQ&9O/^'6 M[FH1<:&R0H33*D9 M, A&;<2'>]W)"]Z(WO\#D4L>X"7&L$YF$*A G23@4KY[H_1,! M+S_?W!1G:5E,Q5/XO[,"]EQ4O[X[.!2G+WQAIV\.Q7/ MGCW=>H:_TC'QE$^*:,FM[]SEK9O;C?2%7:6#X_F 1@#-)D+&P+8O$4YC!-/P MW_,)D& 6MA["B6#RVIG@OQG2"OP7J1O)?.IH9JJ8HG;F5\"DTQAY]+\VZ7_V MQ$B&GR99"OBQT?RI1JZC- /!M2L2$"G5]G?FA=BLL?KU14@W6[F0F99)@0N! M;(N;D#J?ZKS"8A&18)6Y2,?BH)R4><$<;SL0)%!!Y,H$)*\J+I5*Q#I8V.\= M9BK219KU!C2XF"I!4CN'"X358I7G2HDT$_,R ^D,:(!_ ("R]!+^/<[2F;!S M!+@YG"&$]^ L"]B+Z..#WB'L%O0 6&:X4KI\CBRQ_/^ZZ>\$[?_XY>CCT<&9 M.[L V B)=P5 3,68P0QR!O0>T!J4NP!08PA&%B)X;9< *KC46 '< J&3''2E MF-[.)8HO6#V384'7 #7.:@>"T":PH'7O-$;P);+<.JM-U+("R.5AYD>,?Z, MTSA.+W,SUN%&;[#;!)X/KY9 WJN@0D"IH;3!: -]AEGW!=TS$8%@. ,,ED4A MPRF<_PS_?QDK% IF0Z/]@V$E([ZITQ^,0296N(94C23J\Y6@^AF4V6F:P1)Y MA=> S("0@,; 'Q8"<0_Q22>LCH,>CE@)G"&9*'H#$#\$Y1AX5>VE/J&EX0^S M-%*Q6"B9(=KCDXI!P6RZR(GPP&!(RMF(6<[_G)P.8$;8#FV_&L"H/<=56KSE M&[A!RV@02A)$CY,J16@FF>SC" M@\#M]/T?XAQA=_S^XQ$!:2Y!087YIRI3*"N1 #QV^%Z2W5NC12\S#.Y&Y MP*BW*D:]6LM]^?P!-^J8)^$8D=Y,?EI"E&L2=EZ._JU !S C@*W/S%L^,Q\V M06.4942*S[_W:]]BJ-=?\W;PS:+E]E>!EN> -W("J#)!Z2QG8 B!5(\N4%,E MCUVES *+)#- Y%-015'5%.HJ1.463OM?6SO!L\W- RG0.#!T7)P8ZL19FI2 M"YJH[RUQJ4'K* OFT9F&*2XS711@PEA]Q.@9XYKB_(CJ#X+J.U\%JM\>&X$F M= PJJ!DYE1<*K+DL1]4J5/I"L9',2@-YA?MRP(AIS30P+Q;"&-! 535K#TD% MYTWA:093QF341VE8XCX8T8NI+,"&3E!? T49UH33&-(P[-_.]R,8G6&HY@4= MK2DT EJN/QK0DA8 3OC@C[D"95T7"UAHGN:H>1L-LMJZ.=8CO3T(O3W]*NCM MW*@DZ.DITO%8O &\[J%V7>: 2CIIZ"EBIF3"QB!8@3&HY:39I&@Z6C1V)$:> MKYP)#2!RFEXHM KYYG8VC?L+P=1'BD=#$\DJHW&X!\<-T"<%>R$#,P4-/-)@ M.RHB.C C 3(X !TR1@ !W]! ,; S2W"#/:(GW!_-CF2L>-](4.+H@HQ8 ( : MRS(N#QB3Y,C\(O!^HECS41?EWM0[<2]A"KM!F 1B5(*U#WPR,*ZG? XJ M:-Z4Q.P%9*Z5)KF.5-;0)V -4(#)<5 @/$*=$Z.K'&6U4P_%:0LRB ^@N:3P M5R#TN#IFKLBI5DQQE3"6@'"$*7($>"( Z1@78'L)8D_-^[)Q($_0AUJ! H@05/Q\]2!);IM,76A%!."Q M^W+.?F!W7X$(:>[JM@@Q6,#X+AC )..3]5F\W=@C>W\0]OX,4:\%^R^-O9^, M19JT"*";4S68%-"XSZ=:"A%K736^"!,!YD?*FB723K?PIG+N=3T&A(#=J"M0 M9;I6 +: 1,#J3CG*>6@.1)&/83ETI2.#=T$,8K7EG&3"C!9DWV=4$\GBF@;&20"(ROQ MT&! F3$:XZ D4'%R.@:*9A)! %ID.0!<#!2!>&45L:4NBS@%V9 ALTA'@%/$ M[:TL!R25[5 D5()XQ207N8=R*'X1W5<+/K,ATCJTM9P]# KJN&F6Y;L#!I"R@6,0E:3Z95K&$9M" M3-VE@K\B'B,MF=!/Z%\."!OAS(!'/DJ@,,;?.Y8,NDB(%H0Y"$NN WL'(VG@ M-MV$Y+M,YT;!Z=+U_*T$J*W$,E,-%F7-N.IB038;4H&9B/H[>$O_B M4]2W/S:!C_0R0:(FX-.F/[')RO*<\'6B'+[XWD/-1F,"2E*A$4'@F;D:>P%& M4?/M48\AD,:T3 _PP^T/%U]IK'&KV$!-4H8*&0[+XO-?3L[$P=N/1T?OCD[/ MQ%3C>>#39\.=MJ+K[Z?) F[*92R_WETG0V:58K[T##O# M9ZM-CX<\O6'\NY2K>R'%!SU7))8^@'(D0?$Z3&=S$#@W, >O/FE\YUO. M_4D?R)^E<4T1M7J%Y#I<2SO!R6_<" < MR STV#]T_$DG^5VBYOUM^W6+A+YZYM$^TB-7>(!KZ.0(][?<@=KFMFPG&<K&]^7(O@K-@HF\ D"EP++DT52SGN8H&?OHES4$S MS\D;GI0SWW/MAQ/5?W F@%1?#\0YAIW/WA]_%/.XS.&1IBCQUO"G9]\/*;+7 MZC&@.X$ X?<7GTQ$E H@03F]$8RHBD,3R=8.YR4DSMD?%TG-D< MH7.1(HC5O&^4]?QQ8&]!041)?M#B$G:_/1"OK:OW#<*EEN-A+RSRIZ$:"UJ1 M4ZQA3#F*=3ZM4*[:P$$$PW0.V 90V\/"(>OK"\0TO41W=T!%1;2K_M4 G;9< M8/)L=W-3S(>SH>@CC?QOFGVB ,@ CX[^R!7'#*Z'+Z':?!X#!R/8$K!K$:1U MC\4N5?$:YI\"%_@$J\UC&;*+E (FY"<%$II[Z9-+-V?W0&'S3$4F'%2]?ZFK MH._*(](E\<'D^K=D,8M3CN:8;&E)>N MU;Y*LVS]H<\)CQ4("ECYHP*Q!V!\+9-/""E'^'WBB'!C(!AR_'<=8\=K;7@P M]'ECYV8.WQV)MUE:SCW(>2\B9ORF9QIE3O_P]<%@O8TM)8]8&"CN>7XDP694;B!D6=>PK2'I]A$I"NGIM98"WF%X0AG/*'I1 G M203JAXFK'[L,H'< > 5 . "@P@.6.R9D6@&;(EQ%&E!4=38S62TF@VFLKRCC M*<3J_TAA[05':TWD=T8I7#E22ABG" \K%N MC(Y%AL\!(<_A=TXZRF3$U4?B M]X30X*S U# Q(:3C/'EWNB'5Q6'HGU)H*-LI]^%;J'":H X=^(BC+RARELX5 MHQQF1/%8C[\$+J0<(T(:$-GWK "O16!KUQSTNMXXL;K>!PJ*]AS,88U89ORG MC--)6N;>6):W()WQG'B38TSP 2F 8%@H&S&P"=QC&):E)'.5++T?_9 M/%95FBQIFMURGT7,',_-\R#_)T6ASDU27[00+^F>S\^3$N=63V7&;W3I>,$B MP(FGFB"/N,*3B]\2#MDS1@%8!G1H[\=1_&ZGGPSH3Q%3UV460/)6$D3P1\0-.5HB !$W6'K&] M5IU*/7DN1T,>;@M#F7*B2(14%Q-83 .0[BU*&U#: M1Y@F"3<7J8+KI0L4Q&_S(F.;85H1<@QMO!E(\1+9 M*5.FPWH<20?JF,EHI<1M^7:0&BV/PAG'9<89!*$KV@2B-LFJKJ:B<12L-IX7 M,=4:Z_&B,E8-*KFEB*\A0<)*'=O3MX7M$ 2;JWM"2VR2R?E4;#VWV4M^9HU# M$^#4)/EJ.B5,:W1FBWJP)6#G.4**\E83-[C>.695\4!./>XS>MMDI9I> M#?8GZP>>>A#+2S)Z*#%'8QH-/ '#GP0^G1[?J@0L>@W8(0RS4]%[CM7!5!9! MR37(.ZI)$$!^+3&1 N6U %=!GH7',TRGIA?A2QZ)\6@'05-TG$T:W"DWDU#Z M7FL: YPX5A/9!1VCVM=I .R@!O8/Q7'3J0+S+H$Y"VVQ;%'C>G%+9NHB_:2, MR;5B2MH2JG".))WJ%>HL+&>8XJ\ZXDG@+S-PFI>K7O. C[_?CL MF)%&K@,916R&51MQCY:<8+ G.EPC-*U-8EM^!I/?B)AM)*.1?W2SK%"(5*- W9Y<@S21=6*H/=WW+!1 M_ ,_FS?P?:>54U$:]H@_>DC.CC'VI^!#_>)*1T/VUL'K,)'[,)O_ILPG5#FW]1F5%'5(^50SUN>J5!2H+% M6M6/U9D.^<@Y=*(' GB9#3^Q3">S1S8YOM$Q<::F+'"&B=-6J+0XQ:QO,E** M6Z@O<*@NC8U3^FLN[PZ/M=GLQ@<_].ZVL M4^J#UJK-]&" X<7R4+!.6])6ASD/\\V/X-91Q M6'*!.-N9*

IP@_X[[+G O:.6/)4=8HH&(]"54ZXY4A Y-=-5398L#+FF%B MW4SP,P*40D:A4P"\/^EH%"U 7<=5T [%R;C[5JM[A%W1P-8%U% #JS?7P,^6 MG[CN:VKP^ED*TVF9RW\;GUD?>RK>X\C9],GL9->>Q)W5P:42,"-@", M@VZD0!0E3M''&]G>+*9MYVE5&=[A4*W<@PUG)CNP/67:=Q^V7)AJY*/J&N2CH&/JS:THWBJ,"1//L63=3-_?V2#9=9//BEF1SABY=72CN M]E3=K[$NJT);<\FF&&Q9!63MX522B>;PA%*#:*DVAC#*=V0K.4^>3O(RXZ2D MA(D*YZKO6B[O+]*P;=F16*LCKNT=NQAE46S\SI;IO2Y=)DB2)C'5)],(KQBUJ\@>%K&/&QWD'HFAW7=P M\Y;4X%4?HW<-JYG5'#'#1K$E(<"EM0G79_"LQ=_==74"X_.'WLL=7KO7^TL] M1V2XO@OE]1"YQY3_1J!E+E_,)A*QKFGPU?K6I$CXBW$,AW/4M)A\2X4[&7FLA3GN6:/Q$&I37$G/B:C$J M;DM$67JU+D9@0E-K+E?$44-C5)=-JQ5T?U85>-@."3OT*.2=$NXU(&09GL=L/@-[DRXP4 MD-VXMC :;_6]FXQN[:KC\Z$95[IM+V,4)."?0^+>)D% ^WB;W>=)G.Z]20&XTK4J-"1920 MYQ^Q;S+)__OX4+RO!@VN6W=!J\J4P!GBR'8?U#!\?=$4R^Z0TR8SRC9_C#% M/-M>XUYLH*QVO^:&S*F\5'?WB9@ *]9F:=1\:HH1O"=@AIHO^E10"41^*>?^ MWXT$] I^?:^O:3/\F9:6T]?F&UO;?.3WX=GP\.A\>[LO-SL MAX/^BT'_%TI1/'YS+RK!J MDE]3JX Y/;%IF$:CY7 MWIM=,7!BQA1.D\K\R79)Q[,+F_?L?%L4P\(0G.N\[OM[^=-CSGN[(O^A$O,$ M<-0NO=/>\JRI+U>J8[*P]"8//X$4CU4T:6R_;Y+*-0,"2REJ5V]+$SV_=17& M;\-JZ$=&C(/1*\?BR'S)U9D%IM8IB5\925H;=@7*'N8M$=M610*Z2! (U3?& M;.ME5)*HQV5C!C0*L*(A=$%&;P>=7;$)IZI38(:# U=0D087\=0H@MSZKE.U MK8(PX2L"1FWUSIONP.A.I SXT@+VY][^[@/_VB5JC!KX%E;/V]5MX8$O=T$; ME53=ZP4K;/%6F[@H0<5Z2\C:0FLMHB]\852^4EI&J.;:A!*1E7&K7@+^?,R5 MO%VNY-\^!_)OF^YXSTK:FCKD RE("FO$0D4@EA.)W[STZFM.KA7:9&4Y;KB. M"#=\+Z @*0/'5--=+ZU_S-N,VI-&)E2'F6,PKO?><.N><_0IIYQU>1HPAR;- M@8GG564>K!'3O!3217,DQ%XD5>^&[A'VRPQ-@3XB<>\=QSOIJN^&7=L]Z2NG MP<\.(7=;*<]O&2V&L=?5U[#]TU$/5$P[:H#H'Y*L=$1_ /LWV1[K3K]G?3UW MONO/9[?0X^F=?J+[!EGQ=W>FOUZDT.>!RFX" GHL]U&LK*R=Y6_EF*JPZTK> M**IB2QYQ!)HT&^R]].O?*'$):ZFMINZY+9M)S9V]BVY6P7USO]37C6RW\H$] M$O 72<"CY032Z#"C7R_0*OEFGX;7:3&H4_D&L?>1@#T"[NS]NX*<&_VQFVUH.WO^+O'%F<$Z 47L M@AND9EX.&'>%P#0O[GKE^MQ10TJN*JQU5OY;W^@C4OM([7%+GP_G)59 [];K M_F5,K36*C@X9II.=R?[O[%!M@IV9QY['*P6%[:1>;2"?9TI&GO%%V8\S!?C. MZ9RV]0CE=V2U'L*8*VN9QC98X[0!]9OE!J]@=YJF8O@!6ONI M>38T_=9@-0N.*=PTJ.9W34701WCE L776[^YY>LT6@@K#,EI-[8Y10[<&36* MH:X0"GL^ZWQ&;[7 )&NO(G33.)TLC'L.%0CV67A?0DBKKSL$5O[?QW6Y;P-8 M2[S>%E1= ((:(4[,[/(=RHN]/R!=;NE--.1[MQ=?(W*!T>!>02 4FQ35]*\O?,^>OF M[>\Q2._;W%4FI^L!M,H^>T3 1P1=)F!+7D0IJ'3;H@_9_8_Q_9 '[O>6* MOL\"7J>2"SWX+>Q+85E0HYV@ [.=N M04Q*K-M630ON#L?*/*?._,S+_3C'N;< [_& %^ M[+]Z,BUF\?[_ U!+ P04 " "Z@&E5Q;8XM%P1 "/U $0 &YW<'@M M,C R,C Y,S N>'-D[5U;;^,V%GY?8/^#UB^=/BBVD\FT"28M,KFT!C(3(TZV MW:>"EFB;&%ER22J7_OH]A[I8EG6SQ&3LL8 L:1#GMM'\O"0E#[^^CQWC$?* M!?/_/O[' M-'^C+N5$4ML8OQCW,]^U*;_TYM3X\]/=C6$:O?[I\='PL_%P?V$<]@X/S7[? M[)V8YB\?GX5]*JP9G1,#)'#%*=PXZ\RD7)QVNT]/3P=/1P<>GW8/>[U^]\_/ M-R-%VPF)+<]W)7^)"SR/N7,@J'4P]1Z[X<,N,HP+^)R#7GDEPJK12MWNT^)YI6ZXP1;TP/+FBJYWK1:0"Y[#'YZLD/K"G!*R6*\Y?) FSI$C>K)" MCIQMN2I(Z(OC;O P2&5&Y4R\9?8/S:/^ ;#N="M(D8OU+!%$ M?H'@IXD_Z_%>[88J<4\6B2XVDR"CI15R7J/O4D<*U?CJ:[[L("MI'9'CCP9< MEQU0):X1.?ZH:>-4UU#-T,G>)S!V5$T-W=?ZG(KM+"J #>RXIKF7_6TU>T?T MZE<#/R>&QDJ,8WKUJTF#7HT2JK7H9)GX:C,ARJ.)/%'*2JIK4:MSJ8'\]2ZF M!NQS1O$&;0_O-' (M*"3+O<Y:O?L"*V)X0MJW[J_J-^I=A$6#BF* M"JYBKWJYM'^S2X9W(X=6\[/EN39UH2+\)3R'V:JGC@F$Z4U,Q*]B+DS?);[- MU!!0$P'U.>K"1A\ ,8K8P>^+2"+\%4NT)!&&-S%N8XF,=P^12#^VP"ET(^ M1)@!'7NDT,[AFKX5A$IXZP+381TP721E@XX(96MA5>#:,7%4LD3,* 7W!I,, M:4*;9)[]>HBJRE87F(ZJ@>E3()8Q4F(9[RX"N8RADLMH<=34H>:"X/T9E0R, M(KX1K-)2Z$+9>\TH,]X-5P1M85<\,@GI65]GGF-3+DSZMX\Q\!L-BL6L=0'L MN,Z8.$J(]H-QI61KQT0]GGWE_JR!)+H@]^$U(-=V;!N&W$3,S(GC/;W9/#&3 MHRY,_50KM >)C&N4J.V\T(VN)ZG9-\' Q&7_* XJ]P-&9LJ%2=ZUP;(9%UT M^1DS2TQ8CB=\3N'B"XAA8'KA-B&( 8) , 6"(#Z&"4'V'!6'YM@7S*5"X&1] MS%P-&,BI4Y?'3S(]CCF 3R%;G-M';/?7>[K9[H/9[>_A:SVW'?'<6K!IF/9S'^I MNG3Y\##3ASB!C-(-E\!NS_WXP9P0QLU'XOC4G%."IE(!9S.7YE>KR[M'F=[% MN=HU<#;^BYR-SPG.>^[HGZ!QQ/'L.E9^S\BS- )%=I2ZW'V>Z M_6L\]W>^A(^9,+OM>RW,E]'74M1KW\:6UZ_+[3]FID)Y*F\4"J*[\(BG OGN_ M;W(*4TV?-O3SLAY='LU);N&DZRY@M>^^.XQVE4CRW+BAIBK3Y<7LA)6:=H7; M3NZ1W[Z[\@@"7&$,BI5)?+LS-B:L;UA L-R;1-F>E"1':*3-H18 M;.PTC>R*J]8%@^RD6M["I/'N7K'?]WT)*\N*6KR=6:,N)V>GT%+KE:UOTPN. M6AR[7ITNKV:GS)++F*U+2Q:LM'BXM'9=#L_.E16LBK7^K[5BI045-7GJPDIV M%F[CQ;(6024+(%JP4EJ[+E1D9_6*5EE: *03Y5H\OEZ=)A1PM:*F(@]=&,G.)>8GC%M$5/$6$0)/]!/K;Y]Q"!"Q[3N,C)D39 ?@ M.%4/Y MW'1!)SM_6@"=(?<,?*$T,4:!2"UB,IGAN30\AY]\H@4PFS+3A9?LS&IZ MB55M:@XEPN!Y9?FUA4MZP10CD/7A E\A:_MP#2Z-2;6 IQEK35!ZGYW!75G7 MQ8AG?:R"*7TH'V)KN0C< BOC)*K>25A)W;J@D9W/39]Z;2==E5?HHP@T-=4) M:6 .))-%(?+@%!V-:[=!:D9+O_,&\NE"8'8>N6@/0CQ?2T_30BJ8O\ED81#H M+E(B3#.U/5B]/05:N[BFS'4A,#NC76-G0]M)-O)O-//"4(@ O5K U!7&ZQ9& M%_@TG4''4"V<)6*DAA(;[VZ4R#^VO5W1L7*]?5HU%KK L]E)]K:#JKQ+2BLF MJK/1A8O-S[ZWV*CLM+S[]!E_4SW#57/VNK"4G?(NQ%+!HZM RG9(*O4S%[Z* M31:"1'&)IA1X39ZZ )6=""\!U-WH044^P]%Y%/6T^?"J[];0O*ED4VZZ@)/S M!H'2-WNT8UO^7N&^9FP4U:P)!\<5-B3W6Y_G>^;PU7R^7K,NG^?L.T[Z_+#U M>;YG;";(=,KQ\X6ZL)"S*SG]=J&VBZAYC&1UWT.E(GHZEM>73Q<$<_8Z5SX:D][*4>T\ M3=N);8033BV'",$FS(K'I^U#H"PZ/M<-V)7^I3@ O<:^&I7(S-G-\[#.>*)O.\ =YI)Q,J4KB1/EDT_,E ML'!M7 6=>#S,Z/C1JZ,@J _O8.^S_"2NGEYQRY31!?*<-]'F@MP,.CZ\@;M4 M+)7)N@PT-OX(-3;. XU5R@L$"HK>+C4V0.,P_^5';]JZ3&B\\OW@MH\M.CF9 M_,UI,/1*SX01*PD;&)OQ#H[&Q'T1T2, 6UBGKF;R1D+J@G_.:WOS#HJ:*U=W M@2:&] R0.XE9B!_PSD6@R0\B>@90#ZO=#UQ_[#X+^Y0L%@@ =2^\XP):2*SK M1[Q'G>#+<60L)">6/.M(CB]ZQJ8 \'O^ZUR"3>>$?Z7R=C*AN%/N,YV/*>\8 M+IG3LTX1 7,=[@8:?2+65\=+:9&^^2TE7TH:'O](G/Z MH-F;NNP?:@]LH(7@&<4,=CU&YX?.73NQ]S$\H19NVDT^L"S0+4D:&^/M^=:Q M=W 'ACIHTOPE;>WP \9G'0M$8S++";C9B[CRS7P0]T2> M1:D=]P%U"C;3>!'47*1RE7:[*OAG\LSF_CRZA,;F0_E,'?-(MW9@N (YYACW M7W@".I2KX?D(:"RX<0>4]DNL9CG=-]&Q&H CX>_9G-Y[.)%QJ*21!J!,CK+E M]/65CB1OW#P'+I@'QH1+&OP?N.%ZZS7WYIB6P&[J#R9G%[Z0WIQR 24<'S,7 M.'C GWU/GB/=M=6V=7#([;$'KH0JYM>^RN:<3SE5!=B$K';8%>BV*-J=24B7(JF:%%%LQ!GWQ7/S>^RT?$B[#"Q4S"I4$4,?.;B?X;79FAXF+ M<#X4Z=BHAMT!,Z9\[KT@5F3$B3]0'^9G[J.UB\@H%:FW+LQ"R466Z"*I6R[% M#NES'A8IURM!^:WT6^KC8_=Q.U%;AZDZ' ,#!7:7CW0(T%^ZJ0)A?6T8]-E3 MRK6I,W!)586*2;='I<_$]2<@JH]^OR96*G=23K8]J@RA:8"5B>.\W%&QP+X< M!,,./T.A,N)75:M*;*X6ZI?[K(/)Q) P^]KC..U07V\9^MR:X?[]_U$8U21^ M]P50%H]Z#>O8MGE+;O<);OMZY3XR[KE(2)Q8N1O'6@UVJI%N1=0#$V65ZP"# MG3\1;HN!$!"0?/8=R18.2^A4@?#59]:;JJ064I6X]X1/J;S!;Q(MEP"ZNW?"1][_ N!/I0XG(X\:';X7<-=#RV!&Z-K)X1/O!_%!6O4Z1; MEW8[N9@1=TK%P$UL=HW"W^56UV /&&[[4J])QPS')P=TBTRAL;YF]I%131I- M%+VK\"7+=5"X!*UB=8&5GN6C4IL1X>"_OF$L^'D@?ASSE%R)/WT MLB09DAS:5.XIMVQB5J\%RFVFCXZ.!UKHJV[J,>!7%HH^X5#=%7&*']'V# M$X-E!GP+$;X_CS0_^Z;)+QH$^?Z\4[7SV+2Z';+4EIT#*G7%ULF[^[ZNV@K* MBN^0)=[J[%&92=],CIWW3560EI3>'3OH^L94B<&TL=EYRU;YDE(]8U:J>>?M M5_#QH'IF*ZIPYZU5L3\K*[T[=MCX T(EEMF\OEVU546HY!3:':T;?C.HQ#Q- M:]]).U:$3E:)W='W+3X,4V+ -Q'A>_!(14!6J&!WK*']FQPEQM//[_NU=44\ MUJYV=RQ7]ZWH)9:K7>WW8+G*GRVH;<3J'+X'>U9LK14J>#-K!"^(P=AR3N#R M_U!+ P04 " "Z@&E5K";7EGL, #'N %0 &YW<'@M,C R,C Y,S!? M8V%L+GAM;.U=6V_;.A)^7V#_@]?[K#A.3L]NBO8<.)=V Z2-D:3;\[:@)=KF M5B:]I!0GY]?O4)(O<21Q),L4700HVL;F9;Z/Y' X,V0^_/XT"SN/5"HF^,=N M_^BXVZ'<%P'CDX_=;_?>X/[B^KK;41'A 0D%IQ^[7'1__^VO?_GP-\_[3#F5 M)*)!9_3<>9C&/*#R4LQHYX_SNYN.USGNOW]W.OS2^?9PT3DY/CGQ^GWO^,SS M?OL0,O[CO?YK1!3M@!!<)3]^[$ZC:/Z^UULL%D=/(QD>"3GIG1P?G_:6I;M9 M)OWX[/2XI\OU0.:(SBB//"XB:-T;Q8IQ MJI0'94>,)^)[1"D:*8_X_XN9I($'(P\2D1$+6<2HTM_',_@\H!%AH0(*$HFF MDHYATFYO@Q^?A'X<)FW?P,]9<9 MA ,>W*SE&Z3B7<120H7-+WQ?QG2SZ%+TD(QHF$K5F@PI?:%>;D)FH]XB?;=S MK0-!8=Y06+,6.3-V[#11=VPRC6['WU16U2Y;1;U7H4SK$;7<><9$C1(U'BMO M0L@\T2<]&D9J^4G";L)L]D&C\'))W']'!\O7!5%3^.(*BCR2$*K:X*ZXT\/E M,57<:6PLGAP&TVIM#8U*\OR<[ .K5"83U#3.LDY71\ZIR]- M$!'#(AV29]V&/7+-,APLRY=T3 %C\$">K.F%PCX/EL5K#L?/"5L53G3;PY3P MST($"Q:&%EA%RW# +#]">2&?K;"YU=?!LE9\ K+4V\$R-Y0"#BG1\S DL,&F M=N)<.R$L\&CLNXS5#6_+0/H=(0,J/W:/NYT%U>>LS+&8MD.D_\H-\]('EI7H M@5RSU,_"(CI;UA]+,;-RLA'MG $ /8K=_AN[S1T!L*2?O)%>7W=@23Y]([GV MN0O+\2]O'..-,"RI[]Y(K7[ZPI+[Z\&3VZI+&TOS/PZ>9@?.NEBR#\U"SCML M[6-B5X\&_JQ6LRW&D;'$G]5.+J#9 1?OFO$/O;S,AN9R0GS! WU."O3_E A9 MH#-[O!$)=::+IZ94YSKXJ?@>S! MJ*VIE,VU O=1>6&K7K37ZMTH>GEYV]+',SWG:.IA #4QEW0* M"*6^4C#/P HNQE2G%;M( YC;L+)(."0,K*(+,F<1"4'4F>#WD?!_%(%#5[2+ MIRP$U6*L*.W:L ;RREB5,G-EZG\VW)F#Z()(^0RVQ+])&!=%32O5M8MJ/2=+ M 104LRPKCR3QH^\LFE[$*@(=D?HW04N4SYX*-5M'M%3SS]4A%56UBFGI 4F5 M..CNC7T+Z"Z @ZQE%:L1[)43LIC1O")6 M933'>-N.RVZ>KWB0J.FI".%PJO1V$Q6%]+'5VL)2K@$=L8=O!)\\4#F[I"/# M+E12LA6)X<1(;\<7H'692>2\HE9ESG?9&/9(7"47<'P5W*\#Y76]%M%L^>11 M2 KJV$6Q#I2;QZ&LK'VI-ZTDE.BE%:S*/Y29R6<\?)24M"UQ889%N2*J4-,R MHH)C>TL]#M%O2D8TL MQ9+I93XMNJ2X2CQJ&Z",;BR7=!<.4O5@BDOJ#8<1DP#ADHY#H\+D1KBDZG# MJO@N'=4A>; JQ?D<5205AFM7K6]9?13N80BWH:.Z(W<'.TQM4;89WQ0&:%Q2 M#B7.GQ<>E6HN+I?4! YAU00QE]0%#F%YPI!+N@(Y8KOD*[JD3W!PC2$7E[0* M.HTA?PMP5YG4 6;RK[>>8K\JH#PQ]GRBIMXX% O58'8]OHOV$NNKRKC3 XJ7 M%)25S](YS(-/C.ND_CR?UV F9,3^3$IN17 ::,EN6O&& +?C;6]807@*5\EZ MXO%6-.:.JD@R/UH]L/#R@XV2P^2B!FQ04@_1)4W_A9_#6#][>_7D3P$AO8/) M>#4>4[\PW;05(=I-7,V"*.>4@]6)3ES-KV4[<76U*H>2<9_-M:7Y/*/%+_^A MZEA.#=V>+TL7UC*L97X+KE8;CJ L?X@-7:]]-%L.NB7S:Y>),;^VJ69;YJ(P M](R&;6RA983+ &V5H&1B6Y\]@ MN<$VEFX$L'X&?L0>RU9E]09GFXIVP%?2@ OX5OJO+KZ2!FSC6SM6BB&\ M+F,_#5?[Q(')5)1LA1=(;"QO-P$T,_ ^"0G3P*@P!37>^BVE4"TH'H]U,BZ3GH[$ []V!(\@[!3377"O8'D3W64/7MQ>H- MV$YC7DVZ:Z5B?9"Y'6_F*13A0E=L#8\.["C#+1UC^=:DW] ,B3; &QO%5-QN^GF571U?4ULC&EX>_/]US#.1*U3EDL!C]U MEQB#-0*HAS.T2*> 2T'7W2BHXJ1W*?;:], CW])J/T.V'O#& DY8*GX]Q-5? MW;^$I^V-J.=QJ&/RN\U#5+^52]EJ-*(IHR$UR"#,!R0/2M>)2 M(FUS ]\ X-,#&^)"!]0!G/=JC##&.5WCP.?J4#<373F$8Q^2D K962[M;2UE M#8J=[ OGO*+.LMB8@6%CNW6616.^A;V4?2XBZIUZ;!TK\*#X7/!EGOKF-X&^ MIA6N9#5GZ^_2NH5$_=W%L_3N_>H5%/W8@YK20#^1D%X]@@E,Y6-)\AVZYMLK ML$4RWI'%%Y@SDI&P&NG&BNW@N8_G\S"]?HW'4EJI'1S?A?RAW>%@-:MJ8,PU MW7R;+'=-Y#V7A)QY+AD]:&Q85>:2+8(&AYV9+L5VT> 0.L2RZ=,_]58Z\*B-2E @7V]JI M61>NO"I@EM'2[G@A%,RDQ$+7#UF HR3HCE/&8\6V 0>^W?I>O^2]K*+YX5E'J[TE?\6TV,LI:4;.42 MHG@I#^XF8GDERS;T(^4Q72J4[:3V5;Q%9[7"GZ#X]XONT)+=BRPTT7R?07U( M$L)>-PAFVJ$5Z2%Y-(Q@MJDAKS0GURH&Z_5SOZ]]Z;JKQ=GQ& MAX3TV]V)?-)C0SX1Q M_>%@'"6WO%XX\\$BU=CJ1MAVZ\@9OIP./_Y< ;<]3R:G+!F+_#6KPERRDC$[ M*W*"[8T'*ZG]U7A O7!B)U/J%X_3:&G8P='%4_I&3IJ(HW\<$<5\C_# "U@8 M:P,Q)1/^0Q[AI#.AVD:< 3MI11%'T 77?B\/CC_:MLP.1EDC*OM$9P"MXYHU MTZK@UEJWP&+8L36K-E.N MK+?C(FFK(#:WX@+25\*=Z^E>#6=Y&VY:?G6'3#0\SUW:@/?%"6Z&(#;M[ O] M%VAE"I_\'U!+ P04 " "Z@&E5H7P"B99 GK 4 %0 &YW<'@M,C R M,C Y,S!?9&5F+GAM;.U]6W/C.++F^T;L?ZBM?>945U5?IB:FSPE9MJL=Z[*T MMKO[G'V9@$E(PA1%: #2E_GUFR!ULTV" F"((V(CBY+ L!,,)'X\H+$W__S M<1V_N\>,$YK\^O[C7WYX_PXG(8U(LOSU_>\WP>1F>G'Q_AU/41*AF";XU_<) M??^?__$__\??_U<0?,4)9BC%T;N[IW>WJRR),#NE:_SNOTZN+]\%[W[X^+>? M/L^_O?O]=OKNTP^?/@4?/P8_? F"__A[3)+O?Q/_NT,'AX2^/=RS^"V7+#Y]^^.'SAUWK]]OFXMPZR_>U=,'6(AHS&^QHMWVS]_O[YX M/1(),$:K^\P:TA>Z1C&"25KG(B5$A2/:TIKQ3"FR5W!>"S,[G"P?V)# MBB4C=3C'>(&R.&T_R<_'J21X1^U+4L6SDH<-V>"_A'3]0>BQ'[Y\_N%#3BZH M@13#D](@H2D./OX<,!R*CR@,:9:DH$<#4)WP[8:R_%.$[W%,-Z(/?\X;/.0Q MV V?,V%F]$J.869(0H3.NH2/V]:"+9N\%]3AQQ3#[K'5<3L"8QJ^>OM\)ST< MAW]9TOL/$28Y8>*/?/J*]X_)/\Z AO3I]-DBB]$=CG]]7_5S04TL5#EEV\FR M3TVYS'9"U25>HKAX]N21\!+"*EHTIFF!^%V^;C,>+!':%(3A..6[;PX4;K_X MQRGA84QYQO M2,H)C/]]XON8EQ' MZ[-&,CH/:GC"PG>4 8C^]3T \6)+^YL08QS]^CYEV7ZX[6[9$%LM&%TK32YM ML)[@R3;YJ\!2!8LR]47K-@&[C$@@5L7K>BY?5$%9*W+TT?BK>;Z;-7HWY5MB M6XZV7](D!:$^B_-Y!:B$E^(/;8Z/;*0F2TRF.2ROJGJMH:(/:)=[U&%&_OZA M!,V:!O8_!5NI -M_0=DZ-_5U\;MT$%LP78$(C\8]&A\U&K\I5L#USC(MH:\* MWJGW]%C:8VF/I3V6]EC:8VF36%I["[(,E3\+!W"VSF(1&0QHNL(L@%X;AE=" MB.]Q -1J^[[U1K4%IIM0Y=&U1]<29#0]%I^+!*0)7X&LU0%3U6[>4O"XVN-J MCZL]KO:XVN/J8][T=E"[H/KG8($("^Y1G&'@&0FFFJ20U(YC"3@KTN&ALH?* MHX:7Y[ *_A"+X$!8;;Z'4A\/DCU(]B#9@V0/DCU(-@F2-38?NPCYQV!):?1 M7IYPJ(7$KSM:PL!5#_:@UX/>48/>KUNQ5\^Z4.CA :\'O![P>L#K :\'O"8! MK_+68Q?N?@Y(<@^?*"-8UPECWM'C7LOMI+_I Y\5;IXY.N1 MKT>^'OEZY.N1KTGDJ[[W6(.^$0VS_ ]15P+GHM;L/)[B0-V#8BU".D'($WA\ M)$@XC]&R!/N5_MXA&IT*S<(PFM+HY7Y=]7.7U&2,"=YA":#XOS%B9TET"B^O MC+*:IAU2>;J5HN+9<\P(C<[ANS(L7]O6&IUBCM2H?-72 HT7AU58A755F]NE MM@SIJC2U0&4A;=5+2-K. GW_-T,LQ2Q^*@[72"BL:&F!QEN& **)MU=+9%53 M&U3"(V24'?WN;VR+TARAS]B,.ED$.EN1N^ M8;>HL>BI+AY[ML9L":_F*Z,/Z4JD[:.D>L5(6W=.ZSF)\55V;)._(O!U$RM4 ML2EHNB68]U+"7K7JG#9Q\H+!XLL!:JZ.IZ(F$'N2;C5*O2S0#I@0A2FYQX!< MT5:72(B6->^7-.J?N9H7CN&YQES7JGK(UBN.3C ,X MY-4;26FKSFF[18\7D? C+4A1CKI&^=2T'U7448$F*EPB*YI4Z^RJ)AU2=8/# MC,$D?/QT=TO24MN^JHD%JLX>P[Q\6X4.D37KD#HP?07*O'E:W]&XA*S2WWN+ M^+V9B)B2'\K'Q9J\J8[C8LJ^3JKC;;3\&JMC9+KL*5CCBKQ]Q39.VS M)4B?S\[SE]%I$N1NU^ZUPU^1I;\Z MRY(T!*3(W1=GN9.$X%0W[>XS6QI+HS0PILJ?JZBDRJ&HRI>KB$3#QZ?*JGL( M1<,MH\JD>Y!%,=:JRJ![H$4I3*O*GGN813UDJLJC>\A%-82MRJ%[0*8ZE4Z5 M)_?@B]P]JVJ2NX=5;[<0RP2/ZPJ4^[!E7J?MRIOKN(3E2P)51Y=A2X:"+$%91$2[#1+? MKW *MFJL<1B]D\=V?V2G0[+]$?B>$@N'<01^4G=+L M+EUD\?8Z07Z-0TSN)0? ]3I;Y>MHNY@C-F.YMR7*2_#-,K/,QA& R;:]1D4>AU M[I$OQ:6AUJEW/J0+I+Y#[_37+Q/%7KY8R\B*M;R9U$U?S&1X29O6BYET'V#0 M8ZD)L%=U,+G&:B?6F^)D=!^GT)N,)C!/D=7NPQ5M6)4C0$46NX]6M&>Q#" J MLM=]Q*(]>PI.X9XS0?5XU'9&*/+9??RB,9]&EF+W48R6_+58AQ821%LRYVQH M9M^ !W0!GX#B%8UA5GF 82-/G[H+S[1_=&\A&E.D-PC3-*IXBQG@4Y%_,*5) M7J9/9-&7ADYTNMBMVFN6!V,AH7:\7"0<-)60I&O"OY=$C'2Z6.4!["!,ELDN M,PD^/B 6?7NF.E_>-Z?0Q7(=Y12#(K\[!5OT-1TO\%21=?#E9 .U@IL:(\WTF^"UZG*.2LA(=/\69F9H73ATP M6?-6(C.7@98N[@\]P0GL(:DP:CFPT&"*F@QOUSU=$)C3<"HV3!QMR9*N ]5N M5GFYWL^LH$NH>8DNE3?NF6[ICE;7?(BT][H3^\!&M57E3CQ 9^':#78H6(RU M:Y8VU:V6695'013?D?1M=EGMO3>A54?NSHFNDA%(FP!\)T57Z4V5OEE5^]*Y MX)?N&U8Q@GH+SI;$SK#TYWZV[NQ@P=:/BZ4[>%-7=]?L?= MQP!F"B7;0'M^L\<=XB1W.@-['!IJ7E?2:-CNW>PMR/(G'?Q)AU%?]C<[6A33 M?1"J4.GSHV4Q6YR3!"4A0?%>47+U"P*[>HQWYXS+G>,O%?1YN/V;07WGX?I+ M!QVO[*+\S\%=]OR @&TO0-Z&Z!Z^2"6,+P*$1ZQCQFQOY93\U MMAKG[#/UMT.;@C>GW E="+ +60'>+^3]0B/V"S6!OW:]/3_M2[I%^&[/@Z*7 MI[RS)>^.[.'>J_,&O3IY.AA9GV?YR<;)$C8Z(2UD@:I=.JI]+)_(NDL/65/2 M$_&)4V6MYBMQ?36N92D;>WZ,T1!=!S- M[C%+R'*5;F,[R3)/2*4+MO\EOTI/I*B*7Z0'FHR,Z;U0]KU0QNG\ S$B'BY> MKV0/J&K6&ZU2_5G=<"CTZFAZ[YGTGDGE?/E**$=UH9.+_%6J*:JN' ;K8ZW# MZ>ZY.>KDC#:RGYSRQ)E9>2-QHJJA">?D5*(Q:">8VDD);J9;6TFNH7,VWOWO MW?\C=O\KN"KL>OM_ 8':G;,,R'X[X_GYIA6.Q/5+07XY&%" -:JJM1G=4KR@ M%74^H/ & PJ'8Y@XNJ6[T^9GCQM1A*\ZIJ#1S3B15SB]03'FJM25MS=.UJXL M\W%%9E42Z_L:(!<@(DVB\I(1NP/IU03K]V[O[>(L/?)TP:?#NH$/_[@)<0*0 MCPJB0L3+B:]O:(W.WQ.^P6'^RDM5D%+;85!K/E941_5N(]R15*)):]L-N;[F M&'CP-4([X('#IO); ?TF>^2GGMUN8DC+<\!AAQ)5@R=\2^2!:JK3RYKW37E/=M:[#4.GW]6G[S_3Q61T^JT,QZZ$&ZE!=:.$BC^Y6>C3) M;;U_A&HYJ5SB37G3I_I;[&!S=E2L%.?BD[5:A+:PZ)T*I)O3L"/+X/$5OHJF@KDW![9F&.%[#%% M9@U=\.XSMGW&]H@SMLUE=-A-[/YKV;W/.X(4T[>E8UA*TE:@P:=BO\%4[$F: MKO :L>\XG2T6L$B3974Z;FUCGZ&D%T<%*#U;W(B%*0X^SA:W#"5<')6HR3E1 M[S@6?GQ\OO_X? =T'K:DLWQ'NH*]2CU-5+N_7>ZR.TXB@MC3D7A+4H-JV_O< M"9\[82 :72]GM/E.,]BPM.+J<\X.TWA!5 _&.>4MZ$AX77#L><^/]_R,V//3 M$*39=?-\"?@*,7R'8.;$G4;"*=SD>J;:<2RY>Q3I\"Z?-^CRN<:P6$F8XBA? MFK^#U E/[!RS!65KE(2XV%1%.HCTO'OC84R<*U8/.Z?J&'LDZ6U>25?I[]U2!YI-25?9[YU1=B[2HBA/=KWZS0TWE#)7\Z@Y% MUL_EWY)4 /^+)"+W),I07/$6I>WL4_DG25?7.,[W:;XBFULJV;Q:C# ^SGKU M#N<;3,VQO](V/45+9HOI$2#,)Q5'4\I3?B,PXXG C'/TE$=H:P_JFQG5QXVT M.#C&6&)RRR&08FN[/O&]+!Q+RX0QL5ODLG'R]$I>\L5S6$& ,6.4U-XHT.6C M_)RI/\I'[OJ/W/7MH_;1(>>C0^56#:TQ+USB0(ZUJ,V=P:5IJ3=TJ %K8K!Q M/PDR=\[SWJG@4DW$Z%1(J=>U/Y(@HL2OY\+41W.4C*2'CD^ M)^D-YB1=T@?,_B1Q#"@P3?%71K/RFK6*K0V0-*1J!F)84LPUB MZ9,P#RJR.&3-ND^"P1MXDRO84?9W-+ZDIS+)0;OO.+CI-2 X/6Q$8'A.C[4\V?+^>0IW[)SBV+W=1DZ:CY C_QM29.^,(4>P^7 IZ;XU!2?FN) /+\^ M@T$*\FDK/.T2JRWV$=I :;O(NC* H\UATN"R5=3L7&<\N,U6(]5T[S@5:S"N MI%R(_1O,L]*SRYR1Y 8:AC9SI#DES=TJXU:B[4XZ=P2X?_O?A?Q_^[S3\W\8I;SG:_S%@^!XGAVE3C>N_ZF@K@E_Q8!^K'W.L MW@>AP%K+I?X<%-/N$A:1YS<%=$/7F-4%"G6[>P>T=T![!_0P770>&WML["HV M;K8/64;%GP*20"L#'LP[,&P23"LOO=8!L _!@E.=T 2EF!1PUD7",M'L06(5:CPP-@# MXU$#XS/$$I(L^1RS_.!I'2JN;>\AL8?$'A)[2.PAL8?$)B&QXL9C%P]_"NXR M#F^$19AD(KIUW4/*XUE"1MKT.(1LD?($L1SLI6C2?BOC/!<0.>, MGHM:8A=)7E),?%6'.AN.8A?;A2L<9:+@4DXEP]&Y6)'XDMSCZ"))4;(DL'PF MG&-1?1)?0;TA_+VR ANX5O*DT>E.I0@50DSND97DUR[098&3W=)>1*6@%C.W:RI\#DMS# M)\H(YLU,9-D0EBSC>A*\03QF@[CJKL^]*KK8BL?3-&,,_IHDT15-MA^D.+;] M0-[6\;:.MW6\K>-M'6_KC,_6,;4_VH6]/P9+2J,'$L?-,&]E?TN M^;Y'NV. M&>T:# )\W4J1NJ^_LH>'N1[F>ICK8:Z'N1[FC@_F:F^$=O'LS\$"$1;Y22>QR0A,.4%IA57&,(/"Z!Y "%\'/.4#.@WNXAEN"["2(]J/>@7@G4 MG^Y%[>(@:5]ASD21Y8MDKRU!OY $)2%!\=$UZNK WO!S/+CWX-Z#>P_N/;CW MX/XM@/M.MD^[ /]+49KF3EP*+P[D[N^-;P;E58>S!-KUR/'P?,SPO#:]^O?D M'O,41]?P?T9"^.LFA=7Y.XBCL-N/5FY>)6#R@%C$)X7%]Z23?MW!@WJR4\Y@ M_=(GC&\PNR=;K;5)G-,%?\T6USBDRX3\&PLN"85V/-4XI=S1\[S= MXNT6;[=XN\7;+=YN>0MV2Z?;Z(!.^]K"979-NL-U5*/!&PW>:/!&PWB-A@9;HF6T^SE M89BMLQB^C@*:KC#+7?T,KX3DWN, )K%A9E*SP6WAY!;$>1 ]9A!=&^J8KE"R MQ/PBF1P$:";D9WHL/L55(2*6J1/=,#.V511XC4-1NXLLR-;AD:6B\%S@WNKP5H>W.KS5X:T.;W6,S^KH$$H,*"S1)7*P;)R57X36T!A3&LR6\:5! MC#>VQFQLF4RG>G$1C3@,%DZ2Z)3$&:QWS5/;C4;S]H6W+[Q]X>T+;U]X^V)\ M]H713=(RE/XIV+Y[ )W[\OL-D;3*6+: M#HM'D=['*V$HV\*@;K&&\I26-U' M]U6 HUMLDI9Q= "S@1+R[P)GBNH] M=Z+F4D 7P89A#@V+7R*<(A+S0(A-AO9O715BMWR,+?1MA$P/S,<,S"NRB:XR MH3EFBV\HR18H3#-1ONPEB%>/M:)K!WHR$YMHJJRH(7=O>(W_[ MR-_#3P\_^X6?E>]H;/#37H*$&DN*^EB1.WL7L,JYT]\N[:+H3\'=]GI8D7%^ M1Q(3F%EO4$L(N0E1'@^_03P\1^S[67)/&$V$],!3_I613;["X_#;,TUPC(DU MNEE%:B77/V^OPL:E;UV[WSBX,2;^)X>MI(CJJ]QGM>95]>HX55]@+[YFS-Z3P1(1_&14_!" M[- HGH0AS9+B_8BC:S%.\23Z9\93H0&G%-!]E.,ZFMPRE/ %9O5R8.?A5N=U M=T_3/&/A"G%\(/U <)7(:/6URM44/OZ7;1;E[@YA?X72VF"*^JEG[38;P M'AKOH7'20R-G1'4?IXW!V.#\45K0QKGXFOK;H4V-!:?\<5T(<#UG179_LS[,D$IIZ":!82 ]9H.IP@VH? MNS4[0;X/-ZA(7-C5#7ND-[^R\6;#,(IFR1^($0$!KV$I?U3BHKY[C[R=HQ!/ MUF)+4.+E=?,>:;]":WEPIZ[Y$&GO-1YU29/E+69K05P%W65-[/HWQ4VK.)K= M8Y:0Y2K=WLR4+,62NZ$+MO_E C;4QYL'M!&_E&I4HV-ZK_0(3@P=ZV_)/E;5 MK#=:I;JFNN%0Z-71BCY282Q2(8%K5'<;=I&_RF5,U1?/8&,N=5C9T4H*;Z=96DFLH#.'#@3X<.+YPH)JC M9Z !OV8>N8$&^ZI=,'8C-[^ (MC=GQV0PP7:^2GD%8Z6L)D%J+A>C6#>,K1C MZ&F68C]&J?7!H3<8'#H4#\;1+=WE:9P]BOL=R[V9NMV,$WF%TQL48ZY*77E[ MXV3-&05 !R\HB?;I=JHDUOPSSJMGP4=Q/.05 Q$!1 M5!.LW[N]UX^S],CC!Y\.ZP8^_.,FQ ELNU00%2)>3GQ]0VMT_I[P#0[S5UZJ M@I3:#H-:\_&E.JIW&^..I!)-6MO.Q[R\@$'25ZS2Q2H/6SG;B9[\4+"\<<]T2_>; MNN9#I+W7??)XFQ/A JG4RQO;K> %YLM>S4J)EK2T2O'+BWT$4)*LT;KFO=,N ME?7Z#D.EO]?5ZC.X7KA=?;9.RVR6&BA =;=>%WE4,HMH$\/<)6[K_2%4RRGE M$F_*FZ+D(CTWWJ'!#!<5%.]ZF 80:8AR57M76>!#C#'Q#CV2=K7D_QP1\W1F=YQ$!+&G(P&0)'#5MO<9+E9R!NK? M VVNJP:;/* HG$-6#7T[Y=#H27A?XFY8FH MF()SU7R1B"4,G^8Q(*,R?Y)R)X,$7B2H"8D*W0P0"6HOOR\"QI^(O#9^P7F& MHV\@/V03DXK[;54[F24PWV;S!]XBML3I);['\4%OUU"JV-M(J1&>,A("0,C? MW>^@'_DDB8YIR7%^/G6RJB.-AS%1@$1,UXE0Q-,C/3QA3"1!YA6UG@Y-MI?K MY*04&^PAHY3/P#YCMRN4S#9B"'Y%DWM@#4>%I$_2H__=4 1"24E7V>^=478N%45%? MY=5O=JBIG*&27]VAR'J5G%N2"H?/11*1>Q(!Z*UXB])V]JG\DZ2K_,XMH517 M9'-+)=BUQ0CCXZS7N%*!C.2'UDO;6*7R# Q0^H3Q#6;W9(OI7J&!_4Y>;)JW M-$7Q\>_B*K@KFOXW3J]Q2)<)^3<6J(I0<=9C^Y5H5W773S]$6)WGE[BY')XH MMK8;Q^L,('Z%(5)^D11OJ2HL:/GQHYS;/[&H<0Y+YQXS,,WR'T]1BL\18;G/ MM>?)5Z9O)&_GCUR1[;C/55E_KT*%&+?FG5?Q>MA/P:R/45)[0UB7C_)SIOXH MGP'4?P:0SZ$Q4E/DM0^ UACC+G$@MTRH3]+KV1Y)J)?$".[,2JC8C6NM6=TI<53=;%R2KQ=NH#KTXPX(M MU6HFBNM>)IF-:7-J4@PI6H5 C5-*MRDXI/7!8>20U7'PZMO8R].G8 M'6;P:N;PN;=_JK.HG ,XQ$SLIKEYBKP:JC=CG%>5C$E%%G]RB47G,O,4)_%G M1R;1I4VI'G#RJ]P8-*9SPE:W%<5.PLL\79?'*# M8RP\@M<@6-'3"V*T^I@D[Q8,ZULJ-%N,4[Q['CQ:@4S%O@;(O:0/F/U)XABM M<9J";J19^:U6BJT-'O2:@X( 0)S_>D:\PVH=0(&]QPQ<9UW&75:'0T0FN\Z MT[WZ*H[TSA$1R&9?SW2>L7 E-C! 0("# /%@L#E?YCL:&\_$$3'*4C")H]\0 MNZ/L"J490S'#-Q2>C/DMRP#MX2G0%I*X6E2:CV*3$M*68;D-@GX=2O.*D@:];]00^\V4KB9,EPOJ6_I*&V$&_)&075;L[P(DU>5.\X%GYZE;E+ 1(8GRVF#"A+ M9UD*\#^)JDH4ZG:SRPOE?'ILFIP\Y9L:!C+W7Y>AX>8#],C?TR0,&=A;4\38 M$WR5F\E%1=[*MZ8]0)_\%5,O75P*/8;+@4^Y]BG7(TFYEL)@V@IQNL1JBWV$ M-E!J+K*N#$9I<\@WN"QL-4O0J4PH_=5(-1U03N70&%=2+N2T&CP_H&=C.B/) M#30,;>9JNDN'<&NWQ:JT]K]6FM MG>5\:@0#AYC:JA?9'F)>:[.@^,"R6MLZ48>8X6HNW#W0U%2].(?EM+2/ RAJSE64'DI\];G)'X"U9 M0Y/9X@:^Y8OB'L?B_%]5X7'3PP]K;D"%LOP8I"1GM9N'N#=/E;<>M1S%FWK> MU!NKJ6=#1PPNIV]>!4!O- MEH6H0XTW$KV1*#L\N5C@O*K;12Y1M^CQ&F2M2*+(Q,*&3;VH*%D!,?4'\+#> MP_JQPGJ/8#V"=0S--570EO':CT&"TQVN 9("+HJ7M<5M>J/:PF]-J/(XSN,X MV8VI\/B(Q%E>H!>'&2,B0_OL481C<53$:]>;+,U7^FQQAIBP[#A8:D6Y6UE% M":-C>_3GT9]'?Q[]>?1G!?UUH+OM L-/P5W&@4/.1:W3.Y+DE :(:?:@E6-D%T1YUCAEU5B3RGVS%:'J0 MHD-JVT4D#@0NB-"0DURT)EO)FB31Y4&N)H58;<];'?\@3F7AXZ8OF.N5!L>F M;VN<)\M+D7]I<]\V]7N;%4]W41I5L2^/RL#L3_J=QF' MDN*LZMVLVCN[=Y!/+B^P5#'/\M)LROW&P4VOY>;*J*O.>:MIW0OE1RM\*DZP M1UN'YRU#"5]@V!PJDQR;#-$WCXVU6*FN[/Y! Y^OR1W/3P98F[>7#QSL_$T1 M7\$/8B^Z1S%TM2%[U0\=[CP6^+9H.6=X@T@DTG,2+NXVS0L%6%O:VK2,8]:+ MR@JBI_5)+GGTT.?TN:4F/%!\CIXD+O%>:!CL+)_B K'J'RF8.=Q0NP MHY(EV3?>WZ+UE=+H@1P\T1W.JC(- Y[E>VA/V>I@9W+.Z :S]$E<$)QN$??F.*K7X7S6/MOJK-9L"+WJ:I\AT2!HK1G+ M'4N&A%J9^3H/(&WLQAU9]8I/V M) YYJ)0^Q<^>3ASOA%;XCYTI_#7>& M&T:6%-^ O5+FPWT#BEX5Q1FW5TW=SHSWFE2F..?V:K@/5\HU8RJ*,_^+G_FV M,4+%F?ZKG^E&"5C.@4'[=F!M&&;4QJ",^VXQG6JNQ:@-Q)KI=^!4A',:8LC3 MKWC 8M0&9 \:I^U$#]-.5)SH5@AWF/9<"36G[OSY^XN2- M;=/](AQ82[J\O6WJLW46BU6=9_"(,I<,KP3BV)5"OZ2<7^%TMGA][7S+4>QR M&D6Y1D3Q')'H(IFB#0'4#J2NQ?5@-/Q>Q9QR1[O\R&H2]%@\H'ATS1HH:],? ME35'F*5MK5*]/1H@_CDZ'C!)IXBQ)P!0?Z XJ_(3:?6URQ6L)%+ /D%@?N7" M$B=A];%\A1[6.=CJ NDKJ&AFF=;75W3G$@[:6;YJ-7KVSM'^TG%]EJJZ6N5I ME^2YOXWD""_ =%>PH]C+*B?GPA+!EP $7N4,5S.BULF':[8/WQ^KJ9[1LB96 M::POMM)W@93C)) CM@AK\FH 67U'>S2 M3Y/E+6;K4WQ7LXM*6O9"L?#5S193V#5(')"UM M4UQYIE:NB#1Z6N:HXL!J-9I4Z6*5AZ/#^[5VK+2M9:I3!'MJM+M/Z,B/"J8< M"2MW9/6./L'*?H)5!W0JVB*.6!^OR:A!\_4=?$*;SXSQF3$^,^8%2PJQ&>=R M#>4T'S'7(&3CW&M49E8!E3F7\*3^)G5#)\X=:%5FM=K1[-S9466>M"TWYPZ# M*K/:GBE[U7,TWI^JN>II%0@_9K,N!N<W"[F8Z]K$P:< YK&Q'5E@#''NC6XU8KM= Y M0*[Y9A5CY.XA\L8:R'4PKKMM*N:'.P M?_+S ,X!=#WF=(]-.;@4==C5SJ/Z.U OBZ)_BS^F,_B5U1G/,6@HD.2 M5V*%E7U.$E'$H2Q<-%E3EI)_YRU?D&A@) .L"(L,A'S&YHBEVP]'=8ER-#5; M/*L]NW48EK'3?C3+)]GW95)NJ2CI"X9-C&&K/>R[MU0DC*HY,G>!T MP?8>BTF8DOO2:KZOSKYW]RB[!SF#L LGTU>5C(E?-CGX3AS/$\K^\#;#*AZ4]Q\>^>[;/' M< 4K!%\#%CE;+'"E5NF'".OS? X(;+N;B*0HGJO#W6[Y3#4* 0$; )9CC3XV M-6R_9]FW>50G. %8K'R6O;R7[;/L>Z S9P2F>R/<&T^RB\KT M6F6V:T?HF<-=5JW.JRSITS,7VSS:G6J7WDM:RY[.8%;Y%CG=)291R09=P:O^ M ([R5X-FF@_D K\'\-7P?4H&<)2_9N]382 7^"UQ6>CQ*1G 4?Z:O4_7?#O/ MW%'5K+QN8[]2P]YN$Z1L=ZP*BFO;VZT1L#58SBD#<0@QCO@YH^N<2'5%V'"4 M7CB]QGET\Y:"Z2E0H8B! 75 ^LT*,7P"&"0244]X)65^ZV O=!>>9,,QGB^-L\"J^E#OVQL^EN)RAII!3;?O>J#_2#+DV M4 ?+#4>Q7.=CLZ4,A$;A/=6V[X_Z^K52U]PN[<_#D;.[(DOG(MGYB4%4CCUT M^S3>*N;:CN<<]Q5IS"WXKQG1;B42G;W:H9W85]+)?_.577QE%U_9Y4U6=FGK M?' N][T%0U3)D>%@PKA2"9_.G\S M5ID[XMPQ]O[F2#\!Q;ES\?VKL=*D.O<.UO%XA528P8BE[0Y%XQW6 H&J#%NU?)[7$.(G0@!&V9MZ?VS#"O<4C+.5>4 MH55@)$_1.9^3>16AG6/FG%?)S)PT/:3BG /)S'3T>:;9.;>2 U/:ZC"^ M#=R;/1WN'-0WQMZS*6M2$,,Y.\#DU!@MB>.;:4^ ME/ES+/X B]#:'2K*NA]B:P'C68"2*-AP%*#"S?+4T,70[B&6/ TFB/0.AS$[ M'"KJP1_"0/E]%;^#2(HTV3EF"\K6PI68?S]Y0"SBWYYICN-"\"V&L5O-7!!P M"T\LF6AI&P=J+TP8$TY>L>A/G@Y-MF'UG.KBGI&+!%Y&5F2DB$#[[0HELTT> MK3NG;('%K18 -/+0:96A9I^"<3>\S0$G^%P=-34-OGB+!G MUU;9GGPMXD;R7G(&>6]B7_[X4V+?D+Z1O)TKF@$OB%];KT=7L7^P38!XRI&R15:XU)SUL:C M_)RI/\J8.\''$GTLL3]&Y#Z2VMHM)O7.X$*L"OXEYS*'.WV-U)3ST*G8=*]+ MI%6DV]#\^&P$GXTPOFR$GOPC TUJ<,^I,="LB7X\T@--O7#4@SS0+(_>8H#. MG85V9+X:A.V<.T+=]U3*?+/.';!V:[(:BYZ-5+"/GP,4AMDZRXLP!%1PDB=" M,;P2V/T>!_"R7A["4NK2+&W,'D&64LQL,^33T<:MW2!]\?D5Y$#4>=P6B1#'BW_#T1+/0;FK,ZHS2E^'?)8FA M*EVL\E N.ENPY6^"&G;85'=J]R +08X^+CD@H#24L6DTL7R:=D4@RV9BK)( M-P]H(Z5>WM@JW;.0G. %S.8U#F/$.5F0L*A"E)^QN46/DS1EY"Y+A=OYEA9; M6@5?[0:SRW?%=K;=QG-BY^+:%3#[-"; S*A69^+ENQ)UY28T)%-1>"A)"T.U M@3 8&[>?/(D7:I)+-C&E/CX[Q7YV2@=TTO"[J$*)&2]>=B6M50U]-HV5;!JU M-4FUP)R+?"H!:-K$ !IL,I"&.G8N.4@NA=2,F\6I3 ^S"]:%9)V.7K.^DVEP M.4KZ7@'G%K"2?J5-#%DG5ZW)[6<@:U?W#:L8^\ZE)#514#H>8KL,^_1)GSXY MPO3)&AO3.:6BQI8))^) ,Q,-N\P&FG)HU(EJ+64&]%PDKMP4M8(23F,2Y0D: M^P9YZ@;=U_@/L@1ED4C8V]%;GP33^A'=I[48(M$GJOA$%8D;=DHYJ(&\V-TD MB6XPNRP%5:X8^L[V W7(I:09"FN6LG3"%]6J'\9L:UIWBOM)XB34)'P M9VU[I?J4Q-F1UJFA^T5KJY1_9;#MS1E=D"KQ*&EA.?2]VYT%7ID6]]G ]!TN MM"GP7-$.-F_,SQY!@ %^D 2QIQP(B$L=A#E-8R!MN;.9*SBV\,0>9A#HW%[; MO77E2KFO;-U+VL.6E$J*2UM9I?39MN0"H=;)X)P;^BV#]53#78B2[P6R< M:[ZOH#X8B@$73:*UJ".IU]\L,(DA]>'%8ICM;.%EMPE ,E/LM2 ML/42(=X5C#0YDC6C@ZQ M/G_'Y^](\W=>)??M$OLJ/,P*/895H&4EC37) D8 M'MWJS,R+:&VN 9XK!:G>5^UF.?\K)2RW=@1=+R^9>)7B)6O<,]U2!%?7?(BT M^XN@^L\V\QD[QDJZU"@7JKN87>31EZU1>)D#*'=1*X&TZ;;O5.:9N:7I0I$+ M7ZE%6:7X2BV^4DL3)GWA$I_BZU-\.TOB<2U'HA,GCG,[IFDN%2;0K*O9N?72 MPXR: G^'$Z<6!)3?N_0IN,LXZ)7B:J4[DN2R'L#< M ;(GP%L :P"G/$#AOS(PXZ*&%U:U?D[WJ3\FZ?19/V/.^GDM[?E-XR#]OE^EMP31A,AR< >R.8FAVIQ6$V.1C>K?OG)=FF=BW6-+T%? M1A?[]3?)E]^+-,O?.5YD\2595'GQ30QI=0Y.MEHH)YP7.V+!@SPPI-QO'-ST M&N\JHZXZ4%K3VF[6X?8(Z36.BW-"*[+ATD"U0@^[&6+5"_GDZ1OZ)V53@=XE M[Z/!"*YP>*#N"JWE*ZCA*./GM-]KOG):XS):=SO51RF;:EWM9L CDY2N18I M;>-S%$90$>>6H0BO 5"*(_OY!['4Y-*@U,=G6EC)0JA#)[0QQ'21VR9[/S6T MJ0XV*T,)P#KGJ5>75MK4+'8J;-C%@G8AR&U0D!LC?^>$NZDBH@T,.R>EW*XB M=V$=V)$*#6CF7/3+ /L2.\6YF%4+=NNLF0N\N"NCL]D$1!3- = MB8$$S'=MH@"EQUUA13,<9HR19!G<(4YX0R^4/8(L^:UL,^0]76/V=+4_LI + MW3G(U1]"K$X)%]H2Y*W"(JMM;[EDZ (S6!OBC!H B=P%+ Z8%E16L*#6J:?2 MIS64ES<;4[,1WD-X_H>O7/P29N#3XYQ\%F;@\\NWRZ$QOH2AE(3P;D 12>LE]H6@PN(ZKM$G--R/99(]>5O'7NW MQ@L<^R,R/G7!IRY4L*0327(.%*BR* LY*3)E[TRAXM$FM2"F(G<_.L:=0H#$ M;E+)EX"+ZX/O4'$[[6&M5'Z/BVOO&^:,&'N>I900P_3ZC ^?\2'+^(CS!VWO M]#X1PG6\?YT5HE7AK]7K;+NCT1@^ M$N8C897&K?L!(!7=2ANIL<$&@)2W&^?\H6IOARHC J?\2EU([$!\H=KOM<5. M-K@XAO>.>N^H8WZH)K:B7,HV>+G$D]3=I]1T7 M5[UZTW:4,1Q-TCD%H'21 -6X[FX A4Y]\3&[QTR'A?+VWBMEQ2NEH\MH*W4Q M6"^5MKIWSENE][:H]BIURNZW(=D#\6:9>.^U&XQW8WDWEG=CM7-CM;9%+?NT M?@P2G 8D=Y8'L""+)*( YI+G'T6MF#"O,A.1.$MQ%#QLRW@'J*CC+7*-UKOL MHX!F*3PB$2R*RLJ!D#229.)C,0C??@,#4'A <1E'4[>9F]3;\LRYS+UW_GGG MG\3(/$,L ;GB<\QV_GX25AB8TK:]4GU:+"M%NE^TMDJY2@WF_NLL>P=I-W2^ MN'GC*A,H9RN.N6CRV4'U3Z)_ E@YAH,O&&HY6O^?#.RTP_T7%RK/5^1YY\%CGPM=Y-^( M8WXH>>*[GY+E;LS&+C6[5-ERE?7!E7>!C=D%5G%KW%FR!#V$&6P1*<;Q''8) M<51\#F):?6><* S18,B;(H80I/FB31$0U/7*A1R15WS89H;PYS MEAZ9PO#I\-[APS^FL%II3*)\W>9;00=5-M= M>;.3;$G>KE(?'[KPIXPKG8I].GSEC"@ %*H##ESB36_]4B6E.CAGO2H"=2;Y M5$G6J"9&<2HBT7[-N9!':C!36F.#=49,Y;J"-K.UG1)3,^K3!5%M_1I;^2#L M!J!\?-?'=\<7WS68Z#RH*'"EN\AN].@76#6[PIT!V1>X+BX$7>%HF6?MAO!S M<2\HS]9KQ)Y$,&,)$\'S+&'<-$K4T=,M18,ZI=Y'?=Y@U ?T >SQ,"P D']E M9"/$218_J6MMU17DK^CT5W3:X(%?T?04<[),1*!]PG\K-.U1@Z\P]2)=[ I7 M!6N,C6MU-L9P$=YV5G<3+:\^*V_<,]U2K5#7?(BT]ZK-?.GBRC[#YJ)GJ2IN M)=J6A5.ZE;.T;2]4#^TRT2L*%LUN@Y42+6EI-[Q96]B][Y+N/F#X$)7T-X0J M:Y$N;Y%\H_>$NA-NUK;$G9-A_>K__CX'MZ/2RF]4*\3B')L]7L]L+]*NO3H5 M7#B*3!HZ8NUS>GQ.S_AR>@Q'UZQEQ(3"9DJ*>T]WZ;GP8=\@/\/+4QI^7]$8 M9IX'&#:%]"G($I1%Y.@@>'W^B[EG=9_M8IK6!KDMC>X<#<-LG>7'L6?I"C-Q M#PS#*Z&>A&2*O4/JVM7N;]61.HFB_-VB>(Y(=)%,T8:D*)9SI-+',A>[:A_\ MEE:0=[._C_CX)I]K(6,V&G&HS!AY\NE#;PIKYMB.6*TWJ3JY*VPZ+ZE[E9@Q)28,-J ^B M'&L5>#H5^!1')SB!/])YC!)^V)>![-GB%CW.*P,U?6 M%>WZ<4[,G7B94\17YS%]$*84WEE/DP5()\"1&'%.%F3KT$O$N8E&L];^05;G M:UXX'_*W^_R%2]>T:C?+=3%2)"C9%1V3^W@H=B&64W"B7O76$O()E2O1%9'Y\^-H)2Z;EU?<%YAJ/3C(&, M%GZ"0G3+KR:N9*;Q2"YPG+M#3#"L,)!]?K?^SF(YR_@I;=A70J/!T+[*]NU< M5+]VYZ9-D6%OV7^R*'_-.Y*^37=B^SZIJDE+RN@K;!;T M[RW)2G+LHSWNVBHZZ#IHK3XMHM27:SZQ0GZ1?')JFU7U^1[[\.@V]E][ZU;/#B MQJ?/ 3I8! $5"SZ_PFF_XHM[TMF+-2TRHI4Z-KQ>RS)9EBHJ]L.6+[58?^1F MN*4631XCD((>U;,$&H-83A_G@-J^4AIQ0"3;#9C? $:OX*F^PY"3LYA4^X1R(U7RP*K;GC3>*OL*\FM:]UD1KY+BTE8^:7\T2?N[R@<"GZ3' MY0^*PO6YS08D,@S6VBDN_JU@ILU0EI-HGYL5LPSPC4) 2)K>W'[(0R/ V]7P.3Y51:FOP\@DM+S(4<5)\QW3A)4SN:XN22 M<""=VKWD?W],9RCBZX_IV#RFXVN/^MJC/EVZ@B75I(2!YDVW3S!V+67:U@70 MKB56MX^*#31I6BG:/=#,9VE]+!$CI5 V)L$ !4 !N=W!X+3(P,C(P.3,P7VQA8BYX;6SMO6USY#B2 M)OC]S.X_8&O:MC/-0E6IK*FNR=Z960M)J6S9J5(Z2=FU?65G;500$6(71<20 M#*74O_[@ ,E@1! DX,0+E7MF,UTI"80_<#@ A\-?_OU_/C^FY(GF1<*R__CN M^/MWWQ&:+5B<9*O_^.[+[='\]O3BXCM2E%$61RG+Z']\E['O_N=__I__Q[__ MMZ.C3S2C>532F-R_D+N'31;3_(P]4O*_3FXNR1%Y=_SGGWZ\_H5\N3LE[]^] M?W]T?'ST[L/1T7_^>YIDO_\9_N<^*BCA(+)"_/@?WSV4Y?K//_SP]>O7[Y_O M\_1[EJ]^>/_NW8\_U*V_JYK#7^.R^:#=^**"/T5&2 4<6@*5(_ER(7UZR150*-@X.@2A;P$]' M=;,C^-71\?NC'X^_?R[B[SC7"9&LRUE*;^B2P'^_W%PH:7[X 5K\D-$53--E M=$]3CEET\9#39?=W:9[O? 8X/@".XS\!CG_IZJU\67/9*)+'=4J_^V$TTFN: M)RS^F%F&W-VM$^RW9927+M ?=FP9_QTKH]0N\L,N;6/F6QBUC/F@2\N8/U/+ M\K'?H3V\"*#E(4A-="FTNN3_JAI"ASV;JJ!7;>&MCNES2?EY5.V:3=]LL3.( M[.OZ^0B.IGF0_3DMV"9?R$.5DX9CGV9'7VZ_^\^:-N'$ MB:1.6N3__8A;EV+TQ#]?GER/992L=GWK8^&^(S4Y(G.6"RO M#6UY8::,TUT9BDV4=TWOV'F2<4TYB5*NMY04EN09+:,D+>[X#KV)TJ[MU.Q+ MS,:J1\'UF@ 4Y(Z1!@=I@) *":F@^-]N#2>!C>"LMRWX9%,D&2V*4_9XSQ&" MZ-_0!5MER3]I?!%SF,DRB>Y3.B\*6A;SQ7]MDIS&_!"YY+].TJ1,:,'_QH^6 M^"+C5\!5TC2^*A]H?O<099\8B[\FZ;YD!\6 /"R\8C5?;4\TOV>F^_86!XD$ M$,S),W'&X(YFKX,*)1D3_PGEO-5 MA)'0O@ZL"F87(2_R^".7QXLMZ0F)82_O!Z5OF*&NA.Y?CU;U?HR0..775L7M M@(H76?M7+FM!U $LRP>E;("/KD3L3T?+*,F/GJ)T0X\>:51L_\3E\9S#('\%&.27%HP)B:?V_ Q*JQG370GOST=Q8XT2#ZOY1H*( MLOCH@<:K)%L=10O^9Z'\8D1Z' FK@HZ#XD7\?^;BOS4,>H$&9-N.Z-QOM9Y;%M$A6&3QI_T(?[VFNL*3VM$3: M.SMZ]"![?->M:9*H:#;:[09,?I-8_M\@1K,^-C,#WGF3('#2BCLDW[P.KV"92D97^7.,%Y4" E BKY[0ZV'_'P103F,&)O<;*9NQETI50<'Q_E](EF M_&: T"*47UM5&PZH>-$3CH^YHG CZ4Y(+U"S?% 1&."C,Q'[D6O,B\WC)A4^ M;0R>+X0>DM,'KHJ IIVR G7APW5M5SB-(/B17##NSK>@B'@Q$HIN XI<97N"J>;/ =_.-'R.J?K*(D_/H/.3WE[(0GR;Q[<%HRQ3,!] M01NS)S>&"@*A$H.TT0@Q#NW/X)!3X?T:M ?WZOT;S!>I(S\'I#PY4UO^]0B\ MVY.,GQ;T:,V/#6%&0:DI6EW954MZ2?I10^#=[S,M^4T00)!KKH,(P]N4U Z] MF1E6,PS8_?K5"MX+39ZZUD$(TE-3&EH0/>D(=WD4TZUB0/(M@DDI":,X,S&= MX$:7QZ]-!>A:83Y.?*5P>-LOY3EU%SV?)<6"WPHW.1VR%.M\@MR?^KIVO7JJ M$YL3)UOJY+?0IEHM;C,,"YTID3\=%70E?DY:@6D8'5*G)[LJ9!]%/QKD3_!6 M*S&$C4D<.2W#^J,^K[UMAYJ&,:^ILCMKZM+UT)W MPO*DOW&?2[?D/?P<% MX"B6T6)&.Z%=DC[B# RA!0U(@*<#^5S;/.O"Q:*EO)%*>R-OJEB_MQ/:CRT+ M!S;:8=2,>]OA*P^4VBV% Y\_)ZHK?7]CY"[?W:GK!5![WK3(DM^ D!K III@\E;(A?-,/5)#SV\YMF ?_4*Y^&J<)9ZI7.^O6U; M+:>GSYS%\KE4L>WTMD5N&YU]NI9]Z:VLD[/)D:CVEMB,U:^_?, %2_<+"S#CG^6J^ MSMF1>$\]XAOZ8\1WT[5[>&JQMVW- M^?*8KK@.YIT7U:UM&Y'<&Y=M\"4ZB?$@!>?IL2<=LVTR!6P$7_TYG6QU\--> M=5?=$.MPR\3C!5ON_ 6CHB#[=IC->LX./VX&O137 "#A>[P%RO]&\DK8EB-ATY"O1-D?]\P*K?5Z^( MJ#/5&C5/&84U405/.=SWIRK[S21/2GOR,"*!,6J2_:_'O-B(W\UI5G>;3],C9'K&N]*?00U[:."FBU2J'VM> MC6N\S5\02PC3L:MLMH, O">ZA0O>#BBXM]5_F^(:04VG2:9=4Z95F1 M\&ND^.$NC[)B27.NL1[K7YX&N[!W'5*2\I4T2SQ=98()I*C>^81'LO\-I,CUTMNO=!U>M3U#'G33 M/)#]"9RUY-^VI"BPL_\\Y[O=2HS_Y&7;Y#IZ@5_-OT:YB)@N7UJ&^Z:8\-4: MNBC^2HL2XEZN:9ZP6)R1\)XGGO.,@@E\@;$:K. :=-A@"->CLQ=L,;UY0 =S MG!R:(%JC@YHX[7;5"(D8XHS(0>X\M,G#H.3C)-5 9T0.E209D8.=M=[@)Q0R MXFU+& Q)\2M??L,%=_0$F0'SC"ZYEAR?T(S_H[SF4EK,XW]LBA(&]IF65\N[ MZ/F:Y8(U99DG]QN1>?".74=#$8<.R8T)6G0 R]?F[0H_9GN> "\_2%YF8(&A ML=D6? V812I'^6#W0J(&9;C04I=+9C\ZU?G@/ZWN%];$T%KMVR[.>YA$]+9DP.,FG!=SJ#LME4F1=X',J!$X8>>ZB?$7+2_I$ M4_[W!6<$'T+7'F?^-6:7T:?B>IT;PC$Q+3@?*<)4VX)3;4<"$)&(B( T(Q,= M;\P6PD+9D<.I9\@WE*O9A3 I<[V;E'*D*8 AZP:-V(K7+>Z(=4TB@%]\[W_/ M1:Q#-G(*O%TT- K%UT=H=8)^*>ARDUXF2]73G(TND1>3,:0#7E@D" (HR)N_ MT2CWJUA8G3CF8C8\5\IJ_SNGTE!0LB.^9;45!K84OP';092]%/6?N)I1]8F\ MP/C%Y*-ZEVWL0>N B=0>VY]NY'A(R<21UKHEL*7XS:DUD/JW R&6V.6J;I7'PNH('>,-+3) MEKA_4==@+S/DF3/Q4,2>&GYE5UQ\18'VB@WYK8;A-^N=*>>')=J M>?H ;B;%1=9Z;E(]RX+E[$Z\LRIJSCKI&R.=MC"XEN%V)J(**?A(#3W]559- M8[JN#XSJ,=D?9# E;# "8"ZRN$.9U( M?^8%<OCH=!BMX 0+UIJK# MN!O_.[Q\SPQCV %Q_=>D;.,,K!69[\0IUM3A$,+D3^0#I MZS]X#X8TK7U^#,?')"09N)V)W5KLT)[=D$.N1I_W*=6$?P,;;G/6?-[TU&SV M3G]RF^T>SM>_U>X-:%H;[6AN6[ZMZ.^PKY13ENX7W_!)I-JH_-X(NF9YI-_Y M-L\1C>_8=0[Q->7+/!.HU@!GMR)\VTO9]%N,W[@N#>?O>2T<$"Q6(Q'"WV A MOTDTYA[?[L:)]>ANXN+RO:&OVT.G-;P 7MO&\L=&,=M?2LY%2<+-49UATVFBB+I>PU?JN(,W$'CPEMP+T&0_ZU@8A^^1,\?L3H?5D>,;V?C3]=.KOW?;#4()I";I:.%$N#LWZ:)/5XJ_IKP<^1?B'K/D(T MF.OM]-A?X^=\H'.V2$XW.:QJ:*:/I^[JUCP:*N6/ZY,X88^;\ MD6W L7]G&X"UN!-BV14A""=TD'/8GN S9_/U#=@B=\,& L=I3=82N0LS2)35 M=,UA8YGSJB*BOF%KFV(M!HA>^N9VV5W'YL#1!I/=97=AOO[GGMWQ3&O31O-Z MC!K:%9[Q#6^HBF47()0BT(9ZR;+5'S-$$?RY:B8D'?*4 M1L]_GE1I,NQ\:E0B&S5)GA-G]6L:G6U&)+_-Y M+2KU*'@VKQ[5J(\O7P-;A>D0L*-O[>7":6;CKF,/='\GID: M!4'%DCNUI7PFMD:#6^?:@*:2L61 R/J3E.CPVI\AL&2+WQ]8&M.\D#=MR$N[ M3>>GRON*_AYKBM.EXSQ_:PO('VO3ND@(OP5#?M/.S>K*TF,\+6PTKX-FUJJ6 M5"OS_I#D(GNQF$NKAYIK*5;DC)]D@N\W=,%6 M6?)/&E_$G*G),HD.BB3/L_B2_[I"Q/_&IRUN:B]=THA+Y_;O73N(5\*8?<@+ M0$\'_;8J5@H 2+I%8+SH)\H7Q"[O923?"G]Q6[/T)(;]F*E%$$R\@)9$I:CF M%FWU'I'U)L"6[7=W8N&F?K+'QPWDU;E:?BFJ3_V>(2KJTSI(]E$&.DUR@ %% M #?\!YWGFE?&I$D=+?O#^:8X;?N0Z9!,>;KD_YN<-LI]S/V1TR\-WBR!?&"/ M+!/F^+[$HJIF2!O??G?.?0D%/5( P1GYP_?OCLDZJC(%SLCQ3[-W[][!_U>N MLR3:E \LASF>D0^S#^]_GOWXIW?"U_;#[-]^?C?[Z4\_UTT3/KFP6OC?V*8L M2OX/6&"1*+Y[R\5:>$*1']_-"#!?-#RCB^JWQ^*W_']Y5VNZ*),GFKX$,<8I M9YCI3IL_QY3X'YNB%(ZZ=PR68\;O_G3GJ?..G4;%PW7.GI*8QB])='#< M!(_?T&%Z]XG0S\EP["0&?;.Y,QDSX#<;P\00N]EU ME%_EHH)[+)3O:YJ+Y3&\LPU].7Z74U'PN^,U5SJ+*?>=#!+Q/%V-]%:.E$,A M+"<23%4TE,.1$?I32GUO(H7=1X >U_TYLS;%T#\Q%G]-TG30?77X"ZS#JKIG MYRZJ%6DP_L/?;R#2O3,T6/%70\G8Z\6](WQ4)D69+**4 M_$(C< R7&6K/V&.49'ZW%Q4'V0!;O&T;UQ!BR+)KSL+BC"Z3C,8G-./_Z$Y_ M;/H9=T;_DE>DX>-X_*W:7S[XC]9:=)%F6+'2/S-H)G MX&'%5K?8N^M(\J[ELL)%DAJ8>#=V M^W&^%TIB ??"3JZQ05;XO)B)S*_7T0O<= =O93V-\5>RCDX]W,=DQMNU)!OJ M,M;'3V;&)/?7L/ESLN^5V?DW[!4,^@AV 0/B@:Y?.[QCO0SQF*^\3"1K0%._ MXV0[9E^O,3JS>%>G[O-RU53E_0KHAA .3=8R,WX%%!]IX- 6H-WFUD1(=AM& MB$*8>+09W"M(75SS>%U;)V64BB(.<5)NX/D\$[F"XI--^9F5?Z/E=90H_2$, M/T=?O_3(^#(T=Y>#(FO^V4-4A'K.-IT+-I;!8P.EY<7M*K^.\K+ZH16D+9[O MKI:G+"N26+BGL:R:@#UIM-0;*KP:3=67K"[:M"&5>MM#GRW)?>6R;AZN[''H MN$B&NP=P$X7L9U$3T[#+CJAB4LT6$=T<-3R!1W/^I]UOEOR7_-@1\0_@FDJ3 MIZH'DE5FF#>\R9ISI?[%VS;30X1,CU\;S/*L!W7($B$4G^E 6F2#+RVZ8^U1 M\.:-%3 QH FC!_RP>KGG[VF-=T/A\!P,E.EIB7U .^S1^9M935(9,?.N+V*& M;Y*T]COE&V2-@TOYN$/K,B>3U_F Q&5HC4! MI^9KEB:+E\;/:>"M;J U5K:Z>_65%$M!'N,C:FTD"+_0RM8-:JZ $+S["X53'?$3BH;3Y/[ 43\V)DYA;CN#O&Z+1%[) M:Q\)VI5<8/X(10;^N6-L:5M^QO6$,;/A*+J6R#:JEL,-K=)E1"THQM8U7R/& M6]:V-K6JC+6(TY:I+L LO[YCV13T.4F)6GR1.7QLP74YGR#+FJ5S!!1Y0?9 M3&11WIU)#&"L&[FZF$4!\G;6@?-6QK>#E\]4=:OH:H(\Q]I=N=XC:EJ&N>OL M0$57"TET43LZ2#LGF^FP)9!Z9AAM:?:Q%74M5,SE@=HV+NS2B^9F$GN(X?)( M30YJ0'$>QW^)\GN6WVXX[Y:;++Y-RNY@'K./,/K98.?.I:P"0"0"TD @@ %? M]L_!P$9G908EJ'^\ ;06??%B.-9Z]*X2.>'/^=BZ7I@NLD6Z@<<)T)WX_\5W MT;/2\0K=$]HGRYBB\] $O:H(SERS\%/ +/+5F_2>1TDN3IZ+;+TIBTL.//VQ MUSJI\052&GMZ=BUU0%HF.I@127U&!'WR8UC3I ZW&8*%_O1>60B[N&-5]LKK MRAD._!E+?M/\6/O#J71?XPZP^J\V(6^/2-J(4.]*+L8[IN+\=>T/"3:9;I_) M,,J^N02R\6SV?P2T0C"*YI=_26C.03R\]/J,H_H8>TSHT/)W<)"&LA#9S_._ MAO4RQTU)UUEBSN>@ZLNQL?IR[$Q].0ZMOAQ/3WW9Y_: ^M+)PJ "]MY8P-X[ M$[#WH07L_?0$;)_; P+6R4)O O8KA=<5&L^?^'ZZHG7U*?FT>[7U;1QPHL)V M@Q1%4W+.(TGEVWZ5RWEK'2:+*%UL4F$["Y3+ #TSS!:[_6^6)R^'>H)8:SUQ MJV8?C]U">XF$51K#Q;<:3D'7OFK 5V]B62?>TZ\)KO$%4@![>G8M=4TBQ2F5 M^=;A-$.PS^.[KN(V_REG17$M'%DNLD4.CA1G5/Y7^>POWUA7:<_N/V+SB7FI^;A+#;,U2GS&-+\H=__?!OHH\__/3NQT!>,WWSP8R8[-$QH80' MK?[DU5UMT.X%K;Z25\&5LF>M$ %7X^TCU&,.0%FF;.2F MK[*5Q<^LSY6WDQ*.:BOE;O$=(<]<KBXQ+PZ,8Q,E+]4?],HJHWI!;*I*J?YE+J^BR&UKYNSTDZW[SEL87 MV$REZI[=/]Y*TF2'=EA+F ZC&8)[_C9;"%$'(;],,GK!_ZEZ-E(WQ&Z1!QWZ MJ$I2U2$!FD00#;27J;G)]%GD[T%QL=@\@KK"8H"@_/X'URN 6?OIH3K M!/M :43,0P[V&@VIX) *CZA=49 M(C+?RT]T'0F?E:#[''+NF)T)\6<0J_RO M&ZM&I0&H-L7!]ECSEJI?7Y=G)0#,/=?B:!!74DD=--Z&/M$;C2M[W*#0,&/> MC7Q5^YBM^(JD(GD-I>DU9R>XX%XGZYY$,MH?8=['!CMWO1*V (A 0&H(!##@ M$\DX&-CH1#(#8RVDR 5XH-$7,89C[]@$3#E=1$7)+XTY_T^^64#%'' #WJ)X M*4!OZTG'A.L"E9S)C)2'A& A^SB$0XO;8&4D$9D;G(]ZM'+SXP1X58C5E29 MC9D8N5)/HL7O*5NIUV%G \PJV^G(]1JJB.%7QTBTHV4_V=K;2$[E#8G?>>XE MK !"WBT';)A=(2[CGZ(D V_DZG$6JF#_A<8K*J^,NK=QDU[&7\=UJ/F\CP,> M\@80O9T1#FI&Q%,^X"("V&QJ-W"C^>J^@IM/@C?Q/JO2:+:?K,!&T.O4KO<1 M4GC[.W>?7+Q*F[IHD2=KWB:('&IRFN'8YT_*FCA3*%*W!78CSR!X(RVVSZM- MJJ>!QT9+O6+E=!QU+ZD MO/P2_8/EIVE4%'TY'\Q[P"9^T*?D//N#@'(DL) M&"+1P(NZP$,$H*#I(!"S MPRRP? H"O,4'E7WZ<]_A>K$OR%W4P@KS;$>4 57@G'C(J=*3ZF'^!W".TO(% MFS=E5:Z6^]Y>XO#1=Y]R1&^T@Y5E7(&UH!GY*,O4Q,+^5]5CEQZ15:3%Y-RQ M7$E&I\.6T^GV9\.)8^%C&:40(7*15?,,X2,L$P4D5&8;[0^QEII! LZ-,PT" MLN80COA>NY @PAA>]#G.\&P,83VL(Y;6.7W@*X>??!?9@CUV/_FBOQ]O,>RG MXUP*U\&0M"&/T#[*:HZ=N^O MN*7\W__EW]X?__P_1"1E^1(FD$R#QA\A M1:N_<]?B)6.:$T$RB#QI\I;A&.9OJ]H+(=#/1FGP)7;S&J;@?!<[B#.94II* MDRE@(_CJ3QJ[+T3;&V9Q\G)@<1:18N)_[CC.>1;#^\R@?UH,VE^UOAF;,[VK;X^ITEODPRL$>@SORI ^S$5_^U*S4:J?:#O;8/>A=E\^ MS\MP;ZC=[&-://&9X$?>D,#72R$'G6WP:7FV?;F6 R@HJG-[=0(5D2!4%Z^[ M-$ =\\RT.#*%A_M6!7C]E_-VV7CKS_('->?MRWCKX3VJ'MXS&B9GLB:7]5[4 M#UCG+YE"5#S _X-)\BE*X;IQ0[E:F"S 'XO_@=\M=G_1:MG4]^5G_9H54?HI M9YLU_P+.?I$1>D/C*E2/9:H=-P0$;+H'CU!]Q;;Z'!/F9)HVS]?B$?VVC/+2 M[/@37O7@T[" ?] MY!FYIZLDR\ T"'DC!8%OE7$?,\/:N3ULHY!>6H]AKM*? MA-C)V!1F_'6<5]T%:)J!?WQ>/(#1[28JZ%3> MMU\/?$=Y6=X9!J!N8"@@AQTY3Z1040OCM=_#.#;,#7_[QE;LP+OJ M:GF71UD!^@#+^IT!M3_$[B2#!#QO*4%]]?2YS? L]"9UUS07::"R*J!OH'A? M?VND?"EZ=9X%;TN62+J!:_L-,)<9,=N3$"/QTM/2VP@QV&/OJZL':0Q M=U,K(T!<0K4,&HO0(!#/@D<<;9"8<67]-RH>ZID!M>7JYH4\TV]!MW+/R M4HGI!'W/-"'F[5'%"!7J4<3QN!$)L6M(Y"O'1&I0,]+ FI$*&-$=N[-;.$I" MF1WVA[;8=I36,[/8]G1@UV+;02BPQ;8#D46+K97QCK'8KBM D%/J366^?=M9 M415F@QU6\DI)*:HHD[GF8R@WXDT4=U<]+_$WF*&*7C(ZPT0")48 MI'&7 8PP%QH#GK,1C Q]7%R(JG\CCHN>#NP>%QV$ A\7'8@L'A=6QFOC@2^I M@4ST@.B3P.$#8I#-_OQ&^,UP^PCT\CF"1/>]UE.-+[!^)>J>72\Z($U:M&=$ M4@]K.M5A-4/PSYMT?6(L_IJD:5U+?KY80%XX$/RFBI9JZS?Z%BEQ6C1%OV.CS$1;Y&,B,U%K(%TZHH%V:/-Q,U-HK! M_M9>SK<#?O L$Y6*W]$"NXZV/;E>+8(4W"HY+=2:& ,5H=GHXW4EW!VSS#3X MX=%"7)172UA*X)%2)"3N\!D::H;P!.GJSKUX;&E6*:S]>PD-\I+I,LBI5-S0 M=7T:KW(JU*I]1)WW&]2W"/G1IA% J$)<=G!\9Z.8&>AZS:_Y)]6U#&IL-#>U M'F='\PZL7+[["/F^BS=7\7".D8A94-[+]5GK34KKLD?26> N>FZ%AJAS66A^ MA93'@=Y]66$'8&!N(-9'AKB/-Y6ZI"L+*:/G0'JGKA1U5.G28J!C#30K6)K$ M(NSZ NJ!*E6+H:8H3;2[2_>*0XLNN9 U;T.I#H-\92;,"I';_@Q*C"X2 8S_ M.Z4BQV06SQ\A8>L_91&Z'%[,RQ=()5E"'=K_VB3K1_7KK>WNQV?&'P7#>9ZV M5I'-N 54O ='+82AL^?;F1V/_!R!\^D!!@Y27J1 MF=,1Z&UUJWK=S1?\#"A$!2%^L6W]I%^OS;PK;& 6@J3S4*T*$YC_FVVZ#6L& MKI.M7TROJAIB_CH+IF$GQ:,[I4+]45M)=#Y!.U"JNW;O.2EIBUV9UH1G) 7I MC735:9#Y/QP?_S3[\>>?Q1__+7EY\L19^T2' M$P+UMD5;[3KZ]&>KZR".L]"-&\4'.8J,KF )W)F;Y\Y93I-51A;">W?Q0I8L M%ZG$%U602"A;79_$,",&>O=!&W SL^1)9B[K3S2_9UA_JC%>8D]X%LG M5]H6E,;%.1]$5;"IX,>M")G13SR'[ 6OZ)M0>"66*PKNAF M7]?/0A[???CQG9!)^,W?KZ/\]X_94Y*S#.A&:7.-N$P7G-"\O3S6SC_@:7Y0W<#\NA(%S<,#?>UU?QF+& ML-SUM_E7:_N&"N/$';N+GB'>'FK_\A7.EWQWQ3_5*3"R.^QQ@"3KZQZ.Q8?1 MO#WP8O(7\>FWPN:%Y<+4]S&B?EU:8LRB@#I/-'\"Q5; 6ZGV&],P>Z]Y:' M>P '*CFW];$A'.(J$+#\) S2PC$C.J-SY7NJ*UD,R]( UFF9G�,+W;;+1- M6G;GWQPMZ8ZS1&.QHYQ#:Z)5);? QN8]*>BT,W>Q)X!<7V1%F8M;P$U2]"4Q MUOEDM+P?=NT\<>U6=+;$0WKN:_&Y4Z*&F!= NNH487><=&^.!IU/1DO78=<> MI:O)#!O4P-DWU!QYPJFZ]76#5=''W&3MC05QH]W6LX<,2]+J&N8@'I049LHR M;VOBAI9\IZ9Q#:NW\$%_8^1ZZ.[4]6JHJ9*:;-BJ!P.<96;L"K:C#D4'#+:W MM*=Z\_-OI(=3EN4SP@>M##.Y9SL:Z8RO<(?XO $AO5I>9.+.1$4)F L^D@Q^ M E?K?9.:Z6<8=PB-[EW+CRX.8V<()V/#'-("![E:DAI)5;ZHP4(F-$"'B:KB&&YZ_1V=Y>4$$ETD<7)4Q)OHA2> MFL73,P03/23K._:1 RM?E+8!9 ^(^Z A)=<;C( #8KD%%,ZD@)T%9H&U?@54 MX:SKO4--KM+7]_.4[8TQ E0 M/THR4M$/>SW78SA#<=%KV@J6"4VN5[J4[48DG]CIST=^"9;595)#RHV:E4R; M/][DH\F\5M6<.:$95><9'VB-E!5%KZXEYJ))F%=7#<)8P\>#'^N5_*9"_Y;< M2]I!I'Y(-)@AR_SE0:GU@H_"61LF3>FPOB4: MM(B]%I<9BG7^K.6[4'J=O7K;8JWD77WZ%J.POEW];&5&O/(F-U7BB-,J;P1X MZYRG[.M?:+RBGS@L2$5\QTZ@D&@:%87TP-CD2;;Z3)_+X_>_L*Q\4.U?=CM' M2J8=$+Y>T.V@Q6@8H?B$,/S7V4YJK$3XT0%:(N 2P$O> .*W$#AU+ZK]-JB) MA$T -SE^3W1XYFC/L+Q"F-OI])@%/UO=T?SQC-XKXZ[4=!%Z>M.U -7X4#L4AQ%JM MH9(W-=BW4"*UPBM=S9MX"(@V)@WF&6E0DQHV>4WLPC^S)PW7XH9KL=04R@=: M5UID2_%3),(B9_!1Q2TP\"Q8FM(%A&L+'B^JHU4?).#\WKZ3LJ0%@0"&P+=X M??8S/$\]^N"*%<,A<0Q\85QO-YJK9I_AOP3OFVA%%3*)[ 7MM6M$S9?*;@@+ MH]4['SE"F:@PS4B#BK1@D2VN&=$=O#-'9YR4,DL3X/,U;>]@K.H(%]?1"Z3Z M5K^KZ7V'?V'K[]_74AT$@GR"LSTZQ'*L:9*USDC=\,JMGE]#)A(S&+#:J,5% M &QE;_Y&H_SM=.\")JO%]))@/*W3VJ?&;$(^=IA);1_.]H:I+?R 60W-),]T MM4YY*?;M)*)LQ1G7B7J\"-T0":4^[(!Q'\EO[TP4P D@#^GLZ$@8;)Z./3,\ MB=>;GJ6F^YF#EQLO;KL#[S;AQ%J;\9IO-GC14_J.\),Y>3S?R*2ZJYP*#^)D M&:DK-NA^@_/WZ._;?52$H$\J *1!<'$^QY=IL#^JT34:P%E .5CI?/$K3=." MG$?YBA%9/ 0^601YR->4.(9BN.=P(S 'U:X"2;:!@V9-;Q.;Y&U"_="#.!J4UXM MY]N2NJ(J%82;Y/2!9H4PK,/8!O*QV>@4?4L<0]S]K7 7'6&;$NY[+8!$ECS; M@4BJ=11"LZF"2$66HD-G M;E?=(Y>1+1C."[=)+"2M:O^^D"C^QZ8H91VS5N3T#R%#CZU/*G,]4Y,_@7JM MEN.[]'SZ^+%(CCM[0EH>+4RHA7,GH%41"[G77]Q.IYZ7BA\_\[&+):0?NJ5I MM;!@@OJO=^#YS,K!9,"ZG^'3#O5V[R$+T:&X5O'. "1\HF#M"6!8KHXTR(N< M2'-1,5-M@5NJ9/0M-KY3AX9KH=L% 4=KG65H(G<8LYE@H]CK+[%_ M*J2%QJ*NUDE4T!@N2_RFU'A79X7J"F+V,3;5OQ817PYD>F@POF"NQHF(XQ$( MCNX! EFT,.BE'7=5W1"#\U5(C>^I0<[1QMKM;?]&:W?1Q 9JCQS*FY,)U11R28#!A*8X' M!^+,##P@+,R4:Y/P\^M,B3Q?\I-WWSI]%SU?\S,H4ZTF1U0<>/TAT+A>NU^R MG$:IR/>R$FF[4_&,S<5>6(Z7D-7[ > 6K\,5<,R$:WH$CIY%WP'.JH2=PR^. M9I^/"TH>).,IW+@O06]XSP[C.3F,#39D]%A/CP7?/C:R3",GSR7C16;%+^=9 M_)E5*?++7KO.^(Y0'B,8@NZK,$I0LNYR!:LJQ5 2#HQP9,W/IE:@<%Q )HZ. M[C=IQ)6SI%CP@VN3TSI#]*)Z(:Q219.HJ/]R'Z4BQK-XH+0D,60$X'_A\K]X MB#+>$9V)_,[\O%M ^3:H]@>''Z1[WJS7*?^!'XAI3);\-\M-"32+",JFYE6Q MBPV8 /A1^AAE&PBJ%TFL9U6R:'$QRR&5=+R1^:?Y/Q>T*+ZO4G_S[A?5[,'[ M;<:RH_KGI)GO:@Q!O'%&+4-F3ZI0IVA!%]^OV-,/,4WD 1#D_TM,7KE.S?%_WU&AIN.7T].CR-[#4JXRT&)^7PAU7?6F-/@!]AU)V;'S':FA3&K2Y+>:>*!2T<-< M9N:L"QK+0/?$@ZM\BNYRDQ8Y4A*3KFF,,]I MI%#]NOZ,D(9V-\X=Q$&5 V)A]+5.CK$A-HPT17XLRN01W@)/6<&WF(_7\ULJ M"X:)_',O759'W6\P!L:AOKW4\QL"86PPM#\JA#=. X( "C#P<1RD!D(F,S1\ MO3S:C'!1C1",F[G 08IZH/( 3#XY61]E*-V#.&X73)2X]EN&["'2$A:R?6]#MG&3E*] ME4O%@4?, -I>BS0>YTX3<6737W\$.8\1[;_=SCH-WM_I$,YI'Z3R+Y_%C MDB5@,X!J+)7'97>X_*@^D'=X(UK.GT4EF!FIX(BWLUU I$84-B@#-T7,"M\= MV\OYK@LYQ)_H651&U0M>CZ&\K_D("WE7M]Y,XPUQ2#4?U>_PP/7^?N47DC\2&T+(D$G%=:6$@+#)G8&'%J535,*"W>&F;>&N9: A)>)-BNFI;C+-T5) MQ7O>(DG5:8;PO6#V&G-JSO-_[HE?A0E6I01%*E2D@H7/9N1C\/B+4!8]BI?L MF!:+/%G7(95P]0&O:+(0V:I7-%N\@&$E*0O^"3B !5BB(X2669H,G_4$#DO7 MYAL:7U89:^%QM8_K_43BM%7MVRAM<+6B M)*Z:,D8HU1VUNUS^=B1ZJ&XT>BHL72'FXJ(BTKYQ?*!M/%&1A+GO^C#XT9BK M@[)SK]<&)0JT.FUQ7*.N"Q('D4D5&R1D,H,;H74T=X7* *. M M8'C=[-\ -/GJ48&0%4(JVUBO";6W+?JH[^C32XTO3K2V>X8U>_:SE1GQRI]) M'G(?%%>;LB@C46)+9797M<.:UO?[\Z7K'1#&*&\6T*]%B691BM+LP#BI F/( MFR0CA0!B]$AG?0P?,\/(<_,1N'JH4 HUT^:3HP>'6[K8Y$GY\O$98K96]#._ MN'<\-/0U0SPP='7G_EU+TB0U40)4O;\G]'*2Z;+'IZOS(WCS<_U#=PO7^03O M[*SLVD.J>DY;JI2S:CN!;,@U_>"[C!;?&8:98^.6._,>S?,<9%O4_GG9-JG2 MA8@4Y)"H%M[3BC+?R%0<<#6^XVOB2I@4H7K=$U=P:"S5Y7EY%^4K6E[2)YI> M+5L%F[LNLQ."A8JI#@_?RX5\ N,TC_0.C]E?IC8B1D':(R6MH9*3%])N5PU7 MEG,@(JG3R,F52#)LVH267&F)=$#IR(D8M7T%8]>Z3*^GKGSH;-!.+C M*RY3,90J!5^5!XDDK3F*2A*14LY *F8 'FBW(Y@1^@PA^' N2B/,&Y:339:4 M;PF3W)B1\H%W\Q2E29R^\/9)(>/T053:YVI?OH$04?OAY>/ 6C0!3('TTVO> MCG?^"%V3G["NJCL!#,G5L=X06[F6M7 NBF)#XU\V:9E MWI)NYP?=CU"^#D.=>]'%!E&8NS'8'Q="CVGK#E69*8F#3&MH^&.>G\WP>A"M MFK0^K=.Z*DA%$CGFQP9A"&\,[57$<'QV;$@[?G]_EY1IGQ%MO\D( UK=E?L\ MN&4J).?X_9O[MZ0F'\QZ=L!"IL.7D:?"#5>$\@0"',01](5KL_!>WY(_K5I\ M([K!G!P(VZ2GLG"1.@3#AIB*P( M$+ ^Q%=FPBQ_553H?;F]*/.;=%++*:?HYMI:* M)AE?S^"Z># OR^[&BKA" )B6&7-&!!XB 4$2Z!H2N?&]Z- BR,;RVJ,9B"TH MC0M(R OJ/QPP6O4#]#]$&X.&"+A>BBG\L]8>M382EZ_PU H =L>71IJ"5HD18A0Z*C]#:7UR4*9$(20H0 M@T>ICI]+9GV"'.^H$T:6B3FGC(@LXZG&8(]H46KC/VR)>%F7CM?F-7P&3? 45, M IB4D.WQ>UC,NICH-#/F>9)2Z8G>H?JIFJ S8&Z[\I3U$@A6(2Z!$EUV<(_I ML,3IK']\I/D*$K7F[&OY "$.4;:OKFFV1LM"9Z^>Q**F321Q4E$/)"+]_&6& M3 ODOW,>+>AY[#"CM/X^IQ\0_]5>#B;<,5W:IS;#]4DL'7'!Z8-X^1FEZ MLBGX/;3H>ESH:84^('=Z\W0P"IJD)AKH/.QF(]/DC5LY>*!I.J0O=37"2T&K M,U]" "0#ZT2=/&1ZC'&\S5]DPN,>KFN77/XN^ VN[[VQK_F(8Z"K6V_'0HLX M^0W($T'?[]U;F\G,E'/^!$@4D=<3GIVF=@1'=!E&: 3I26 MF?PT*NF*Y>JSIK/5*/M,TYM'$TU.:J(!K32';#PPU"AX$^C*W?.\H&YHY9KM MXS%A[SX:\@FAAYO*.ZBE!P/=W:**[9)U9Y-L!9;E3C;H_:.[6T\;21V3 MUU GDGR@+66 Q&6DA(A4DHC%B1^L0(8ML/,/]^O1,K6^P?O5] M?;M/;BQIA50[]9C+4!SS)U420J\*T=D&*S7MOOQ)24C]H)M]3(LGWN2@'=3> M*PSJADB)..S0M5CL9"8(*QL]W&3Z+/(F);]2\/VD\?R)YM&JP-*6](JLYORHI^#K5$)+Y6]NL^?*BF+\.F&]HA*G19' M@LLS=D/7_*_BY%^W!T=K."'R/ Y+#3-DH+=M?\ZWHWHGJC(.)K3X*#)>TQB2 ME,!#[T;.TM7R8Y1GD'[EFN9B!??ZG5GM&WDD6,'@R^Y@!2S&)!&(2YCRFBVD M9 N5U%@)K$O20@O';HT78M!D O]9Y5X7_+BUNT:8TRD-J(VBP/3:>4=6OKZ-" M"0"S_=L8S6[*'[--?4L?TKJEX-7$=^V%QGATKQ6VHTB"V[/"3*G M"'8E#EEB=&=BI 5&UN6Y6BYISKO^)7I.'C>/]8^=]T?3SS V&8WNO90ATBJCQ&HDWY MP/+DGW W9;DH3"+2[FRRF-]&JT:L A_ >F6RT!AV D;N(?.R?*"/4?X[+1NB M2B/N8&/,?J'LU/4N,2^/..6C7P3I[+5%Z'27Q178:K1.N)(DC_GZ_JMX-E5XP]);F3\F"RJQ' M-W3!5IGHY:^PJZFLNY[(8@V_CN$Y=W ;%79RD6['FF5$C>,M=+7G+-0$QDP MF_9\L8"#LZAS_G*@-'D"HYM^$FV-/JSESNZA%2YE=@\H.YFR[8QZ=(+LNSR* M:2LK=JX[3G=I>!"BV)L16YO3_OTTKY8RBQ"'!AM.3A_XGI,\T>JW]T691PN5 M31K9RUA?3CUJSH^U)GT4OROMX"!5@JG?:BB!73\-9Z?+&13#Q2G?1\T4, M'DC+1&:]&DA -= >':VDZ-=3N!*G3G;)ATU4-<1E9LPZMP%OG'H>I1=93)__ M+ZH.D%6TPX>X[?;G*[9-4B6"+.%T0P6U*;C)M%GD5"ANZ"J![4Q&/BEEHKL9 M6B1VN_,D$5NB(D(MD#PH.,ETV>--:6H7O+K4>+(?;(]4A)3]^KJL* %@+B86 M1X.)&=NIPY:&?[ ?%AI%";8>WCG=+SL#,51_1N^/?H(NJGTQ2+2%DF5LB ^. MIO>27^E32;7#=:VG!6*2]WIR/<^"'*EGV[^_6A_SF 9'_-L)NI(,]3<:>\OW MDEAH>XD/D4UH@(%=%W'?&83F<'NBDH17(V*#@M0P)F1" M')Z%;KNA)FN]R>1^>$#E.:80PX'62,E3].H\+4W+&3)F:1KE!5G37+H$HOPB MK0UDI&NGZ6@<+9*I8+JPZZ3=3COW%F[9BP(51VEY M7)@ R18$4(^2!D3(RMF:TL1PK/1QESL%A]?\CGU5&^V4+X[8]^K[%G0KG MY)P [; WN ZN=MW?5*SRIRF+9!_-(_]=] PADZ>,@\PV_""HRN>Q3+7QFG> MU:>U"?G:D/41H=1NA^/%1$?4<&K'%W!+$*' X*'(+W]I4N7BX]KN0B3$O(-X MIS ZNKE0LO&<][&O\PLV9^K_DZQ/6:Q^M^YK/'9WW^G4]P8OB1-.G0#YL'M\ M-WN[MOD>GGG/L-K*)=F3K&"@]8O*_RZYP])=EB M\/Q5-!][ N]UZ_L,%N3AEE4#"'L*JYC<=0[WSCO] MASBGJ]S>'$/8_*CZS!\XO7LXZL_$FJ;L*X1UG[/\C&WNR^4FK>-7MG$K*E.K MT<=8DZL6$>?1S#4*$0L?5SA(5 $)8YLT8S\;Q],0;@2G4?%PSJ$6^NX#RD_& MNPT<=.TWYHA3)X+\A-P$U-SN=@\88*';\ ^1*.>V9(O?AW))F7V$#PSIZ=Q7 ME(C,'B0PS&2*R8)H9X9R%S2BPW:&XV6(C4S@>F!IS*]J,@>)_HXV_.WXK4U- MP^L>UX;Q1U*EX9G.;J2;&X!E_]% P].R!83 M5H():RTFN,_$:+)4N_,R&L^#MS/ODF6K.YH_0LW4._I,;:VG1 M6GV'2X/6 F$G[1EN5*/3G&F/PUM:LR[1Z4UCIN2<(RLM9(:#0N8OC_<8&&>'/$)6OHJSREC]E6<'2)):%CK/X6FI ME2=]$UG8W%V*LZ18I*S8Y'3H+'9%!FNJL@S'M12W\8(VWD(L4CFV,>^&MFYA MDRWN\"J$,WE@OB;9NX]*JPBY\)HI1#;;BVS)\D?QVPO(31O5[\A\8Q&FAG5* M2[I-A0N,2.+*:YIO0%G!5?Y<&9#KE_A(;QFW('WI9'Y&@U'NILIGC/]E[=_4 M&LN,M$9#6L.9D6I 9#LBLAT2I*RH!R4WYV981)OCCGVE/*W?#H646764U433&ZFO:[<6Q<6D (#"(;*9JKD'M-AB;>36"0#&M)TNQLA M3[;=SGR=0+M4,2?%6-R('?TS*VE![L(E,E=,/-/CBCX.DQF MM\:(TN\,W1/:"\V8HO/G_;K4F2R+)LHK LJJ])G\]TYMFS7_OIB1C HWMC)Z M)E^3\@$\OD2NV=#98L;,*K,X5?X6!$UY=ZM/-.,Z>\J7[SQ^3#*14QK"N3_* M4D2J-6#T,5;LM8@X][Z4*&9D)7',Q D0[4 )6KC)<"[8. :'WK!%72<;^[5& M1W:WZQZ"KVVWGM(.K3./PQNT]N3XRZU?%1X_9WD[J;EPA(1WQP+TJSFDWDA* M]?LXLA=L'GXS:MZR\YO!0N7L=S;RW7=VLQNW(,^O*15]$FF.T=$*Q@HCL\1G MCS?X$L*XA#4UIO')RQ>^IUQDU2-6&^" 2S"^(_3MW)2@ZT4L@OJ6(J@/I(DL M:R@M:?YSH%LV>G*8/8[[4\@6#S3>I/1J>1XEN3@P9<(^KCA>)M%]D@J4O] ( MWF3CJ^R&0K1"E2"ST#+-.J&!5>-L8G%^2ZG "M<"#I<(O#,B$8LK2PLSJ4%# MB9<&-A&XJ[S_)+0-RXTH,"_SZS=(K07V,^>KC!!2>?D,?C FM*RS8^>>-T+) M2<$#MP0/W'0+(EST4S^+]P.;-/CFT2ZT$.+^1/,,\A\W!Q'D];MER[SYBRA% M=_LU6L-?=@NJ'UAR+/2)MB*-H.W>N"3 D08#:>#)?)%O;J_.;]ZV_BYK%0)* MV> W"330'FUE7IF3R?+HMBZ=@%]NHJ^_<#!Y$J4R)O&&%C1_ZO%=U_T0[< ^ M1,"U?'/"Y+&F',C+6YO)#,\Y_\)VNUFO4S@O3 2M]Z.Q0M;9N?,-M"(:5K;Z M^=HE5QK,&AEAVN'=!R.8-*%H"81*4(ZXU:68C!_^9[_[&[P78Q-@E)\!YGV'CB@>Y]/6(-X<"\6MD?&R*MC:A\T-X#A+6R:('Y[__R;^^/?_X? MA&H,U%5 M:Z0,2QW_5\ASL'7XX'&GQB+S>X1PU^.O4RH*;A>;S5EL@+28>\5 M&GSNNESH,L^_R/W*\M\O,O%R6YB)W/"78T5.3<&UR 'EHR0[6DO:865.@]%= M,J?+O9&WVNVCS1?QVD]C3J;,DP7_E]AAOV2)>,&YIKF(7^(#%VX]\Z_@Q%T] MIK[T/D:Z)X2YGSH!Y/-9LH9-MKAE-DLBD,LHZ2UVF6F52/2DAF_\.CE=3N)N M3YSJ)HUR$F]#Q<%!#Q(@-4$)^9;!M9L?,/C-S>V7XJW@\[K%9^%U32+)YS?7 MM_/B;8!+EMOUQOQ-?[!6BH=):5P MB764D.RDV;$QXC'.@#7]JE:H<.Z=2.*=8;'K3<.CR5EO*_.&EE&2T;@NQ#-? M\)V>[]I\RL[H,EDDJ@6I_R%R'0X3!XK-H^K7'4E M$]>80K)@6;& UBQ85BQ85"!#W%',I9&-9'L [^XSFB=/D2SIR^]&8D:+3_S@ M@SWB(FO5;&B2WI;IC/;RMH3']1:QA4E:.&<$D)(W@/7M]%RX;<]U MIQNWDPGT>)TO*1AN^@.O%:W0U_*=WMS7!)#D],*E;4,>:_)FD:/=*RI)]RMEFK-;?AUAA-3=VK^QQR3?5&IU6JA=YC,9="*;C-N832=4==B )VKVTEC;0!4P M;[4-^)8258?AI!V'50ED*OFCK:Z4_H31]B?->X*E.U8!K8=7165!5HYZ"(I= M"M/%R-1*.J1\YU72P30FJ9*;,2,R&-> X-)<$29;3#/RF6[KT-? 9D3L%T$3 M+AG)9T>V)?,)\+:*.ZJ #.14TO@"N49[>O:U)'L@8%:@U1&A4X;SU=95+B?( MDM*1'H9@H+\%T_5*PH_HO]!XM9-N2K]TE(TNL4MN!.DP+W7"_[:"1[;X)E7[ MRSY#>S$B3CX4><=)'I?Y@;;#\FKU)7O[Y.%"4 S'EB8S2C$V*&\WP= M%I+]S%##O/(?Q*5_,.A\,C9L*\#&WM">U*:MQ>RNT*T);;IK43\J6UV"8W=M M(G@9SFJG^QUV$Q[JWWF.NQH 20%!^!QWV@QG:"YZ?#RK;A2G:5045TMA;T SD,?8(&N9,;\"N%#6 0+7-*]SRB<+ MKN^>)>D&BF6;I<)%]3;:'=*(JL\XTAH8!(O*(-&9R%R[$#>K"M[T7"!QL]CI MZ#AB:D(?Y:>8<_S4Y2%^ZN<$K\B0-X4$?B:K(RE$XO&O47>D@U[CD<$YNYUZ MB]$1V>5%GOF@SMD#K.V(?>GCE\<4$ LP2G#)7X@5<<<)G[''*%%5*1S^ )WR M0=6Q^U0/NY1G!&B3WR3U,.*DP69FSKN@8M5CJ1QJ;E&D?-@I50(5SEXYR. ! M80IHK;1Y;'%!%M3%,0#$=Q.HO.;R@2M:2;.A+LP.^A+=' M# [JU5\4])>>HVN#H=SX=2)29-L!W]GSE'T%'RA:9RF8+[D.NW]0\"'?1<_7 MT5!9-R>$QK@M607D>NE_R7(:I2!\9"52::0BE0;+R**N0$H> '' JG)N9GC? MY\CAM/E_?KJE*^%MV'M_'V@]]L%IMU=_OB(UW; W^"'F=KTG]7$L@*?T>?(, M-7FW]@6%'&E\,=K/^:!G;Z$%:@BHT *;(T*$%FSISXA 0'9,7X']KM7RT^E6 M/<#"0*_^-U"H\6KYI:!]68BUOK'RYK_7MS5&S%USE?*KRYR@4MC3=\65>18RW0?C&A_ SBYY>FQF M2-Z]2CWU.@=OZ/+EFD]:R5M JJOUH]K@[97V!/16)49/^FM-7\18T)IX: 76 M(E?"*[+*P;QZA79X@3E2;#7E8W_';#/\DO^+_[+^%?^?>W[0\]_\?U!+ P04 M " "Z@&E5%?7R3V9# #=&08 %0 &YW<'@M,C R,C Y,S!?<')E+GAM M;.U]6W/C.++F^T;L?ZCM?>945U57=]?$S#DARW:U8UTEK:WN/F=?)B@2DC!% M$1J =-GSZQ< =;-- @E>0 I"Q,1TV0; 1.*67^:'Q-_^\W&=O'E E&&2_OV' M=W_Y\8!3]^"H+_^%N"TV]_%?\W#QEZPX5(F?SQ[S^LLFSSU[=OOW___I?' M.4W^0NCR[?L??_SP=E?ZAVUQ\=9GS0 S[._+<;0N5/ M,7I "=F(.HSW57YZ1=&"SX+OF\=@U[R0[G^WTWKVM.%SC.'U)D$_O#WJ\88B MQ@M*%=_R7VS+BX[9['TA'WK,$)_LVR'9B9B0Z)F.A%1L-S49BOZR) ]O8X2E M8.(?4H%2>?R'?UQQ&;(GOGY"G.X^EX1SE/S]AZH_%](D8N81NE572]+$PN=\-'1O-64;#*'LACF&M MVFI;A&PN%VO.@F48;@K=H21CN]\-]+'[ZB[Z/].I]2DO)_1MO9D<;C59@N$;M)C\M@/HOX+L3V7:CH;)M- M6]7)?H'P_13=\'^^7.7Z@OW(.POG"=+)^JR02L[CDV5$HS>$,%(0_D%I>OQ5S'\4__V'C.9[*4(:O3JOGC>T+?%V$U)Q M-$4KG,2[V@M*UN9;'8&IAG^X([5DW+I$MU9T YBOI-8FU9UV[$P:U7%-=.;% MJ7=>,_T)P)H!J^#=J:H NM6[,AD@-A;I\HP_*/)O;TL!3MMH[V/ T%+^C-,% MH6OY(5-0IVS$'G8#B.$AFH=H'J*=$D2[+Y;TW<[_4B)AE'7!YR04W-\?%/G#QR\LC)(R>/G(:#G P.;]NP MZ:=@24C\'2>)(4YZ7=$:,*KZM$="'@EY)'1*2.CS=AW#27N &AX%>13D49!' M01X%>13D4=!P4!#XZ+:-@3X$.'W@/Q&*D6FXJ+2N-22D^+H'0QX,>3!T2F#H M9KN4G^!H"%+%PR$/ASP<\G#(PR$/ASP<&@X<@I_=%O%03*)<_D/DM$-RZM9+ M_ !LR 92,A*E$]@TXI^/A0C72;@L@2FE?^\0.(W%CD11.";Q2YNGZL]=2I-3 ML;2N^3((D_]&(;U*XTL^>&62:8IV*.7E=A85WYXBBDE\S7]7!CNU9:W)*70$ MD_)520LRWAQ6815>@!:W*VT96H 4M2!E,=NJEY"RG 7Y_F\>4FZ_)T_%I5V% MA!4E+<@XHV'*L!@]K9!516U(R3^ADNSHSQU*L[5OXY@?V&S['[$ZWU7Z!Q5E M;JH4LZ)<]_*1]9JD]QFW_^]7'&VP29[)%.HX+3,: MX96ZE[PPR_9I&,0(EYH7%.I?N M?H621+>XRPIU+]DZ3)*+G'$SC%5OV:6E.I=M%C[>Q,)CL\#%*QF:S4=3_M1# MT:8R$>%\6)&T>L^N*M*A5/HBK6 MH70<9 I[[OYI/2=)B5BE?W*(80N/W\-5XXAY"Z5A MP!7CB+5;S2*%J\(1&U<=9H&KPQ'[5AW?@3O;'+%K%=$;N"X<,6KU 3:X2IRR M8B&<*;AJG#)B(<03N&JX1IRR815$%KA&G#)= 91"N&8./-&KTB^W;5O%W=) GY M+J;Z-:&7))]GBSSA'1)>J]'\H%HJ_0N_SZ90*LY=-V0>2=+/8)JZ:DX$IH\KZ9 M5/6IR'K/*@09I=[SD?EK$/8GQOE=@/ 9M^HEY:N#V9R;*VH-=8+GX4Y2%W18 M!R^ -330>%T3#:D1"%@S PW7-==,&:X!:V6@(;OF6@$$'$[S5H69:HP]=F#U M##2 5UL]+6TS PWC-51+HSUFH&2TABH9<$1S7X %9,%_XC*O2,+'@@6(6V#9 M4W=1S>:?[C&RV9;P-:*;M9XR0)0C$L%F&I-4.CK$S;G2^*=)%;O/,>P%NDD9 M7^%"^W>8?2L)F9I4L=H'CA817J8[)B+_\7M(XR^H))6*217+3TIDB*^O[(ZO M@/OOX48IO;JP5;DG? E2P;RA:,57M)P4?.6C6\+8.&2K:X[H?T/Q$GWF,US\ M92EQ.8'RG8W*S? "I6B! M,X'A&>]"#175:=YN?*804,IPR:5)4;P52[D.H-6L]N5NKUDAE]C>%7NING#/ M566.J(0BHPW)5]J+D.&WM_+$8+Y$/0[P*NIS#=$C3D2V?SD&'I\3[^-#P2 M4*M9&U[^!H+Y^TGMW$_R;V*71C#\F]CMN[>/5OEX']0KCK?IT3H_H@D?Y@_\ M'>VN/N/=E=ZQI[99_-O;_NUM?Q/ WP3PL+F9B\7L[>UNSWO;X.]],-\FM EX MV3F7N ;44S=B#=A!Q/ P[FQ@7(6(TY!^NTH?,"6I^ 17Q.X*RFT2E9([3*M9 MM81W^:A&$9=G>\E1_),B-5L"7*_WWE1S532E>Y%\?-AYX!C2K/+I>@).OP<] M^3(\/C]! ]/CXHB$]? <91ZYX,P 3IIX5[XJ";'B\ M/%'D1#8/0X]7'71BVX_U<9]U-$;S?2^ _JORRM;\5JK/>W]5I_XJ2;'$Z^M< MWMH=+;G5(,8%+\)J3Q"TCF/NM!8N=LZS XE1>9VSJF"/\HK7)#07:=7%3]?G M@LJQ=WXUX1P7%DP=$4[Q<9=M])%U*'CI9T/U? MY!O@@IDN_J*\%]E*F][C9M_CUKJI-5N?=7%_3>3._- M]-[,\_9F*NQ98FH_NJ*3ROV=P'=55W0!N4VJ1D2N>"G5*Z4&^G9%,?HIHC:8 M7-$#9-MH$6NX[_INS_M_*GEFO???S/L/<$S8=O;_$L3[:\X!WI\73-[E6Z%8 M/$D8R%<]<8:100K#)JU;"Q:*577J(:H'-:S=W MSC&:'3GF^$^'IY[3//;9E C&]IOQ56R&AOA,"I\&TT:5D'C.^/(EOT MB&V%/$BN#(H9U#S=T.OI]Z"GX+$+.:2WLWHWT=6W>=2%>Y9;>;;HBON\W0"Y MOXH,_+L-42FTHJ3E_,0O\CGI,BNKB_0N I!)Y"T/ZL MT-A&Q-06<44O TB/.E -Z1TVQ,C_=.KZ %MAQ-SF<44W^A@I!*.YPC6 [[G& MCAQ75-1+'OR!ZV0 >? 'SD:!:JA1%,H59<%W(:U;Q!4J3Z_O* Q\NE3OR, ( MWJEOP\9VKRI$[,J*@;QN!'%.GOKD, $!AKP25S:0FJJ!\EE<65$UU03@38$U M]-.P-62#<_SQ5%7@.<=*SG%[)!#;U.1?RQX)WXD$)" KV[!&,P9(XGM>[3BRNMD,:-A MRL3M!0WG!E[1\Q(<2!OQ^L5BL:W ::7&]>WV+I\S'..0/AU-:P652%O>TY(T< U'W.B'Z3(/6/4V>4I(?HL+W6%=-XDCC(4R[7Z M>XJEPWF*Z(+0-1< %0>AH)TH[Z'7;J:-^]X0$5L1H-8]XTM,4<3;KKRU75Z@ M<[F^A(]XG:\KQ2K]>_=2X50M5=G?.Y?J3M"O*NZ'O_J;'6DJ-53RU\XEFN%, M6,TW:8P?<)R'286NE.7L2_DGSE9W*)%'(UOAS8PH3J\&+5CUJLE-3G,IK[1, M3U[\R6)\9*%(9:)X3%C&[H41@IXC,L:TB M)DBY*0$L;=>+OI_/QS-^1*DX!^3\OGAZ->?E!G#8!;BMEH2I-ME_EY_R\2I_ MC];'1'Q,Q,=$VNM\.3PA&IQPZKU6&[G$YG%VZJK48S;2 C Z=2W! P4*W.5* MP$B[ZD"VLRO:4%],JG =G7KGE<>.PH%WZ@%#=;^KW:FGWF_MTF\G2.#*)1JU MFMI2PL#GBGIC!/B)7=@D0::5*CSDRI*PP3(YV8MCGF6BOC75IL_?-O?DW8^" MG['&V>$M@XCPF=Q>J"5#E)\\(M(]1HYW2CVZ?>@ISC\5?J *4G% M3 F3.[X68BR-$;'M* @MT&J#Z8LRS@ZO:+4_MX2Q9TOWXDD>9-+PWOVZS*RI MWT"/_=N*IAPH0 W/:_"\!L]K\+P&SVMHUW>JM/9)(\/ZU-73X+@E-;^W'AIB#2 ME9E4[U1OQ0GMP\T^W.R<*6,8;F[BR;8>77X74/2 TH/BH''D5Q7M18PK/NUC MPV>3K&!8@9#3[T%/H9R[8AE?\]UV]V2)N!4PYE8&62.J"QF:5O>.=N]H]XYV M[VCWCO;3!$P#A]T>,-4$3/7.<>M0Z7V 4UX*!5GX:,Z[+:]M#S2ION^1DT=. M'CF=$G*ZD6MY%C[""9:0*AXA>83D$9)'2!XA>83D$=)P$!+\[+:.BGX*4I3M ML,4&T2*QM"DZ4K=B#R5!Y/!HR:,ECY9."2U=A33%Z9)-$97WO'5025O>XR2/ MDSQ.\CC)XR2/DSQ.&@Y. A[,SY0C(E<)W-^'(@/!9D87=- $J@M M:X#)0!H/FSJ%38>!J3-$QU"J64M63])'R>AQ.8]^@FO O"D/!!UX0UM^63=+R@L-74Z8P^6T;,,V M#BD/MZO@MGK^G#JN\ C;(VR/L(\U47&ND3;M(U=FC8FNVK&F7;FTK==<(Q!F MVZ'S(<#I _^)4(Q8/3^.J@EK[AN]$-YKTZG7YK!?W&P'XFF<4[&:1FG\E:3; M'Y26?_.&NG0_J:88R.NDGZ,>?GOX/4PYSP]^*U>K1]T>=7O4[5&W1]W5>*@M M:\XV)/HI6!(2?\=)4@\/5=:W!H8T$G@DU$_\NG)80.A!,ZC6HY6?M]+ @Y*5 M-3SX\>!GR'*>'_BIWFP\\O'(QR,?CWP\\C&)H6E,']L0Y^=@$6(:/(1)CH(U M"@4M6=[FJ(=XH,U9 T!F GD\U \>@HX2"!Z9#;EUM'3-A?M#R%8$S$=I?(O# M.4YPAA'[4H@;3]([%.64XG1Y$3+,0*9J)]_PB,PCLB'+>7Z(#+R_>8#F 9H' M:!Z@>8!F M!:MYUL0[I? CXD^($W_X "G#*NU.)X$._0\UXNN=!!&/$_RR[5 M WK-/F(-_K4AI@>%_8#"9F,'@HIM3 _K /)R+_+-0>+/?**(-Y)NTOV>SK>R M79*.*:*2;IQ&!B"RY>]X(.F!Y)#E/#\@V7#W\_#2PTL/+SV\]/#2!%YV8E79 MAIB?BARB\Y"K55Q)WZ"4-589I!!J*/O>33L MT?"0Y3P_- S>]SSN];C7XUZ/>SWN-<&]G=I1KDPM\!7*S@"*;4_"X>'[>JZ# MROKVWE=12^"= _U$CRN'!02"-8-JR6Z_Q"Q<+BE7WFY+E"*!S'FCNAZ->C0Z M9#G/#XU6;T >?GKXZ>&GAY\>?NKA9PTCR#H ^A"$492O\X3_.@Y(MD)4NA\I M6G%8+*@Y7(TU6;KU&K<'G1J(YW&5I:#K>!6F2\1NTM%AJ"9BI,;' U6\YBHX M#"9QUG;:[A1&UIJB,(S98/9;,M7O4"02.>,%WGKE\DQD@=:.%OM;Q[?>GSK\:W'MQ[?@J.!;9K1KDPCO7.@"_O3NO?@IR!%68"E M8,&&'["2Q%336P!JS)YWP$ <[PWH*/,(M+_]$HC2]Q MDO.MPC ]4ZW6/,#U '?(D#K :T'M![0&O&%Z]M(UD'8QX"A MI?P9'YYUK(G!(&W9@V!P:3P"ZPF!088(!L#@@VT=?]T7@MVA#:$9WQ:.GD^] M>-K^$8Z_:K7F\9?'7T.6\PSQ%VC#\O#+PR\/OSS\\O#+!'XU,)&LPZ^ ZR), M\;^+[5\DKYN+G+P!603'GPYBE(4X84'&Y<[#Q!29-?R,/=#6BJ >SW6*Y[[R MD9J1?8JO_19T68S)[/F0'.,WLYIMB)JOYXA.%E_"-%^$49:+K-?78;1-B5TJ MH[H*S%1MW:C>2379(!J*36V[CU5AJ\KR/$)'KYUUFSOD,5;Z ,P3[V% M/@ +?;#@'7PX=3=+!J>;.K:';;3R/ICGC O/F.#"S_F1T (V,6O4&A*I(Y;' M'1YW%*).0_KM*GW E*3B.UPA_\KQ1B[^)/J"Q"HOD].@FE5K^&*[%$81EX=A MN?F*?U*$2B>F<;W>>_-Z+@-+]RWY%-%(3)4EFBS^((6[BQ]NB&5LJ^H8WC% M8SWAQYVPX\->?"3W'9*L=YEF3=-;?0/#Z>&4D@9-RD<-D%$4D M3XLQ$C?3$I2A4?S/G&5BOQB3E.%8FE^C4-G^3G9V2[.'>CB-A7E$T6XY"M-'N 21/><^0]1]YS MY#U';6!AG5%%:MN0KFA([U@"&::N^-D $Z8>@G)%039\L>]/507>%UOIBVT' M!9Z1H[8-T[F[%3=8==4"4F ]?7!&3_7]%&!E_>2RLBRX+6R'73X&XKEV\6., MYEG#< NL,6MA%A-Q?'BET_"*/.3Q^CI/8[$K+SG $N.$%V%UP ):Q]'H3V-G MT26?](>W-!51B.J"/[XEA/$D_2.D6-C==UR[[T"]J*[>DZOQN7C7 M881&:W%>@'IS*#X(Z;^&:W5L3E?I1/",[,LG5HW@[O=P[:EJM=2&_HNP^3!"#2E=>OG6Q MII1L$.5S*8WWQ#:HB/JZ;;R]AB*2QM>$(KQ,KQXC^;H#_U$\XCXF:4;Y[E$M ML'GMYEY/1K,CCR?_Z;#$^0__N(]0RL]S(H2*0E8NO+Z@-3E_3]D&17+(2W=) M4-GNI=WM.3M12K9/;3G+T;7=P;B;B#/^>4V$35^EISY!'L:0J:>+,Y<5[&P'&=V=!0QNQWPJ;\*!7 M9:S3H*;5'FT/G+%D(D5/@KEYG9#O0D3TF2]6^>X0N4#'Y^FEO)O_E=M*[]Y_ MX% M\+ J9XRZL-T\6]S^W.]22J$5):U*_/(I,&%C*.:WKGCOLBOGN+Z"I\+XNZF> MKN'I&O6=VAH+@)B>N*[H!02C2!WX>^H:TGLJB)'CY=3U ;8U%"^:NCI7X/%H M"!)QA=F1!'=-N,+\@6JH4?C%%67!=R$M^'>% M-F6ZPB"N'%>F2_6.# Q=G?HV;&SWJF*CKJP8_3D-<\&=^N0P 0&&A I7-I": MJH$2.5Q94375!" ,@35DG#)C*'M.>_SNCZ>J L_O5I"88&G&^C-JTQNVM(Y?G;G?*W1UFV0NN0 M?A/)XOB>P-=&-3%66[@%@:[DG-@U/R;K-6;L13K SY0O;&Y_1@C%I:^G&3=2 MC\0&ZL*7\!&O\_7NQU*.';1:JV(.D;K?F%L@QIJD]V*7F89T0J5L\1]ADB,^ M^/[:-9]N! M]Y[ &@Z=&C;X&3D%ZZ+$,_(,MH/^;3L /P5,3.UYR#4GWOD4D:(V'C4U;M>: M(["F9-X9Z),Y_.]G;Q2/1!H0)$^,FU2L;O[3-.'F>*F4NDKM^M>V7[M)PSI" M*JJU*B;?%>4#!?P+(T&Q8S>,Y2C^DB<9WB2XXHE87:6N1)0V@/SD+*1+E-VB M!Y0<-G:-K)K:K0I]AUA&<<3M%SF"OZD2IX&3*E%-/AR+;MVBD*,49?&#KL0D'0'2V"M/)1C3!OI+T@7<- MQ<5\'V5'(S)9''6O3"D#$*O5N0*:":V,8HHBW79EUI+Q YW)MK=]* ML4K_WKU4.%5+5?;WSJ6Z$TNC(K_)J[_9D:920R5_[5RB&9KY\GE E,,$^<=+CG"O0TRE<[)G]6OE"(V-RT3UV5 M>JQ/6@#4IZXE.-M!@===8;UH5QT(F;JB#?6]] J7XZEW7GGL*!R_I\YZ4O>[ MV@U_ZOW6+OUV8GBNW*%6JZDM)0Q\KJ@W1D!\P85-$F1:J<**KBP)&U39D\T; MX*FRY0Q'8R+3N;%D:Y"HSHTE6Y\6U=W6.WA-P_'@4L?9ZWLZ;\PWR^ATGR=(?8AN_Z>)Z@:4C%N\VEDD(JMCK0 M\E@:[W>VX@;M-,3"[-KG-9WF-%J)$XZ;9UR9W!Q#^ &]9%TV;J_=2U.$9@G? MIG\+Z9S0KV&6TS"AZ)[P;R,VHSDW1M&82Q?AI'IFUV^E]2[9 MXKUF<*7.R?I"+=RPXZ98]B1H$A4W"E3%NK^(@3;;N3A:4B1WA9?R5%XE,*YK MEYZ?/F!*4B%5F,@3 DMC2$P$Q;T":+7!]$5)SH17M-J?6W%*4C99C#E PMDD MS[BUF<95Z?&@U7HBVXHTH^-C6_CB26Z4B NZ_W6945B_@1[[]S2*(LK-A7%( MZ1/_E41G10K6RG$#-S"($=PJ7[FP #4\>=F3ESUYV9.7ZQ$DE%8A:62 G;IZ M&AR;I,8.[HJZP)8MJ6\_NJ(K-4=+C]AI*P3.53(#D*[HQ61S MJ>.F<9_\V10,NC*3ZIWJK3@K/:?4*GAN]M,V0ZAGR0DVC)M:95>\"BAY0FO-_-F51 9JRQY@""^/949VR MHV[2B"*^-5RBXK\WZ5TQ+M=\->U>E!>W]L<<() U7RN\1I++%<(8XO^+9^%C M&=>@G9;]JU[Z5[U>J_(6AW.<\-FR5?F!-ET133)KI*=(Y%X.L2[Y-#FZXC"9 M)W@I=Z>*#H+J]I60RLZ!E>\R*3Q3W_+5L4 M[W86MQ"KLJRWU?R00:5*?#[45%['5)"8N_G(\/14^=A0S58\(/> W -R#\CM MH-$N=VGW,;U_O=B[-1KBRQ;2:KGCPNC*KK8.VM\'..6E4)"%C\US@3QZ-VC=^/KS8L%DFD:;^0TFX6/=URX@AR5BS6_0;1(IU]A]\,;\&C+HRV/ MMCS:.A6<<+)0R>.$ZGR1M4\KZW;M3T&*LIWUQ\4*F$CVU]2^-6O5GIU;1RYO M[WI[U]2Z&G%-Q3C)969R%.44B[LU5X^"YH#B@@>QWN3%S)XLKD(JP#'C8+?( MU*W*D=-*V]Y*]E:RMY*]E>RM9&\E]V4E=W*0V3:@WP?SG/%>,B:R)\_Y_B@Y M9B%C2"11COZ58SY0,IMRLJ7NB5NV_._YFO]^:WD:VM?M?M2:^=V%V-XZ[]0Z MO]@.V/@P7@?&Z4W,AQ8OL-CS1G(01]LQ'*7Q[6$$1\4 ;B^['O]!7(E%QT7+ M['S;,@3O!JK K=L@7=X*6K5%K55^^$14=2>>'I@L?F?;JG;U]?+KK2IM&M)O MSU+S[.]+WR:1(H>G5G-$Q98:%7\8U-FJBW7W31R]H;8NFVV]V' M@@^.:&PT9_(&D#7-O?S@R>IO'+(5_X,XUA["A%>U,?M>?]2!M;LUF8N24XHV M(8X%8ROE]DP:R]0MUI8W6!;7]%YDNQ$UK:OYZ-/N:/4Y !2.)#8-GQ1.?JLR M.*#GRZV+<'"6+O&^\/Z1O<^$Q-]Q\C(RVHL,3NCY@94;!#-GL2[[]G6 I?>+ OZ MK/QV3ZM;E0]=>1\J",ZKRZI[<1V14-Z9@G(,^X*T08P M8>K%MUQ1D+_:/&@R5D^:>-W/D@VDZRA"=UI]0'1.;)/<+*BMHT'2ARFZVPW] M4'7BB>]N[_8#UHYO#SQ"Q@]@^!&R$T,$CZ#QJQQ^!+OQN(%'S/@M$(='K&: M^Q;RB[?_XG_F3+[_7C4'C.IZ5K-G-3=A-;=S/'@RLRMO3Y.D_$^I% M-R71MZK.@2O:[8\J@TXYB\RJ9)I5<%QF"')JDFTHRUJ5>GM12_SGZ++6*!N' ME#YQ"^Z/,,FKO'=&=>WVBJ\F7-B=0D#Y*M(2I5%U"AE #>L]V.X'RB&H*&99 MUE1.X#]QMAIS>Y_OS\7]%KY#J]>M0>[0[8I_,NU15U6J?=I3M_8-A1S8# M5W=%=S2U>GKDYQJGW/:^Y>; JSL$U5V!51IB(*T7V?;7#*LU6E;$JHSZU&#] MI_,ZYC"EL=RJ5R2)$67BT,RJLL'IJO7?&_4^^+K@8"36&&?Z"G;E)^ERANCZ M$LTUIZFB9"\2"U?89#'FIP?6B5Q6U*K,Y71ES5D/JS2$?GPE:52G*Z_K]=B; M%_^7HRK=^)%1E[4M];.^!1%=6L"K_=!HXB)]M54)J6*U#T=)4;2(5EG6LM19R$_5>/>HW9%7E8,Z'%6>R?"* MG@ 'D7>RV+]I.B5;#H;: C6IZ@*IKP,Y@2AK,+CJM2#:.:*KX Z-LM:Z\+S( M\^%%^O>!!\WB&B)I"1""Z:1&0,^5Y0/6$<# =X48"I\WIF&\[N[\ M#U1#U9&2[N[5#U05QIZ*[N[']Y @ JPF):6ENPQV@YTT4)]0=RGB,HZT+.=2 M .O'R.G=76ZV@\C@Z6 V?'%&#"0$";M>Y8OP"XBYPI1A;N\,_BLX[B2"4 M%. *9@3T]U@[.N:!*Y/%3"V0>P6N@$5CS4"N+;B"$\V48TXA=05$FNG)A'[C M%(@TW)RU3#Q7X&2]0^NVDGO6'98 +>9I@S)\:X 3L/I!"2% M=8@X3VF+K@^SG#*=P?>Q7+&?83 4ROIP!88"^OL\M*"F<;H"0\W4HKXDZ,X" M,M&)Z35L5Y"HF99,J:"NX%##N=0D7X%3P-1,;WKR97? =/#*,;W_=U!57RF$ M]@68R%<9A6P5+!+RG;68/0C^B1X3!YD*Z7,&=9JL_!+Q(8]PL6.D<4$<1F5Q M\M&:T S_6Y9\(6(++;70%0&=^72:T&E(L^T/1YD=I7$W63Q[^F#K:"_K3O/6 M+&?>2FQ'QH@0'@PGBA^KAA)T105V<4O+ )8XOGOAP<--N[\\:11E^*'U, MXE6.GNX^95=G1_-PLG@9]*_JO;)23S*+W(^>[/_ M1IFPY"OZ9%K=>@Z>%YS;.\1G#8ZR_4OJSW]Q5))W(^&G2KJ\Q&Q#6)A\IB3? M\!K\YTBZ3?+]8TQ\*5?JQYX(/26M/SW*[=$56,MV9J.]43FEF*M[(UQ43ZI'*Y1U@O37 M7CKR>@'MV# [RO?138J*CAFU$:2?!M;1+>W'N'.[MTG[L;1*Y7I!UMFI_Q J MUB9B:MKL8+11>=D%W/'*%H:S5G?W54S&\ZC.<-;B]K;);JLOO74"[B&DL;ZZ M+JY:E2#2DC.[HKOP!GHR>. ":DR<^@T-H;\'BZSFB)8T,*P1+1&PWH@"&AI" M?TN\1F;]+&E@6"-J[H*KWY#M_AY\@M5=>5W&?B*O/: 3HFR/K@J)*\OW9:#L MP,PUH7Q&1 C%[)J2M903OA\:MM)W9^^0#"G/"$>FPE04X3\N()?^?A52=,%- MDEB$FOG E(4LFC;7=_=G9/M>6>7=3TV']0WTUL6CV7?#6"[0^V1Q?(FFJFO@ MBKWUYU:\-Z;)^EE9OB>0=RS/T28A-P:X 5VS%X'I?: M>I5)UJBK3(T^UN O>11JQCK>^_8\0<=>7B MF2WM&M&5NKNOYO#\A0'N#BZY?2I4FW*;-4.67RZWI5QX4*F#*W'/%3QS=PHW MH\QU<-_N'*9V$XI7!SEFSGBRJSAH'22J.6--U^+"=9)>_I(%FMI%.HSW%R!DXT\F6#&8P<.I3XMO0;J.,X?5)\YU(&_R!U] MUB7<=;>D>]A!VU%I?4ZW.QF,&NR/8(Y_=P[W'DRH!LIX_@8'C+5W'GNAH?;@ M3#I7#)GV9QV$\MK!-N?8Y%/1(!WS;;>C/;/[U9U[KT]1A:U=0N@N(]RI;X[& ME/,./,^#LZX-]5G_#FP'SN535V:_65BZ>[SHE&0H^!/B(6\*+;TB*MCF>C_\2BY3YR?[LT:>Z M;M*ZC2S7S>7S":X[37!]&*IV!NTX1W3;;5O.!E;(\20>/F8K%(MWH(MG&+@Q MC>B#(KD9N&8_/?JJ2#=W*-)3$J"]"'?A]R]\UE <)F9JUU;LIS_W^6:3%&^[ MP?NBK-1//_XD])M@\)$(,;/.Z&OZ2^G^0K?:N.SF8/$WO_W-;W_SV]_\KO#[ MF9H6SLT3F':@Y[LK7B1#]4#A@"O^'T/U $S=[J(-O;SH9J2>$D1FVXOU*6"" M9S$/BU?+CH@6E.5!F,;!AH5!6+CTGFHZLYI]Q)I/JPTQO6NK4]?6(>8I'T#\ M/<7R'NL4T06A:^$BEK\??0]IS+Z@]1S1,B]6@V:Z],\UFX @-UT;<]S66V5" M^S/^Q9)9IBPS@ 1^(TI%Y$+H_>+I4&1+R9)2%Z]VWJ1\)N8%$U.0M&:K,)UL M9%S^FM %$J]#/2 :+A$GWGCV25? M/-R;:M?R/A'!D7V4'6V\PO_[R3NAW>M*\IGR.C\Y7(H#J*O^8EYHOU M[_?T../YZ+>?9QDM]&]X&PM<-'=G_4F/BFMKY0_9[]ZLG.>?=\^X?]Z_X&" 'J+=+LK"8?&_^M.Z6 MG]>XL9O'N8V@IQ%0A4_.BPHUT"B)8VE]^AX+?:"\@R1 9SGKZX?$.T@4=,Y3 M7N,[[BZ7T'G-]T8NXNYR$/647*7OT=#$;KM.,72^^C8.#=KF4;_[$(11E*]S MFT1$Q$22B M5.FI#P>CYPZS;XH;#I J5OM0&&WCW6:G' !E6:M27Q/*3Z&S\'&4 M913/\TR$K6:DV$@K^M6L,;O]KMA$MX>'%'8J'LCE8,E )OHE<^(BR M8K K97U9L"_J>@.)0;3NTV(P#092>N;A^3 /8><#,;+/7=$-"$>1.MC1%0T9 ML,?T]H=SK$+HDFKB$7..?E1#:>;>->>F6N7Z@_N"7-&)Z:X-]]FXLM9,-03Q M"SE'T:NQ#YEXP%V92S8H]*Z@YUE^*3%]GVZ MW>U.@TTRV7*8H /"^$E0V[3.2HM$LXBD,1]*>0$Y923!L70%[@M()R$YO.N6 MIV$>"U;Z3F(]=:SQ)VR0P5H2TM.[VJ%W-0X=C GC^Y%,H3Q*XWM$'W"$V#TY M+-T7(01]!;N,B)"F.%V*)THES_7E8UGNN9V#*TL&N+ADJS2V1=[U>'>R-!L"9K2/4C. M=2P?ZF1HZ[Y62EY9NA=^U%:42HF?E>J+_\%M\,.LKQ#U69F>)O+^>4NMM"4E M^Y)98!^^'9#G$JGG!:R29=+4 TISM-L3Q9;P)\Y6XYQE7#*Z?^=9O)O)_Q?S M95C1N08MV661(+EY?^:[" T3;MR-XK5X8B.CTL6M'D&SRIXGY0!/ZL6]L.): MWF2QM?"DM<<:A82JF=T5'#%L)W@^IKZ_$T]@:=9L99%]5<*56&^XPT*"V MI2>(G2%!S+^3-\0 WQ"C6(TM1^=TF)!KN(+'K6N\LV-,3%"')\=Y<0:+ 3 M3NFSAMN"3MC.L$BO*WA"VUN%9DI\,*[@AB9J*8U4PQ4S<,W %E$S?Z4KBZNV M%FIHTNIBY+8$0W8/L@YU"0T9#(TU^/PB,98'>&?\0=C'!L,D-!'7L9XKPD6*&CW1&'S&JV%DO/*YH_J3VY@FU8N459].<",1T!W9%+SXI6G.Z(,3:<"66 M!5]'9E:D*_KQ*;R:[S$^A9?5%%X#UXU/2>49ZTT82&[NJ592 %DC5/1)+&U; M1P#UM^ZE=V56]S 6;3G^G;K.T=,X=)F5[!3RNG6H=@-N@T5FDGP*X7TPSQG? M#XO7#N8XE1\*,/]BNL2\?P%?@2AC01C]*^?@,Z[Y'F;C[]C@([4IJ:M\(8I^0* &G;9 M>M53_N+I2_A/0L?"J%>,1XT6AM+#@W1?P[5ZY=1LI8>>)F4R[G:X=\KNP:K: MI>7PDRK-U&NJM(PG?SB0L&I&PQBMN2TFTD/('\024\\&4!UWB!U=FW:>^'$^ MQ ^=:45J6Y*N:*B.L4-:LB);]=67*>FN2I28:,G/;< M\JZ<\S"]F3OS!A+&WE 2+ A=AP'+U_Q\?6HW>JUMON^@-5! 'ZON-%;M9,A8 M.[6:1(J!\]8'1\\J.%HBBTAH?"TF"B11!;A^T$]H2B7?-@]XC9YM:_;4)Q_( M.D&KNJ,]VT=^?.3'1WY\U,)'+8;J[SI9EU___JX'1.?$=BI5F/NFAG78W:(Y M43TI\8%M;]?/P2+$-'@($SYR:Q2RG&[SI>[(-VD<)#B4M9]$M#CAQCP^E3.XQXN)P(65%%V"5>LH&K)'\ M>;&>'ESU^9>'D7_Y(-#M8=_1"G]4-D@_]2+X?ONX>-K_\S>,*#?75D^WW/!- M5+=0C"KWTZ^;=)-G3 KS3IT/6U^C]QZ\-^[!^X'UX(-Q#SX,H0=?CJR,UU-= M?8FI3AL^>?R9)(_WL9\3=$\/!I[X:-'Y1(L,C2W2R@GDBO)\%MD6+GS4L/9= M"2RUL/ATL,*5 %2[JBK%+ZYPT]M552E0<3$)UW2WR?;P'"]4/>J8D',[AU(;P/!D!WO)\V3-L^%/%U4FE98D]JZ8?4TMHP@C@K+4\: M6Y241'YH^UK\A1#R^.R_*D2LXJ> *O=$G!@3EDT6]V&B26Q66Z\.S0-J#*$'RL@IJ([=Z!=*>'/+SRA%-$Q&:3R*USC%(JNY.,>W4UH] MHVJUX6.2/B;9)";9WO'C0X[G$W*$'"*DUG[MBH;T'B3P0>R*5]IPTF@,+%=\ M)H9::6 DN#*/_%V^0?NG!^N%K0<[;;O9WKT+Z/9:88Q9N%Q2X:T4AA=9'/Y2 MRZ-6IVEKSK/ZPGD_63]^LCHC!G*)U9\*EG#E]M[O-=^$=BRP/W&VVB5NY4=Z MDL?\E!:1#OX_\?!>!?ALT))'_BX\J8"Y];:<+&8T3!D_9">+SX3$$WJ/Z .. MD,*/9U!S2#U2^O6,ZMI^^D)*Q(V@438E.,UN4BXMTKU] :C45S\F#XB:=*&\ M_+GXR6J=2=XE=CXN,9/]F#3:\ES1F![$&I]QKK@XZDXFV&[MBA>DN9:TQ[(K M$\K[S ;M,QLB3:\Q-+7N.?LI2%$68.E0#S:(%B',(!%)I\2/XJID)"]9QCC) M,Q0'W[<)ZX.PR%@O(IWK7>PS('G&/Y&*3HKDG/R/?(FDN?BQ:(1M?\,;(/P# MQ6LM=9USPY3>GO]OR/WW+L:>7(S#G!0P+^8P9;?J;K@*:*K]ME8;9^/N'>CA[3W* MY^-1MN&S.5FWE??9E&E#8=-G=@=+OP3A>[!>/CJKEPKO@75O^L> H:7\&:?R:2K)=CC^-Q4/E'-) M,Q)D*W1LMI*%_(VX-Q2F3VSW)[X.MFW6]I+;E][N/?GFO=J=>[:MTR=<] MXAO4?890,N531F2YF/()4?UN*;A2&T^K4A2%C%N,"QJ*5$A1QK\T2N,C&9Z8 MV+84SZS6:Z+3F('=I02+!?2QO)OXHAC-COQ0_*?#LN(__&/,Y2()CJ6$\F0K M65WZ@CW(6;HQ08I:]>]]IAR_32E9X"K/;$D)JQ).=I/P?CL'E31236E/WN\X M.8%4NI)Z75JFGPC+[B6QW5Q1D.!!=7QQ^_^SY^@&U$3.R2 M4]>'V89.0.>6-R<2X^ M!%)2(T>/A_1)X+TEMT299(JANF&NCKYN+9S5J?P^;-5IV(JO/FY M\V;YX?ZO'&_$P*D"0+K27<9Z.IIGH)A.IW/B#P*QKR2[1 PO M4^%:'+'?BBEU5. S5[D@^GU%55&BQNT&[WK1APL/SV[UNE.U.BNWNG#/B>%!LFU,1].9R:=E>I#ZUIZ*_$FX.[S9TI="*DG:CCMKG M%?I^6,''<4_0-=./P>[CM>[':X%V&C&UBUS1BW\0P#\TWGUH 8*27/&7PW<: MK5'GBDKT$\0_]:S;5OQSQN#3R-U)8_KFB'^#Y9@( 0MXN**;7M^2'S@9PMCJ MU7JZ7-&,#::,\=7HH:B@?Z;, Z)S,LSKT*V'K"PR1R)AB:?%BXD[MBK_85] M7@=@&8F^K4C"1XX%B!\AV5.0IV$>XZ,,2'O?LL$*:5O:&AR06L\<1U&^ MSN7=CDFV0E2\%T71BO=$SD^Q^RN]V,;UK?J,1S'7+!_;,)F&.+Y)Q^$&9V&B M[A&DCN5>[)*2L!FI$.]^_Y;I\8M?=V*.,3ZYM@G#IWSK(?$=BL@RE:W\$29Y ME2_=UF>MZG(L4Y;=BW6H>?RZHIQGKYPA>^5*;M5BBI,4:>Z9*LMZCLFY1*Q/ M(D=MU9%]B1;<@HTO4,K_D4V3,&6'TX"+/5G,PL!\M^ 3EYV 2,H87> NF4\&)KZ6X MYA^RJJ^ID)VDT%2JRAJN,)61!Y)XO[([]& MH<_1G$GPH>L"I*X+-+,.Y.1JNV$L1_%E3OG:*T!VL23+W_^N[$SMEH;08^E+ M:*/#@(;L]_?9PE#UYUG!OLZ-!A*#3HX3I_V -KLS(5O"@T@0(]05;6CZ2NJ" M(E=X';T0I 8^9P9 D!KXK.F5X3%P]HM!$%^/E%Q94K N'^E($RYR92$9Z\4@ MF.K<@H+J".(<=(XU!9Y ]?@%KBPXN#T(V\0]>,U@OGR@9C[Z4V^#[RJ5!$BI;"5!CB_+!& M?G#NC*^EUK:H$6!M&K_7-41MVN5\@G7[LPNZ;1QG ZOK%X?5!8[2@;7U:SU# MY"H=Y#&CY62 ]?+)+;UH0XX6K]$4KVY\",*#=R,@XB"3SVCL3[+B,6[ZXJP2 M%TE %6L^0&A9+&LI6_OIF,_EVFDNU^HW;2R/-BBC:C]3T-8UI8. 2DP#O4]F MT(CE*T2,@[+/A,2,PX:MN%\>G672%?!7RKREXK\I2++*4@YX-_F*=AN M,17B:TJ?GN1]79=YD1VB4NC24O[6F3.WSG8)9L21GAUGF2G>QI HDHM($0?X MEZCX;T5GFC1E^?K*A <]&GC49/0@^:*V9M-&I9 M#V?W3K&_J-2GO#YS]& <$V=RR\&GE.Z;K#5PW0R K#5P#;5BYI)N#$97= RY MA-46V'"'FCN,>>DR_;F?RRFGHI0:''KCF(ISG$6?67U(%P<'/FM\:FB? /E$ M[Q$,D=('#82[LL':(\H/?!\=VDORI[*U*M75//;5P3X\_'L8T*#X>1'_E5'W M\^+I@_@>$++P]B_B_\1U"?Z;_P]02P,$% @ NH!I58%T$H Y*0$ 8;(1 M !0 !N=W!X,C R,C Y,S!?,3!Q+FAT;>R]:W.;R-8&^OG,K^BC/?-.4B7% M@.Z.QU6*+2=^)[&U)67/.^?+%(*6Q0X!?YM>?U0WH9B0AU$ C]=0DT05! M=Z]G77NMU1<3[]%$+X^FY?Y6FGC>]/SL[/GY^<-S]8/M/)S)[7;[[(5<4_(O M.G?P>.7"EY%CTDL526J0+W9A?NWJ=_V5XJ:4:FKMZI8NU#P_VTQG] M"GZC*,OW-38.H7IF6*ZG6AJ>7^_J43.#:^6S__OV=:!-\*,:7FR\>!5X],H/ MPJ$8EFE8^/\^];^>>8YJN6/;>50]P[;@7G*](K4J57G^4+CTQ^8%)=\N/3)Z M-KN>IU241GB3F5OQ7J=XL8ACU1W1NX3?D!\U*Y*\-$C7\3;]:OY5Q,]FGH,? M-A*@?0;?+^:VZ3JYNC2_I5DXMKEA%O2;J%EX4R<:.^2;%>B\().3K/N2]!2J-W:BLK&/9F\PL'3NZ_8A7?MV__GQC MP/ ?W ^:_;A$J'AD>HGD_1UCT;$1O>SPQ U01#W;\50359 LG[7H\)"LG-?;YW(3=;ZA2L6_QR/V5$1&6<%_SXRGWTI7 MMN5ARZL,880EI/GO?BMY^,4[\W7.V>7%63C6BY&MOR+7>S4!_&.XN.(:_^!S M)$M3[R.B'XS51\-\/4?_\_?,]CX.C4?LHCO\C/KVHVKY'WY$4U77@57.D618 M2/H@&]9'!*!Q;><]:L-:O M5S!]1S5O86%??L>O)62 ZEKB^4KT99<2<"K\7VW5+\Y6AL%F6'W\8+A$!7EW M\,VF4:U==7D'H)@\8]=#/>!V=&5_8#RXSB.V=/CCW9CJ0PGYZO&W$NC3\Y$- MRD*UQJH)TOR2_L/XX5=4RG@WAJNIYI]8=;J6?@V\4;JL5&0%U!/CYUW;VNQQ M_L >W,+6;^ SMW3Y[VJJSR*3"YY$+M_TK!M'U8AQ0M&AM:56O2E)K=+*LXV5 M!\XLP__X^^ Z?'P@"<\[IFD_$VUS8X.(F8V\\-)'9D 13) M^%EUE?S6[%&W/1UKQJ,*0B1X 2*R4BU=UMJM< [AF+=/HATQ"=DG@SS](\G[3J<9= MZV),IQ:+.C$F0B]Q.S-O8CM@+.K))B!+93"QR)_]IE&/117NI]%@2XU;UYTE MF (1DGL./)[Y$7O@]S./N,#$>]>;!F(.K+MGB0 MH\V#U0)'2I,T#% (W59KG:V'/X M!^B$-\,_1#(=,H<#- -C$K2:4KG>V,]K:1Z@'](@08(YR-4U+1%&59JK496_ M^N X.IBX,L1+)''.SHOA5GK8/[KT) M=F EP$6=D!L]X5M+LQ_Q5]MU@SN#WT2OZMFNY\S'$#R#/G:HOB3R4_>"JERK MQ5NG:^P83^!5DZG B&GXJ6^X/^AJW=@.-AZL[HLV4<$1A+?/JJ,?NE)7JCNY M,>WG+UA_P)]5PR(?=L8>=OI8,U77-<:&1AU]6"I0?HD=^YJRUY+5&PR6[!9^ M#]SA]4%=#Y[5:7$6:R^K@.Z]O5DL>;%8LN!#NDY*.]XZ'3$?[A7U55H;!)ED-=BBFX/LU<@ V,6/M[9K@&W0>BT%*='UWKR7!LBRRB:LZW?[Z: M6IPU^VS;^K-AFKV9 ^OMXF!G$!R9CO[?F>OO?\Q7HA%W)>I@1'W8B\GJ4I01 M%6%QIK84X8T!02/#"C?7G@S"823/89[Y=@LW,51SL5049F1[#B\6[S_5I6M^J.VUW%KG]$Z:13A#,,']X1PW*A-'^ MO692VQ(E_ZM#"+ED8CMT%#!&/R+[ADYO)KG^$_^&JO. O:_X"9/L-C)A]6&Q MMU118DY6(MO<>V&\58\7H]R5L^(+RC\,;W(%RA.,7^>KH8X,DZ9&/F%KAL'> MM1^LE1V;O?"XG_ILU>O[PC&O>6W6=%$9C,9J_"48PB-X%B OEK!U/S*-!RI< MNB]3K(%4&1J/<,G]> "?NF/_40-/=3R2N4G1S/9V'W2;W*="QRN3_.OUY3WX M>7XFJ%Q:)GQ37EE]4M!RKL^<5ZPZ9.-5V2M+N)"K7?51GLUJU[:L]L8TX+<, MVY+DO?5'Y!Y9!W2%;I@SJC^P-G/ SLK+2TIES1E?&H4=,T36W O8<3C"QJ#"![C'J#CHMTP]5,V\4Z M,BSD30P7>21_&,$DD.K!)Q@^($H4F42+DM^!*OS%3[L/!Q5KB+C:UL>MJEJ1 M1C"ZV@C+E?:HUJRH,JZ-E$:C-M:4TB7Z?W[Z"^:AZ=QP0*2.BPZ%7#A=\'G%_X)X/-3I=F%< M$P/62_^ R)J_O1,9AUR3?R&XH'>CI30$G\OW):]!-"#5TE&[NG)QU'4)B-)J MX+&N-=H57&\ ;NJ:7FF-VSIPR+BMU#'&M;9&<0-+2-?1LF$T"]X(%SH<&1%0 M+L+@C>CH&FO4:@M)YO\M(;A4D>3VVFCIN^6Z%YJTA6%V+KPG573G+JT9 Z9% MM-;Q?$++1HGU5PG+C#Z\N& O^%^3$J7?2JY!P@\DDW?U'OX#5QY"W[OVS/'? MTIK0\T"8T.7:)#LO@VLQK5D)WQDZ>3\V8 7H4W%D >C5[>^KM3;K/[X,/UJ] MNT_R\)T;ZJS+Q0C#WRV^FP]37[J4S&#Q"/^;\'WXD+.5M9BO#9&A=&%\&1K> M_Q&K+ICGE\'C*4+"6X3?A>_)+2+7.C 19*IR\U]@OU#1NUP,:GZCX)M]UXS8 MQ>LK%I1^GL-W>R_8)@\C_[5;!VHZ90NYWGC M.^9U<1;YJ/GZSD=49!DIB)X1T?,3_@PSD 31.3758VA\0?3L.#T;4R:.3D^> MO,,IV;=-:$'\;3,[#;TN")\=X;G2[8+PF7(\/_I=$#Y3CB^(CM^0]5UHDD?/ M2>AU0>Q3TN6"V">DOP6QBZFS#;[VZE;V.5?FN.<^YYLYAL7X7,U1#OLJLIDC M+%F#<"KM:$) 2 HMO%>2*V1;F+0>(ZRZU&^ ;R[=.HT%F[Z9#TL.705D@R$@ MXQ&KH_LY/:K94PW]UKI2IX:GFD=!N*US.R8B]K&GDOANF*=W%-2+GM0QD6VI M=^:F8M"CH&3L>1:*N'QI>G9SW!1E$4H_-1\LI^C*WD06QL()$U\8&2=%;F&< MI&B<\ N*A$DRQV(=I)94(^P3CN%92+NF,% 5EE5*L"V61588O)ZR39B2?"VZ M+5D8[ IKEDTNX+'8LRFFD F+EFN(%M*F+1!+ M;ML6"+_"NCTT._:T[-H]$RR%1G M8;/F+5M/TUHU1-)@!I4"+$M71/)?3I4"V1.Q6*8)-\9!WF0KO,+F666F61,H MZN72(Y;,MJPC'K&$%CP"(@HM6$BR"2V8C19,A[A\U+C M]T2M6T-LPV:0>\4X44YLI^:1>Y4]$8MEK'!C*.1-ML*K;9Y59NK$Y2[W*H63 M5X2F3PF03(^0B4F/@(A"TQ>2;$+39Z7I61%WT^F)0B$RH]MZ675.IR;N M362A2$^8^$(!GQ2YA>+.L*\&/Z 0&]'+LYALT>0H-5%,FG:\[) M\4'3 $_4HA65 L6$J[!J1:5 T3![RI:MJ!0H M/GY/R+J=68:/Y][,P7/H/&+5A?>7P2W@9?C[\)OP/?G]UBY_4D6J__5IYH(\ M<-V.!NON4GWF^WNJ\Z-K/1F.;9%U4DU"EREY^=74^(;SABF5+JWGZ M5'(8S\^5_Y]8==XH_YGGG/^YM]Y/07;\=6/ T_!7,+[ 09U]F",3-QQ7>RY MGUZ_J?^UG2M3=8.0V.JN-'N*G;L73ZYDY]Q +5J:!ZZV(+7+/$=0_&#*SI^E:!H'RVE,]^D\@( M8B@M4J1WC4?>8NMC47]O/-[,+-VP'CH/#J:[$\98Y9O,;Z<24'C7A%(*>@=+ MS##HW5H$P)(2[Z__J(ZA@L8C'03H+P98FSE8OW_"CF4\3#S0CZJEP8]ICP%[ M[,R_N;5T_$*Z#I!O3@T+L1^]OL +X_>@E4XSL->*']A;1C0#&13L3@L9E)X, M8GF29$BQ&]5P_J.:,_SI=?[R"RR[R +)3- M=7CTY0O6'PSKX1J[<(DZS[T/WV.]XP:7+.XL@+AK#-&KNGAZC.7E,MHRKY2_ MZER_*90W7+NFR,US^"[\_7YM8#A=WHT^:[@CHZJ>2>*;9KV&W]]!,QW MPKS[O;\1YO!=BC!/(K3O@/#S%2\RD/D0TA'+R25:4S!33TUR\@&X_,0E8[.T M6I%J%:EZV*&[ PU;*CS7U_K!&T(@376/ FRLTZQE-$-'D5+"-8AG^6R;,[+L/.[X)E!,MDJ&5R.BR! M1U^FY]@P#>^U8^GS7D2"@XK'07Y[J8W$%&Z.X";!3=QSD_" !#<);A+.D> F MP4V\<5-Q_*8-^XN,^"B\>_=E"G3COC=EGFT?^&.>]1FO$%$X28)U!.OPQ3K% M\8@$ZPC6X8IUBN/^"-81K,,5ZW#EZQ0_YSOG?&M^;7%!VJ.U%05IC]:6$:0M MO*Y=*P]>I?US-X@NL#^T[[!4@P6C39(+ \;8IL21Q^GWG M8E*M>-L>>U$PFXT ;JA9*%]N+T*F[N"D3$-)29L,">8H*8SG^-=@-G(-W5"= M5R(X[\<#S];\($;'\R;TV&3LW8_'<'N+\_-1-TXEP.?&":6)2B84V^1);XL2 M7=DN3+, "CY6N.3-;$[#GQ8$/G*O6A#XR'UK0> C\;"3Z. !-DVP,CYC"SNJ M"2Y-1W\T+,/U'+HC$IC&QT#\O68J=+< 1K; *(S.%\#(7&(4PU80P,A<8N04 MQ0][7G5(VO=2V! 6P- \K-.PQG?+\%Q8FQYVQK;SJ%H:]L,=Y$>:0QN6XJ\^J86D M5WP#9^!Q]G@2A-[Y/-(.<[XT?G?,E?4Y+EN*&834%P&A;1!:7I]3A- ;P_2O MH>&1G();2S>>#'VF^J>;7!L.UCS;*122_.;ZL4WO6 "*7!X?3*MK=(1HBHCD M"305'$VYA?]DLD]![-PK>T8RZ*;PX-<[]=%'TE?[&3M_&*8)'W@>_NS8LRF? M:"&TBII" )C-$TG'TPR7E9&GZ=^.\OR<8%WKR7!LBPQ.-?NPU+I!H]L#PPOL M$MOQ3-72OZC.R'8&,WCF>&;IY'L^:1AR_*Z9A3T\=LTO+6X-J1]=QP(I; M!?&S)'XJ?$WI6:M(#:+ O]JN2\X8,L NMC0#NY] @GDS![32XN/7",K2JU33 MP0-[YFC8'3HSU\.8B$+-,/DF=?Q)1Q(]SM130D% -H:;-NMI/D/C$>9_/QXZ MJN6.L7,__FS;^KTSP,Z3H?D\'G[G8/W^"3OP$\YY.\:D%H[GQMFE:=+SD\XC M ) ] +A*VQ$ R$4"\./4"P#D(@'X2?7=$P =KV<;EG=K'2\*(J8HK $!!6$7 M""AD)Q4*:R$(*!3?5E@K^G_"U@SW\:-J6+!>2WNU]R/3>*"!,Y+ 3)+BPB4= MP*?N6-5H4"T<]*=2I[AGNIPCQ >CKW8 M'Z5Q5OR(8+KK#'L!T+1Z%)\H-#>%4X3.Y$!G"0/:.7(FKQR$P_A+ZXY^JB\*\$Z M@G6*PSI<^4V"=03K%(=UN/*(!.L(UBD.ZQ3'U]FP*RJ8AK,]U*-FE^+X-X)= M!+ODSB[%\6D$NPAVR9U=BN/'"'81[)([NW#ENPCHGQ;XN/($!/A."WQ8:%G;=\'OZJZ[U !^"%Z //(S-'K@#[LS!/6/**=[\ U6B5F"!H@U+P3"C M+&HM@\, =J[H:1B' J4"I?Q;D0*E J7\FYL"I0*E)V:7PB)JJNO=6F-')0%L MC9R_U+'TI;5^=!X..U=06"3P/!&=C! MQLNY@TU*!7=B3)%I6#_ZMKF*!?*C#[;S<*9(4O7,@:_/R'4EI#J:L_WBX(HS MTO*],K9MS[(]7$*>W<=C][?2N-U4ZN-F6ZJ,M;92J:GU9J6E->6*KHQ'C9JF M:6JC6D)CQW[T?Z"UI5:]V6S74/BJ,7_5"EZU)&G^2@'PGZU-DH-IXVI;'[>J M:D4:P8QK(RQ7VJ-:LZ+*N#92&HW:6%/>3GMY8C*?$VLU\%C7&NT*KC> GG5- MK[3&;1V@.6XK=8QQK:V]F1B0J8G"5ZWYJW;XJBI%33;XQ/6/HX6YD_<3K.J4 M]73CZ1+]A- %>0'_(O0__WI1I8_TL]5O+^!>*IHX>/Q;Z5^>#>-SO5>R"F-@ MD\I8?33,UW/T/W_/;.\C.>C&17?X&?7M1]7R/_R(Z)6N\0\^1[(T]4J70W5D M8F2/$3E:EXB7BS,51C6%IUY,G/ !$VP\3#SXS?3E(])LTW;.T;\D^M]'-%*U M'P^./;/TROI7SX;N3WP^XU&@P[P^[@XFP4#GL:N2QK M"_)F*8(/GE3'4"V/C-)Y5,W(IZ/EX=&A#+I7W_NWP]ON '7NKE'W_ZZ^=.X^ M=]'5_;=OMX/![?U=ON/[0P4D6@^>;971]8>K#TB1ZK7VKC']NC:F7S\NQD2' MM#*B8$#!L_U'^U#.;]XW]_UO9);!.&"ZP'J O[O9(R@:#5DJL29T;)Q?VQK- MTAN^3D%,!'JG3SAM@ZU?NI2ERK\I+R]N>)GQDGJ4>WW&^JT$;*1ATYRJN@[$ MGK]WIZH6OC]48*RR-*RQ-[)U,!$\$&6>'M[^"3N>H:EF0!_/GG[T?R9]:)-? MH;069R=Y_ST#TP0[YFL?3VW' PE/[N+]5C( 36!*GH]LVQRIIFG#Q%YB @%( MHC1DY>-;, "1+LX\/=;:*-*'QI;%6>>3&$NSQ"*DB88Q?EU;K='EO[]W^L-N M_^N?J-_MW?>'J/>]/_C>N1NBX3T"J38$T87D*KKO([G^3G^/[F_0\$L7+0F\ MN;#K7 W)UW*[6INS@3_[,X 'J+T *V<4M<GDI%E*?#?N=N<$NEIA"H; 6J M-\=:*%&)=X;^\O_S[/!5X#\=\O<1&\57]N.CX9)0$[HQ0-@!;X$R. ?HHJUJ MJ4MC0>0G_B_B:QR)W+<"+Y2F7),2:IB"KSK,\ Z$P9<_N@.0"+<]ZAGV.G=_ MYJA9WW5?5,VC)";^OX,?#)?PF(=4%[E3K)&HJ8X,"QF>B[0)-6?>"VV\11O7 M4],W 0G7U MD&-;&QWAV/J:O^4;JB^WP?:!GPZ]E^AK5RM2O=YLMUH[UL97YIR"[!V%#0(= M;)/<;_3?F6.XND'/125BPUB&&+W,>5 MXQ_Z_CW?"'AW^Z'_8? !=1^GIOT* MDUNE-KJS/[P_4:-KEY?J,TA'UTFR5?#/5\/",4]!7G,GV>Z6WX$ZW(%+^^=H?T<5Z+^1P6FFCT1'WUUPF44 M[XF49^^='HARX$]FDGX115X?6,QQ]6QXL/G_&5-?_\03HZU&J[9OF#5-LRF8 M"Q%^4P>6UYBJ)L(O6)N1>F_X&.0'/%NU= 0S162J65I-/+$!07['P>H>Y*XV MI"ABDY" ),L?=\FEKS8HEM[$MO9V4ZKMYMJ#&DJ=0['SKC\WU/VQMC^Z\#,3 M3\FLD46G729ZV9P12QFI0 !8!0Y0F$"#KSQA #SF&)X!-_&]%9+A@*8SQYT1 MM\6S$5Q!-+<_%%EY-WI/V)1$#SJ:=RY\ES73:V1[GOTXM[Y:V=K?,'TK?!2] M5L=:8$B>HYD%*V<:9*>X=#DT/'^3&JO:!-$2Q8LS\O-8+L;:+&OPG*8L+:$K>63KQ\4-&O2)M@[0>QLGZ %,(TRD$LAJ6 Z#OY MO3^DB>JBL6&"U:&:)EQ!]KR(,?+WS""F"%@@(QQ< #=>M4:J)#KB[_D$-LF2 M/1-2FM@IY&NRYX-T^!;T ;ETZF -4^T@*_[]Z :PB][!30$8R)V!^'0G-@G2 MAOLCWD3UUJ?RK*Z.EPS6_W$PF_=EZKJ\4Y:F/ *,P46C_Q* P(_H]?!+,I[@ M9C0UE8Z$#E=U/=26_#OHZJO[8>-6RW;'\6KFD",5_=U%(AC <9VY,?'^)W;7 MP;XV )JVL6EH=_;;J_/?&\H6^83Z0/A'P_, +U1".+9%!*CYBC (TU=$NYBI M&G5^KU5/]?>5UGAB<8]E<[T_,[$_XYI4)[ 'WV;F9T[Z'P]"=VR(WI%/FA^5 MJO(AN-B;&'1?8DKV)3)A%G\6<_AC]WU27"\M&EFS .8"UUGA&I"C(A-^CY&J M@2]&DOB!QH2H#A& D9^2S-5*Y!!C*4($^S'\%^?2T3H0^W _E(QOJ M'AS[V9N$7W\ '8#IV'1R]!'=W::1)1_WVL=-0_2_US_.+XQQR>9!SB\EDC^\ M?,.0Y]<:UA+_@FT;LJH2JK=EG?8A<]^;L<-=]D,Z9>0"OXWW<+]9/ZBTQ9I% M@1L8#D8A:=?L'KS!-CYHV:+#8*LAKZ^$"7P2+\'<_X!B/8ZEO[XV\G&LS8KX MWG,):FR7(&3"O<9P)!"-D3?C7 %J'VSG-<*3HQ=1*&O!1;&=NLX&CM@_=>XH M.60EHNZ0*I:/RPG;;Z)+0EP?S MWJU:2D--"3G-#AH%O _M+,#>$_;>!@7NR M((T4E3L4&UW/L$(YLVJ:(Q36B9B2,>P2C4$()V;"J1MXW/X:^&ZW$$U)15.X MFI_I.E[Y*YA9@M :AH&GKE^# S6G1;) M195ZV Y]EOE*'OYLP*/ALNIEJXZ MNHM(PINA;TT9J;Y3WT?&K] )QTG="3;-D-3H'1!0]P]JWR\&N!HL_Q.[>\3+ M!V0(F?#P/E%SI?!H&$["E#%",9I0X")[YE&F(=QCKS/P(NE,\Q,47)*@0&I& MX-([^XD6EP: \(M*Z39*0-\;NND!OWJST4=O1I,=!G04]XM!E) +^@W3L.W, M,GS"TJM*@$3-@%FYOY5N[VY6RV1A7KKM!1>LHL+PH2 35)0NV^6VTBPO91Z& MHPP(X"]+EB'L_#IOI#@IW7CR<[=^*_4^?_I]'H)?&:K_\XJ)QUZ@^H-/''\= M)-*T!/V$5N]V,^S/;Q>50KGTB-*\GTKX\\FX LK,_WS]"[)K@'J?[[Y_*RTW M9Z%7+IJSA*\6+Q8$['4^=RN?^MW.[Y7.S;#;/T>J^:R^NNM465F%D.K*7E3W M:;FV-%^NHY>&K/"A"S.\O_I*^_$$]]<-=VJJ8 T:%DGXJHQ,8.=5XXT^-EC+ M+N6/]P;CBN7;MN8.YOJ6[HCK.#^/-__88^ 6#FGT:; MSV]8;:?1O-$\)BN\S'E[M1CR29U="M2NJLB-H\FX;XPLK26'_SOW,0+WD$9^ ME'4\DE<8O Y8BG2B4B^'G4]?NZ2(_.K^;MB]&PYB#)NMV">/R3T;&OGRQO?& M_#>(I)(&+U',Q%I%^B#_LAJDB+B#/\^*_\MSVCV0J.^Y -_V!-E_0)8LV%,? M\&JZ7[A U(?=:[56NB\PGLGJN.>J8^K)<[P09Z "$R;FVSE^F1@C8\_\Y%ZG M/PQ3C^/_*L3#OK^[S>Y1%71S>]>YN[KM?$5@*8-\ZPQI6[(@S5I]2_^X7"%O M8HH$ 'HT=-W$>[';MCNP'%H.V#980ILT+\T.;_('=#./QLQ[F;KHW7=+G>F& MA_7WYP)\/(//]CO;VI;+$(1@1^O8(K&Z16-=>+,$$#"V[^=/GB<4>S H3-/3 M++@3"O(Y_6CA4DNKK- =]LNB(R)=;1E".17=[\?,LZ2TLFU)!'/NSYPH_-." M2^G:&X27O/-*:UUMT#/YLN;:E6,!D7\NH.#?+/B7.;VKC'GW+8/LQ;BI*?P< MM.I(-57:DB%MYOSD/P@-)A@#@_KQ^;Q9[1IK63_>WX0H-H.S!TU-:.>\M#.I M)_)>L];.=&=M8IOP.S<1]]%-OZ1\VZ5S%M9 %L*".;[J0E:D:!!HJCL9F_9S MYN8Z/!?=P(,73K9@1N;,F )UFX(=4V1'DD)&8I8,"79G>S XST8;^#(J3EIH MT*>PABT!^C3W&93"[C,H'] WU5(?*-MD:=BZZ-IPM9G?2IOHJHZEFJ^N097K M@J4)S_N9K.2:/G9GYGJ0N]"\SA0ZVY6]8/-#V;Q:6#:O?D#_)AG;!FA($EXF MS 0?F.%[PHNF38[]=E%G9,_"/D:H;[@_BLU@+(FF"#V:*H/5"LM@M0\TQ]&Q M3;]U;<^Q-:P3?BHV]["DB.">5+EGRM*4R#B1*]-,KOOAEVY?9'$5!=<&TPS% MS-.XON('\&.H/J!-U0JN$)@20VD+C9 FY\AJ<3FG\X$Z'^@&!FP[!><:IH00 M7).ROFD4EFL:'U#7'V7!&88I#03#I,HPKO' D%@#F(7J%=YS9KLHU=B1W;!G M!GVW:)Q!WF14K<:T3OG-#4DI\,*BGI:]7ZFE[JC/?93S;Z_:K%M%>/[UE\<1]]T2KR<:Z MH\QP47R<$<3X 9:QP)6Q#JME(SLS6&THTWU M;:=_VQWL7J%T3HWQX;1]T^9=9<)K94%YKYHV\MY$WLF:M:.NA3_*+AJ;$\C-Y) M943^?[\8=3/STZM&ET.:Q__-SQCNKF8,^RM8E5%P,=Z1^&C%V0*MSC- ::DWH +& KRYT1^69#_E,DON/^DR<\' M]R>Q06(8$KO1%O^*:C:/$0/)9" Q 1>QO4.85Y%J9:146_!7O?X^'=.8=6/- M0#YY]G1UTR[D3U\NW&$/N:I)-G CQ,%B-7=$3-;'M)L\>][PK;@M7?Z\!1\1 MIR@P%?;S(QGF7;Y)H%)K2ZUZHRVWHQNS-]<:LR\Z?'\?7)>"/N$SM_*@JM/S M/G["U@S?./8CS5:'Q_QA>).KF0ODP\ZMI9DS(G [KHOA?WVHOLR;AU>W=@=? M]!&O5$N7LJ*4VZW:FW[@J9*.,3I.&VZ*% $W>0$WF2>XM6KE1JTJT%9A9M2EUV'U:MHI@$.9\7!KCUS-.Q6KERW'[RI3+Q' MLT)VX:H0-Y$LRA$9T5>VZ]$S98I@2,>+4L1PP=(6"[%'NDUZ5!E8 MXH2\]^//MJV['4L?8.?) )@/;%-/)"3:S7(K51D1&8DIHIXZ+:C6&%CQ+*%: M*UTVE;+2>GM4E(#JB4.USL %8"Q5E5:CW*JGZ5@*K!82JPT&_@-CL:I(4EEJ M\R97V8;(A>\0QW=8I8GL]\_][-@N/<%U;'B<>Q,<"(GMW-]D8/]3>O0H.9*I MIGI9EELB!E4HX+086..' D=6RM6&B)47"S@;]O[VLHT/!4ZC*K;TB@:;1Q*^SM!+WNR4KB[$]]=;*52IMNJ@#;(+E_%!&#]C"CFJ6 M::<[57\T+'JX.>TDB5^FI$ULT+XKD_W M9#8)2(AZFJI%A%D*"=L-V[1[VKC<4@5J!VE74;M@>W,M83Q&U8([) MM;: K8#M*FPW;!7NY2JD:2,TRTV%-]B*\#8GX>W@- CK ?F'>7+N?G @,[8+ M@PV;L7LY#'.:^&?9?K5=-QGGU\JUA@@\%0M &W9(]S+=60&H46Y)LL!/H?"S M88]M+R.:%7ZJU7*K6A< *A2 -NRU[67.,M-@2KE=R[%@H+@1\.P,27_5[KT) M=H0-R80#610L4GK@)XKT+,H"F0!>EE.,WM"@%Z ?@GT+,H+68!> M*5?;F:;?"]B?,NQ95"JR@'VCE6G\.S_0BVXI>4?R@Y00WZ%&(PP8Q4%('WGJ M"_?=5#B0/=OC'RSJ'Q<[:F$#)<.: S\]@^40)YU\W)&3KD@/T0"8:ENJ\ M$C"[=[9%!N+8-.LL%%/);-%JN2YV!@H&1!;UE%P!L4:35?*,XPD<)L AB_), MKG!(DE[D5H=C:$01]WWR2TU\7."8?5(G46 M%:5S"1($%CYA"R9ZG$'^4VP0(B[)2(/6!Y3CMJ4BW+K2SM,0'6(H*5164N"R- J6?9O"L.5M,KHE@Q MT;D\3%4,A-N!B/+Q74XGFF)8G8GJX'/61V#OIBSO-]^".-Z'7MR;BT47BWX: M-\]VT44V2-[IW7XO\D^J:V@BULNOF]>(RD7;%>OM86= K*AU=Z^K.A8X4V[X M/:7^W.V38KI]MW5*EB<:")U81/1&Y4RQ\D4.1*_P1@1Z=Z W*HN*E3=R$'K! M'^%M^U^@ES?T1N55L?)'#K42BF8MU9%B+ M!!8$:Z/-3+_27V2SB#U^'FXN%ETL^FGB' N;;Q+;Y^&N'#F9>[;W M"4.1CMD?F,P/ZQU O_J [V:/(^S^TBE_"2P)+;:!(#? 'COLYSRD\ UW@ L M0FM'EB5R:LR_]^E/^S!_0/,W,B!9$U2I+&7:D4LHL()@>._#G/+!<. %"R=" M0/@-A/<^FBE/"(L&)P+";R&\]S%+>4)8Y@W"OB-QYHUL_96\4V'U+]%/"&QE MW7CR7T4:\K^NC>?7O8]N"H M8=G@IQX\BNS#JX P^,F#HYJPJ(Z'[#'R)MC%!&DZ:9VIDU>TB:<*\$!CPU(M MS8#+ 2 >?H0'NA^VSVQ]8C%6;VE.P906ZXG"/ZVHM052AG4&O<^??B^M8TV2 M?HGBS^ 3ROKTHQ*]W=K][KY_F]\P:ME7'A)-ODW4+EV2QR&D^(^=0Q)=3.:N M;Z_SN5OYU.]V?J]T;H;=_CE2S6?UU0W%"\&$A=>&,<'^G!3"(H%G_"^)_A?E M- =?E=!9U )\N>Y'+@!9R97G!LNW\O/)N.+8S^$W*U\-[Z^^&M8/!)=HV#2C MJ:8;[M148>T,BY2 5$:FK?U8Q3\=Q_P)Z$)%$X<(PG]YME9:P>9SL"P&R$J# ML)%/+G+%^H=SCEN[=A-IM^B*LD_W,G*Q8XP):Q(I1)B.'(%!>.GB3)TOT ($ M*X!8B*NL!1=Y'!V._WF<,3!F?J(A1Y=W]_WAES^Z@R'JW?:ZZ.K^6Z]S]R?J MW%VCP?=/@]OKVT[_MCNX.!M=YB9T89@ /Z*^_>X])>09'GE^^#9 )EP))+^Z MO[ONW@VZUS"9N\']U]OKSA#>#(;PS[?NW7" [F_H//O=+W#=[7^ZZ/8.WG=S MG>.[[Y8ZTPW0"^_S&\.M!1K+GKE@KK@[AI&-)D^%[7S6IT9+(.UI,B^1EH$Q M-'_O3E5M_MZ7KZ"UJ:2)%JS[:2J?)@:Q#JBJ?*%15=^JVAFF324 FV42#JA) M6%_KMU)CJR60IO.PH:OZ?-3-+4'I5,0Q_#\$:8;1-_CYQ$5=P(:.!G@*]B'X M%OX*5J6R+ZL"><607)$=U//*TA( B03('5ALA H M3W'4VE#%=60'&N56#"#<)S$03MRG+!V<_6Z9W-EY6Z^RNHU<\4M8[KT)=A#) M5'/P!%NN\83#PX_>F2"SWI>1A?TD-?5%](T1W31XN+E8=+'HIW'S0O6-.:'* MSQY1E> OF(8Z,DS#>T6J_M^9ZY'L["-3DFQ]L!5@;_.^-IQWL193_*N//<.A M2?$]4[6&KU/<>3'<2D ?\IE[C<>&A?5/V((7WC>: ;/=:Z-&T=6R3>0[<:MW MHC?OS,D.KM[]>*B^]&R'3*;C>8XQFM'\P:'=4QVX)(D#B%Q8>7A5NE1VNX&I M H&?. (']47;P;OAP(NU2.9)@3?-+@>Q0V%""N\IA3>H3*+J"!((!6DZHNTE1W@L:F_8PF6'_ KO!76&C* M#2=BK/LKU]@QGE2/R@/7,B'G;&'G3ZF>4/&&/B0"AQ+)](GL:"YE.N[=SR%=N1#.VXX M!&/=1SENP"IUX99P*FS?;0-O5*I0A%]RU.!==O7B;D-<- 'N@\ !062334E5?;9;4X(7\X$%\X;?[IY0Z[&7E6X MVR1+2KO3EPU)>%U"JRMH^E&C^$Z_YSU6$3U.X-D#Q MSS7)KD%'S"'MV\BCO2')8R^')D+6A'(F68:;5*XWLK3T"GM64%K0+<+!0>T- MJ1Y[.3%,H=L !Z4L2>*L02%TMR"W20^B.=A988K<&NVEU&@*Z JANQVZ&_;K M]W)06-L+[7)-3K-]DSB739S+=ISGLE7%N6SB7+8C.I?MP.A&1#/,@-DX.: M MUC"# ]I&J@FRI MCR"]/!=X#B+(OIT M+"0.*3EU8%QC;1D7\C(N"G5Z22[9;[YXRV?'!VC4<5U,;$GV%,J,26$6X?U' M:91U5K-X2%;/$)1(.!&>:R/SDR%1O1^O:*,5#ZE4M(B>R*)3+ \W+U2GV".U M.")R[$%E.@[9(OB/:LYPHJV?:KDI<7V0T%X$2?7FQ<):/0)K\RF_4IKS<.Y:^=70475,U85-"[$R7PEXM4T[2? M2;2<;\7%6L5XJ4P,'1YU'J*X5;JLM5L7 M9^322_K$6#]KER[K4C7X&>B" MQK^:XAY/S:2:B1V>ZDJYD6J";($K@7GS3&R_06P0R1#"_"#FDZ7$+DA AS\, M;W(U;7!]8+)1%;!A5DRJ+@V%4 M;Y<;]=U=LGA5"J=D__<&7*G; ML71:?N^GQ!SBX]?*527-G8W#NIWPKSY.#+^)]TO2PF^]W*SQUJU'.#-Y:T6Z M*5.Z'-J>:@:G*8G0&!MS-/$^Q^&\KC2E2SR;ZYQVG/L:>P>*_4X2$965-2O1ONKVO:['%FTAI?'4\= %METLO M5A])<\05XDW6%+ 5:M\3@,0M5RHU7,+Z@C)^Q#BI%UYME*M5(6 A@D2GE>ZB)-YB6,INN;,M+>E>99TDN-0R;?4N$K0*C=C$FQ>,$%LK M73;*#84WQ(J4K+Q5W4I*5C%TW2EWX*\F+H'T94BRJ$>K4:XUTXQ_IW,Z!$?: M[J0QF[BN\A#,UIKE1K/-&6;32S!;42N[D'SX%5MZH;%\3"H#$4'4C;UK?V8V";( -KA%991D>3V1[@4D30:[U7T?=WR#-'WE9<)%+CO MZTG42Z[V?3478D@T?XW&K5G4B $=#SRBA2%X+B? M9C5QPLU7VWH88N?Q&HAQ2&E/M5Q71(588MKRBZS$>3A[(.L?[-BZZD[60541 M>[2G&[@.M$4G;,HZ55])<\7"!:\YV.':SN')*XL#TO1\RAS4#D,JUU+M)W#D M^H-SB"6O.68'L:I25AK%S?$ON"O ET9Q9EA?#D)PKE3XYN^6W(K*?HBK0@@M MEL+2![)XO9%CX[0B:1'>,=6.V@B/JS,88DJIE6F/_X*JC9,(+J\WXQ:2G9GE MEC@3,ZIE5+EU+G.6X6OO/A.-KY6:J6QI@.+4:Y6:>6V%BVR)I!U-AJ#-CP^1M)*)=]4,* M](G=+I65JMB>/@X1G[SA0SK8JJ8,//5%2/H# MN;&>>#\AI,8M)<90?5ERJQ.WCY?*[5:.+K60\PR1E3C5,3VF7:N M,\%9K'C@+1;(9SBMS<)Z\K,3"(67)<9AYF&SK#33U$ABC_NH8)O\: :VL&V5 MFZEV !8M[8JH U?VMX7JXU2&)-]265 T4>=6I=DLMT3O5J'MXB(U^6[-(4@E MN<:-6EEI\W8,O.AAQ\% A)61MY41=*RR'Q\-CQPFZ3?,(X("& I;&FFA]^[. M]K!/-EEZ+SI9K=]\&?B[C^JM-Q=#"4[J+=9TBWOS/0G5RIY00BMQ,!"QRQ>[ M.FFYLVK8594>E.Z]BI:'.7??$S?/8=&+FQ&VWRU9R9%J@WQ$_6<#3'1RLXIO MD_:<,(7 )4*FC&*H[(8"2Q;C,O!*?_X@R7.]3O\!-])!3ZHYP_&>58OWK#K= MT)0D^F?MB>Y$!3\$J3-O8CNPNGJ\)S?B/;D5[[)FO,O:I4OPWO'J#-;F8[@N MZ3EC.\B>>:X'K@1X$9P'+#F([VP-W#029WW,.8AJZ?\09!>H-V&10HG<8RAQ M?D>Q,20L^4,T,(D*V=8>ZK<93_TV6:C?9CSUVR3JM\Y4_3;CJ=\FJ-]VN:TT MR]7&^H-)C"W.+>*IYF:;/*G5E,IUTOHO:HJ!8B;/7=+,2'5)<=4 3SW\.,*. MSSI5"0 /*H9>?8VUY:]D^A7\#3>=8N#F)VR^"@5_D'!N)E;P/H/NELS;1L5UNC-/)^D$VUFJ"?K6T$'E5S1U:GBJ*:3X0>S72GZD MX9PD/:#(K77ETV.)*Y-E42N-Q>N)L^I 2W8 0'4V;/[E5 MS;=YBE D#-&5..D]+735V^5VJNW=A// S'E8D!S9M#@+M.34P1-LN<831J;M M\B[]CS#I]]TV=D^=/%*<=%6 3'YW'"+!*JUJNMM(\$2/_&C6A_@Y4?TM%V#0WHL#J<"<7 M5X&+=7LV,O$Z&^=YB'/\46X3-HD;)BY5PG8LG9'HJ;<:Y5JFNK)Z;+KRI-&< MN$5C.FBN-<'R2S,7) F:?45ZYHUL_96\(Z?L7J*?$(AHW7CR7T6JFE_7QO/K MWNYL.(SIEJ&I5J:01U!^("6"W_8/K,$P8"E M.0536JPG"O^THM862!G:.+W/GWXOK6--DGZ)XL+@$\K@]*,2O=W:_>Z^?YO? M,&K95QX23;Y-U"Y=DLYW.W\JG?[?Q>Z=P,N_USI)K/ MZJL;"A&""0NO#6."_3DIA$4"R_!?$OTORF@,OBJALZ@%^'+=CUP LI(KSPV6 M;^7GDW'%L9_#;U:^&MY??36L'P@NT;!I1E---]RIJ<+:&18Q/RLC$Z35*O[I M..9/0! M'%W>W?>'7_[H#H:H=]OKHJO[;[W.W9^H-!M\_#6ZO;SO]V^[@XFQTF9O0 MA6$"_(B2QH$F]0R//#]\&R 3K@227]W?77?O!MUKF,S=X/[K[75G"&\&0_CG M6_=N.$#W-_#N_NKW+_=?K[M].K?0WX!'H>Z_O]\._\QUQN^^6^H,/$&LO\]O M#->V::H.4A]!J'DNL"RH,WOF@JOF[AA5*MSB^6 1E2P5$M#S<3\&L5G=(-'I_$1A#.Z,+FSW[Q'YK/G>Y&,UO-'IC MCT;!B^D#$1CW,"CN+R)/#C)>]B22RPD/N)Y/X6ZBPJ M6)8H)-2"8()38@*:5E@0_)\@>6B"0+KD*:S1-8=#(U4XQ,Y#X@J_0 M7=D 5VS!M2&I5P@$-J0EQ;:56ZLBR%8HLH5%;H)LA2+;2KV%H%VA:+><>#0G MW7Q[,S,2%M^\2AA0VI!'&/C[C=>9<8 M0=WCH^Y7V@%"4/;X*-L-ZIHRI^T^AOD:.<7;+-YFU$!G-Y:"#$DEM]K!TN4G MU50MC61Y_^_,"LY,"_LIHU*5_AJ$-2B^ M9"(A(-LB:?2=%\.M+/4W_$8;6"_50E&_\$TA,746[Q?-L>?E3U+,\J?;NYN5 MCM_\MDOCH>!T<^E=+DB+JJ(['&GI%:SSW;5; &P=8/*&]L Q +:A@VN&8"/- M7NMRFB7* G'L$1?5,C@>XM9;/68)M6:U+%>Y[EI]HE#;TCE-EC?TK(TCW7:W M3LL.?LM-UEI2*UL45;0!R'Q&DQD3ALW%LA?0HD?=JQ@%-\0<++QF]>GMM]Q!$HOB=WSF]QGKB+ MN(NXB[B+N,N)WH5M-#<-K;U?6^7D&GS5>)5)3]G53GF5-AUGC^AVL/'"_N^O M2-7_.W,]8O27D87]SKGJ"\(O4](VE[R](&FDX>PJ+M8JQDME8NAPX_/ 3JPJ MIU]S'GN%0M[EGJM;P=8JINQRP&OG, M):=*6EC_A"UXX?E>,MN8\2:/?/7)=#"=.<>'AWCU;(=,ON-YCC&:T3:?0[NG M.G#)G@[Z8M>9"T]=X'L;OJMYXON ^+7 NL#ZOEBOY8GU).%W 7(^?8ZL0J]* MS)WGE*0SFUA_UB".EQ"G[#YRE"><%0*M,?>T$Z)5H$SL6"2*=WRW' P+\@_6 MT0.H8 2H!4IB6"&DS1P@LO9*/GA6'7I D$"*&2>IU4J7/\LU141*1*2D<%39+/VK,:WK:Z#BD^I1 >UZ MSHS(X;[A_J ZX,;GR^Z+-E&M!WSC^T()U">$3 6\![#N^8]GI: M\&89$3DQ7)^.4UF-F?N:F@Q.-PC"'K?;RU'KNXL ><)6(1 :,[$V,4(%L@J1 MYL%IJ(.Q@UT,.R##D/JO3[:&- S) Z@T:V9!%9$-$-@I'E M-E'LP648=HAJ@EY$*_=("+]9\#=BYFPPC5(LTN_-< _8*=)T/#/<"OK8,ZL!\L>I?_J.8,\V0('\8)>5@@!V+^<*"S@#63AET' MQ"OR@OCV'9JRW-C=99L!P(5@SU^P,VDOEB2P(:2[L'/X8P MP#;QL.%PH -=?3Z.H3J0]ZO%\%]V6DF;@9'Q601,$-O<<-H0^^!4$8ZSBL)L ML8RJ/=#)A\AL;CA\*-TP$K/CKAKE1HMU[]2]1*< 71+0;3B%**7(#2NTM:IE MJW>J:O/W?E1F;%A#\M/2.FM+TB\1 MB[-]+5=J="2Z;A?!*L4[ 9['9+2],\]&\QN-WF!QF74U3'+($J2V;7M KC<3 M"R@64"S@,2V@9A.E ::A4F(W_W2/3UT:7S"\%0T*JP7_+UG?_JJ-HNLWA2+* M$<4Q]Z&$Y;#' [;DQ8;/ILFQ?(LEL2^UNHLXA<+U%(J 7!!*?$!#04 M61#\GR!YAK:7MG@JK-$UAT,C53C$SECC!S5;OO+S!1"-R :X8@NNO5+FA4#8 ME[1DD[UR:U4$V0I%MG##6I"M4&1;V:,5M"L4[98W'>>D@V51)+G],3L2%M^\ M2A8*VQTC;(#55$/<8B1NF@@KJ'B-U27,D0=EC MI*R?#Y@#;?LK91; M-F-T^6!*T4PK*P6X8\O1UF9L9R(2E6:MW)1W5[*G)A)/^\RSTN4=]I!!)1'G MK"2.$A-4B2/3%"GJI 5YT9E/3J.G$;#1XE@%GKI#"DPQP93, E,'.+L"7\>- M+X4%OI*XMK& M?UDEW*[)L(GW".LRD2"L7%HA30[;JQ%'7GR%FM'+IAXV3K. MR[.D H*>1367$(&G>9^XB[B+N(NXB[C+B=[EM./!JS:-W"(?K?37J[3I MV'I$GX/19QKJR##!3T#J_"B+,K*PA^PQ\M27\/1)\O:"))^&,ZJX6*L8+Y6) MH<.-SP/#46Z6+G^6+L[(E=$9F,+N%O%H+JFRQ1N*.A@IPO/N8\]PJ.O=,U5K M^#K%U.4.6(U\YE[C,8GO?,(6O/!BG4R]9QQ[DU>_^F0ZF,7A->"JW8_)\<"V M0\\*]CS'&,UH<]"AG>CD],5>M?#VN<=WU$E(F>'[@)BZP+K ^KY8;^>)]23Q M?0%R ?(]02['W$!/2:"SV6+(&O?;(M$+\"LBLYU[],?,X2KMT^7-+Q'%$'*=P5-FB&&+:_M= Q2?5H[+;]9P9 M$=%]P_U!U<.-SY7=%VVB6@_XQN?)+",Y9#O]"EC]!CC]"V'TSR PR(>=L8>= M/J9'M!ACD+%4F5@ZT2Q)3'YAZ7,/:26FI9\6I%,(W@AX"WC/X1W3E$\+WBSC M-0+7 M=S7,?,%DY-;*<;HF$/]>TE:'4!>-X!'S-Y.3'@!5!%F>369%;:0:8.?)T' /\&OKH"KL!XO>Y3^J.<,\ MF>R"$XK""4QJ" \(R>3%%5N-IGH[S7X[@CF*PAQ,RA^3!'2$KA#LP!\[Q*O0 MS"8.)#A$< A_'%)G4,,L+*)8 #_M')_EQMH#//6HQ"Q4=^UU?JL"O^GV;&1B M'J7!YM%M$P<;&HX>&%LH>K?N=6ZO%E6='8":C/LYLH'SAIZF[$-E16@)+E!< M4!1OZ%Z:;IB+6=_Q6EEI506L!:S78=U.#.M>_%>1_/'KVGA^W9M#PF%,_:? XQ#-]OJMU/O\Z??2^GI( MTB]1V @^H5"C'Y7H[=;N=_?]V]8#&U<>$AV8VD2'TB5Y'$)U_['S94,7DWDT MKM?YW*U\ZG<[OU>&RS?RL\GXXIC/X??K'PUO+_Z:E@_$%RB8=., MIIINN%-3?27)1B:85I61"1RU*BKH..9/0!*2 M *%/+G+%^H?S6.+:M9M(^S]_SVSOXQJ!_0_+/MW+R,6.,8:1#@FGD%J^*R)4 M0-=>G*GS!5J 8 40"Y;*FKER?$H"1;K[+-*[^_[PRQ_=P1#U;GM=='7_K=>Y M^Q-U[J[1X/NGP>WU;:=_VQW,3R'=.+K$8>DH*1*,$LV'>75_=]V]&W2O881W M@_NOM]>=(;P9#.&?;]V[X0#=W\"[^ZO?O]Q_O>[VZ8!A415);G^$WZ/NO[_? M#O\L4Y 9U@SKN<[HW7=+G8'3C_7W^8WAVC9-U4$J/>#=!=9&WL2>N:JENSM& ME8;*"CB;ZLU F-,8,Q&&@3Z>OW>GJC9_[XO/L6%101(M-_=31*M5S1(U;B\" MQ1[O>-RD6SX\-2*\&,UO-'IC6QU^5O..!^1Z,[& 8@'% A[3 F9TW'SFY\@O MA:08'A8O%!'3T<9,*1&6PQX/V%)^$SZ;UN#P+9;$ @NYGTCN;Z'.8C=YB4)" M+0@F."4FH/MS!<'_"9)G:'MIBZ?"&EUS.#12A4/LO'1^4+/E*S\1$-$=Q@!7 M;,$5F4LN! (KTI+$M\JM51%D*Q39PA0O0;9"D6TE<4G0KE"T6TZBF9-NOM.9 M&0F+;UZE"YD"FE=^J8\0!\=(VP[=Y!>T/4;:!N4B@KC'2-RP>$)0]QBI2_HS M"LH>(V7]_/8<:+N/8;Y&3O$VB[>\-)@(<]65UB^;.2>S9A/76%ON-2$7HM<$ MA]V)&]'E;;)2J*-X&?8D<'EJ]H MI@$BH@(NF3USP*FN7+EN/WA3F7B/9H74C-^"8*D\*4\5-;"1#MJBS2=L<(<] M9% YQSFCYA8@$.>Y\DB5+1*S&='A5ZE(+L*)X:4PM,,<%4 MBP6F#G"EBX\O-AA@#X;,=+%$'2N\-EB1><"R4;+?VJF6YU=J)%[XEQ%&( MG&;4&<[[BQPV_JT0/\41/\VHD]/> N<() DOV[]Y^6Z4H^FQE7.6#GPY],X$ MNKT_Y[=23]Q%W$7<1=Q%W.5$[\+_R=-;.F\R5>2K1JS<(A^MM,VKM.DX>T3% M@ZUG&NK(,,'61^K\'*HRLK!'.G]ZZDMX=C5Y>T%R2L/955RL58R7RL30X<;G M@;W8JI4N?Y8NSLB5T8F5PD\306 NJ;+%"8HZ"#'">^YCSW"H^]PS56OX.L74 M;0Y8C7SF7N,QB<-\PA:\\'QOF6WP>)-GOOID.IC%R7/@H=V/A^I+SW;(Y#N> MYQBC&>WY.;1[J@.7[.FH+[:?N?#8!;ZWX3OJ&,/,\'U (%M@76!]7ZPW\L1Z MDCB\ #F?/D=F(=B86] I26GG!6"+3&W-Q.B%:!,K%Q MD2C>\=UR,"S(/UA'9#<# 6J!DAA6"&DS!XBLO9(/GE5'I_@EE'*!HH2*1/@A MU44::$4T-NUG-,'Z ZF.6XJ3C'QPQ8R3M!NERY])(J0(E(A 2<&HLEGXMV(: MU]= Q2?5H_+9]9P9$<-]P_U!5<"-SY;=%VVB6@_XQF?*+$,E9)OZ"GC]!EC] M"^'TSV"TDP\[8P\[?4RS?HTQ"%FJ,"R=:(\D-C4?IK2 ]#9(Q[2^TX)T"M$1 M 6\![SF\8YKK:<&;94#DQ'!]9#[EMIJ\5LPDV-2$<+I!$/; C>>8*K4Z<\_T M_0G#M!TSRS8Q3 6\WAE 3&(-FG^&G$L<'T3;*@6O2;$J (62'4U)5L]*N.+9\":D M997?II_SVM64>9I)%XG]&Q&32PDIL7X]=?!2&M\RDTT221L1O_R<[];'/G@L#SD?>W 9[OU'G4]61,U])(3? M(JACEE P]9\7Q7#NT-[@-%&),5H7\'T,CW<-#P^P\V1HV-<(?:S9#Q:]"U4. M/%D'AW%"'B;#@9@_'.@L8,VDC_8!_GQ>$-_>UK)<:^X^78T!P(5@SU^P,^GZ MG22\(*2[L'/X8PP#;Q$'5F;UI)&:Q.AVXKS7*U M(:7-^]5B^"\[K:3-P,CXB$ VB(TZ!#B]Y [.3YF.PFRQC*H]T,F)R(PZ$SB; MM! 6IU WRHT6Z[Y@>XE. ;HDH(LZ'#CEQ! &:&M5RU)[]Q' 0E$755%OV_I7 MH@[]S3Z=Y$ 8UU<.M%:DW68G2X1$0SW34ZZ%O$XBKQN;L9^)Z*U*K7(C_?C( M6]'KQT?.O)&MOY)WI)WI)?H) :YTX\E_%8G>7]>>_NO>^ V',?6?$CX.7=!! M!'2EWJ:&33.8ROR].U6U^7L_*C,VK"'Y:6F=M27IEXC%V;Z6*]4F$EVWBV"5 M=D:3#HKD\&.&P31&\QN-WF!QF74U3 JY$M2B;'M KC<3"R@64"S@,2V@9A.E M ::A4F(W_ZCH#3M[;VE\P?!6-"BL%OR_9'W[JS:*;J(D%%&.*(ZY#R4LAST> ML"4O-GPV38[E6RR)!19R/Y'1ZB4)"+0@F."4FH*'(@N#_!,DSM+VT MQ5-AC:XY'!JIPB%VQAH_J-GRE9\O@&A$-L 56W#ME3(O!,*^I"6;[)5;JR+( M5BBRA1O6@FR%(MO*'JV@7:%HM[SI."<=+(LBR>V/V9&P^.95NI IH'GE)_T* M<7",M.T\VC/+$[0]1MH&J:F"N,=(W# 55%#W&*E+.A0+RAXC9?U\P!QHNX]A MOD9.\3:+M[ST]D9!AJ32^F4SYV160WJ-M>424IF6D$J)X0EPK,>+R+-VLM4C,'(T,DO?._P.^PA@THB MSEDI-Q=>G.G-(U6VR+2HHU_D17<^.8V^1L!&B_,->>H0*3#%!%-1![KLC:D# MG%V!K^/&5]2)+GOC*XEK&PM8VZ-U9:6^NQV10%C."*LSD6!L'%HAS8X;:U'' MGKS%VI$+)EZVC_/R+*F H.=1S25$X&F>\UOB)^XB[B+N(NXB[G*B=SGM>/"J M32.WR$XP\]24\@9*\O2 ) MJ.&,*B[6*L9+96+H<./SP'!LM$N7/TL79^3*Z"Q,87>+>#275-GB#44=CA3A M>?>Q9SC4]>Z9JC5\G6+J<@>L1CYSK_&8Q'<^80M>>+ZGS3:.O['0_6E9SMD\AW/)]23Q?0%R ?)]01YS STE@/Z3DMQAB$+-4FEDY42Q*;7YCZ_$,ZIJF?%J13B-X( M> MXS^$=TY9/"]XL S8"UP+78)-4?S-/>!C9B\G M!KP JJB3C!V':6\*P]RZ[HRT22)A$LUO=.\2=PW I6,G>$TR8@%$%!)H2D)Y M*Y&69\.;D+I:OY>@B)SL)RA:J1?_13=8(I<2ZF/]>N8 Z7H@B&S=[[M$__ZD MNEB_6B)]LA9,C7I9KF9Z7++05TE@R*1>,$GWI;<@_(]JSO .#.[5Q42@CP?T M;6M9TF)23GAH;Z;4H;CB1$UH7"JC B>5H,C0=()YQ91[)[W M>4B*V(/+,!LEJC5^$67_D1!^BR*)6;G$-(JQR&MTA_8&%Y1*C-&Z NIC>+QK M>'B G2=#P[[&ZF/-?K#H7:CRXLG@$9Q0$$YHQZQQ2BV@DA=7;&_>F?)9 ((] MBL(>,3,CV4=@A+80[, ?.S#9A&04$A(<(CB$/PZ)MS_*)[(+9Q.==N[.\N%E M SSUED\OD^CI97+!(DQ5X#C=GHU,S*,\V#RZ;0*A%G$005K).LQ.0VM*Y7JJ M^\[KW%XMJD([ #49GY?!!LY1A_NEE_3#X,BUMD"Q0/$ZBJ,.#LPF=XC%N6ZU MLM)*,V-:P+J@L(XZKC#E)"$&>*XWRXVJP/.)XGE;PD<[ZC3$[/..F)Y0UY0R MS0:)!/_))GD>)0=M8Z"H(Q[CITDQ. :O)96K$F\VN!\W.O-&MOY*WI&.0I?H M)P3(U8TG_U4D?_RZ-IY?]^:0"G'CQ*=>!C0 [\Y,%135A4QZ_;FF 7$P3I)%^)MMBA$5':6F=L6*JE M&7"Y&XIB]\/VF260+TMS"J:T6$\4_FE%K2V0$M%"Q=]*O<^??B^M8TV2?HGB MN^ 3RL;THQ*]W=K][KY_F]\P:ME7'A)-ODW4+EV2QR'4\!\[AR2ZF,PCG;W. MYV[E4[_;^;W2N1EV^^=(-9_55S<4&P03%EX;Q@3[U]7".P_V'9IWL9N=@QQH0UB10B3'=%!#;PTL69 M.E^@!0A6 +$05UD++O(X.AS_\SAC8,S\1/.-+N_N^\,O?W0'0]2[[771U?VW M7N?N3]2YNT:#[Y\&M]>WG?YM=W!Q-KK,3>C", %^5"VK[H1T(BLAS_#("!8? M!.B$JX'L5_=WU]V[0?<:)G0WN/]Z>]T9PIO!$/[YUKT;#M#]#;KJ#+Z@FZ_W M?^0[NW??+76F&Z 1WN!I;-SIVSS'M@6218QPF#\C=8O M&VWXP^\N1]P<5!=IS?=;J;%5.Q_P\*3;QO-1-W]AZG_M%I%$2H*21-_@UQ,7 M=0$:>L2&H2]$1M%=#0]8L,B-W4TDC+FC>SPX5;C%:0XP!>=4X0*&@OPYD5_F M@OP953<=(*O2R3<)S:FKL&.NB\:._8CL*794CX0+2/CF"5P?[,8XZY 9NQ3D MYM7B#KVX-\]VT=EFG(7V_^>;__VS5KF^^0X7/U8<_:'B36AG)=U^Q!7--$!D M5ASLVC-'PV[ERG7[P9O*Q'LT*R0&<@OF7.5)>:JHP0YUT>3._(]?/'F'O>!4 MU<+M*6S>*R!H9:O5W^X\;-L0J$E1!0W*(C]5R>8$8Z5:EELM47%_$(YV;3H= M"*WM.(I7"2!.PDYH)X;FZE*%^8H<7DH11YZ-' S$T P3TX9[OM@DGY-W]/B# MJ6,_&<3O'[VB=S.RE6-8[S?9=9M6;S?D=UVQ15FS?$PJ \DHV9QSY2S[6VW7 M> J8,_QV!JH5;@9B9&+5Q4A])$>V_$._/C(_@:W47<'C-GD;U?@LKMZVGJ(EE,I5970\7S(>!:-TU( 4;M6W /XCLV>'V/' MH6ZA[SNJ+U@(\-@"?$L2>TUJ,9#@(7W\>,E0?>GZ+>2"@S,/2TK?77O!B"[O MA0C?*IZVPBA>S[(<8=1*,\W[J-M<%D-')&IG*=3%?O:^'-60;5]MP?!0!*5< M:^XVTH2=SX6=+\=K5Y8E>%+M&2,L_/C2FU9!T@.9A)QF8=;+43N@^PIJ2I0[ MVR)[=+Y-%AADR6(R4EU8\OP+:18MPI@"9ZD\.=OB9%YVTZ_HN8DN,JSE+7$: MUZ*;FZ:AC@Q3;(^+[?&8RG;HJ#JFT+$)HY+\#&P\D1(?$51CHWVC=BWWU;X@ M.!VR2WF-_7]OK8ZF 3(]MV/Y72/Z"[HE,X#E6,IZ60 M;5ENY7A>H8B++0E[4J]-*!!8#,+'8A8+B]JV/%S(A_3ZP_ F5S,7@(H=NHEY M*$O6JR+KB2=YO]6 B-J5.US@,\769;5>ENJ[??H3VU41133Q==.M]033MAU# M.!Z,'(^H;=C#==(2G9(U493+;26S?1KA:"17/$J\$Y2T*BQ++MPP>$"_,X G"_6%@(7D2YE+^3KD9 M(X5'.#!:"L4:ZFVKP\TYP X7ML*Q )@I]HJKZ2D*?0+BRT2]3N M,;N-CYY/JOU9O.879TE"?Q1$?T05E++;\$B,HRK1$$TEXZ!7>GL;0D-LUQ#. M#.M+?LA2ID6AU$6"YFI9:)4]A[53^:2VZTY@\'5!^]#@O ^S<9:^2Q9)EU-- MC4O87) ?=<7F8,XLM%KLD6X-PJ6VW9\RD!=^E%*6ZIGF5D>"O A!O"-)+5.: MT[ OVIXM?80FY4^3LDAM "B03IV] B?7K^[I+1O+FLZS5G%O M7N2&Q063#&LMA7LS1YNH9./;'A/S&32.]TJ#3_COF3$EW32/3$;DE"1595'$ MWE-?:7_3H=W1@#P.[@44ZYE ;W"LNR'1DF9,-=N[>\,55E4=6> M,II:95G)N'12F)69*@\:QHLT+ NE,XXHO+)59K"HS@]EQHWM@+30,-;=&_ N M*!)N0R <&F1)MSQP9X2%8\5TA,&5;8AET18@ \0N%3Q)M0S/=99CG^M\ZL[. M^D9!L#<@=%=1=-XAO>2S0.ZR M^FJ66TJF9\>([0%>M@?\PTK$]@!7D6IQ<[$]D&N$YY/M./8S2 47@5HC";=D MGT!SL&Z(?0$6M0M5%DDORW[M5Z"1>S^^HB1*M@N@R&59RJP!.N_Y+!P8HML1 MQ"(!A2&":J7+6KFI[/9_"E*M4&P!WL?3(/XE!'A*&[LLNE\LR'0_9B#!JXVR M%.,<&;&1F_M&;HU%ZPNVZ%'*]4;&'/LY@9O6WKNV[$^T5E.AYY0O0? M9KO76'2U6+:\;EUW1LZ)!"ZVK8D&81'V H\JXK^L#_P]08Q,4LJ-[!&L!CWXJE@I M,MQ&CFHL6D/)EJRX.U2Z"7F&RGYPEL.2RW!"% M9L?LE/B%9E$IBH52)B>2K%]CL2.^',Y>*N&A2+@)@< J[SG=O7*1K5^8;/TZ MB^WXU*&[7&RB9)MI)1+V\]6'09?8-X5L0C<60S?66>0,;"@'8JX69:7<5$0M MME"-%+DLDA0R0VZUK,3H9",4X]$XBD&%MW]L/=&(5#V21E;T!8E /@&>+'&B M$Y/QZCJ%Y6"=?="Q]]8.E*WO8,6S];<-I[?]G[TN; M$\?.A;_?7Z%R,C?=5=C#YJU[TE6TEQ[?]-A^;4]2^30EI(/1M)"(%MODU[_/ M\YQSM( 0 @.2X*3N3=H@=)9GW^T0Z?#JS2!4>- #=C48,&.UB/?I]H)A*E_B MG9[+XW7D2U0?)Q/=1KJ-T\YB_-PSSV>]+3U9FITEN1I:G\%S#IIYV*Z1L*U6 MXFR'K+P\1C25V&%Q[M-J'V+?OHUQGXC/7%K^V/5U^QL0QQA^ 7_C=BPG9*;H M*>TZ*X;W&^<% OR;M BK+B9WT"S,0_63#%1O[@2J=TX+S8]6[;PJ(AL93LS* ME8H58A(+B;$#Q&BZ8=]FT]3XUSR6L4G^,&]+&7PJGV><9O",S1N,6^$9C=/F M)E,1IEE&IP#+J"3^KP?;MRP@Y^\R#]O/,I7!W<#V5H%6K=O%]LT9CRDIMX@> MWO]$3M.C=2ZSD8WLJY9R&+ACP3K$!Q)U.:+>N@[I+8FVHZ"TJ-9K%>P"IEY> MO]9K]?;\3>4\RD' V4-9M+$;%LR2ELG).H:T7.AC*]#MJ[#?++C7+7.U0>"M3388KZ,EL2Q^E=GHX60=8ULVBE^G MQUO.I,]C_[O9HZ<,(0)(YUNF,/8P.T+'B3\^'1&=9OW0Q[Y12IBL4YB\9]Z* M\SI^^R3,A3OO7O<"\4 M<2D;0KB=[RU4;_GP@"AZZ X.0Y]I($49UNOV QV$ :65,Y&Q@C!-S%'G#2%L M2^];]OQ4\QJ3<:ER8QVS3@BP=X/??=9#J-X)F-XX,@<)"U(D/*G\_[N YF2U MO( 2U<:=P+A2!<>^*1?W&J1(NJF0DB&;D2%9S6$V(4.2 M#63>1\]GY\JS56,1DM6.9!,B9(T(=[RX0>Z&QL_#J9QJMG\*8O3BT^(@.FC WK=U/MN?_\M>F'6 MSE*+9)]PWH4OBDZ?:K M/O%ER@Q>F\.FMC%D_$QM3.,0RM!?FO2?+#U)?'6@_9QU ;]>/F1> -YD:EUQ M?:F?#P>'GOLJOTE]]71W\=UR?FCPB,%L.QMJIN6/;1WNSG+0:WS8MUWC1QI% M:!_1"MHONC;TD.W])7"-@Q1BOHIKL8 S6HAI'%SXQ/2'$5)./3L/M#D;J\=??NY_*8WS MP#8!P5 <(T=$AGB@!59 .X@^$/@'3P-@;^^>KAZUISLXS^WEU>WCU27^Z_'N M^\UE[PG^N+ZY[=U>W/2^:X]/\,%O5[=/Y1[QP^^.'IH61"(4_;>.>>^!B'4"^O-N M<"UEZF,D4C%ET';]T&-/L.Q79'8'7/EKMSO==O/L0&.@@(V1%7LADP*+E!HA M$/Y^@*%U8*@BIR_ZVQ_KAOQ[>9+F7)F8NEXP?&5^H-U;8Z9= M<#U7^P!*CPUDR_AW#49][=('+\/;+G=&_99LIB._29@5;;*S -P*6D MR79S>WWP)7AU9VPVT&#X.QO:E0. 8,R#.W@,&+,))9%O<6!\D)?[>'\?7RQ> M"CQGP(UI-^F;PZ^2[YSXP!']^#WB9]&[CK2G(?X<&AQ0:)> O>@H\O&>D_F-<@U+F@9Z[>F!$B5FEW@X%EX)?L M1;=#@C#\GNX6W6WZFM#$%:'_PEU=&H@^A!2(JP\V W TN 6L.&Q(*;KSWSA!OP/+"C^ MC3_R S@YWU24./A9[!7>C.?#S3; ^/(.7SU]/$Z^WIC *4QQ(/["'($%YAY) M+(EH\M+H-E3@^FKT?YT+:+;@14@G@L.Y8\9ZA\ 3-S-: RO1KL>2!H9 MUS.*/>"A8Y<'I7GKX1%C@?;,QUP).."KXAN99HH.=FA+0V+,N]+X6 09XJL/ M^]B?-+IG=P^?_/[8:VC?F .TR%E/@LDT MM'N&".G^0$QGG_FAY\@-O"T?V4K\$3"2(8@!P!(O(.0#_/HGT+@;OB#@_Z7[ M0[B$P'7XBX>ZG\?G3Y=N2)7D\SQK0##YWR),QA:OH-;9Z4X^S8+..>+TK=EF MP9PQC)*K:(-H&4TW/-?WTZ2VN]R*8X3TBETDO6*1!J_%*CSYU]@;2B31,>YW M!XTI_HBO78)ZHGL^88Q%I4.,2P$#\$IT\9Z6'],*C.8" FJO0\L8IIYE;\P# M&<-( :>:VMZ]+X,#YZ&IS@"40S8;((CWE\.1!R"P@R%GRH)9X*WG_ +]] W^ QVU34"6T)9> MV.F4061SH!R]6)[K(-@ A%=2R#3X_7S_?I'0E3A;C'2E-._UV(M%B!F@$$3! MA6R^D,")M"TA$#AN F' ]5DH'8;([5\3ZE2L,((BF&;-($KH^KF"QJ,./C!Y MDVX<=X<>:L^!O0%(]6>.L6F-$9_RV!CX$"T6?0>7%J,[B?,1UZ^HB2.N#+3I MI]4V?)_0Q%A""=,>&0-.%S"!B#F&Y+& :*3[BNNZB3<@84("SF2!;MFP(9"$ MAF>-.9E%GGAY=T=:+T:1!ICR'@9K-'W$Z73@N2.Z^;%GP4LG3/17X#O!;@&KA5_">^D5*=X0#TSJ2*O;MD/Q,S":4SC*.C-5I*%L1W M#M*6#P/1OS+1!,2O\%NOE[# $.WD.3(IA"M V<3#94D.!6B7S&"HH4CHH5]E_N,=R0(7 M,$K^D(4&E <,V8Q17H)F,2 $]L9W.&,)]AP'K 'M@=@)SF2ZAH,O)OHF?T/K M\S_X-O&&\?U$,PPP)5>7W^B-?_Q"\*44QF#-I>L& M&'C$4([P;?K"&PVH+30@21;Y <<4$2'1>":Q;B*B-,HG*"^.:&)F)5 =O+Z! M55TXN3.0O,X+D>:X ?@7[\J@)-8[+(_@0 MY[#,(;M$)!5D!/W:'5N.D/JQT&M$+XZXTC(\2"J9<-]@=B/7XY\[@'J^KWL3 M[0/7)'4N.74!'7$9* 0H>*RC:/T8(?A M[R$*BENBDNIZ.+DH7FKD 092D.K M^#'\H1O:)H 4UM EOOP9.MS.(A3@=+U0/R<;$#DGM@EG"'_WF='< WI+?/$Q M(FW*CXG_3R*%LKDP\5(NUEB57ZN'=4:D=. MS^C6)9;F7$\P])A0;!=X7!Q+:L C^&;H%^#KCRBPEV#LS4*,O2VVZ^4>#+@M M?TY2N$6,UK30R?C"IDDU&.I![EE&^D2C%_;)L&4&\6=QP:C\>Z@QH.LADGH( MBJV+O78A+-\ ^DT%&'].Q1"W$G3\*JK*@)OTT3('7K,HE'BN0HGK#B6V*QM* ME/BA)1!D;P.'=TXN;[HS K[/\0W0)I3Q(D0/INVW\1JQX07PQX\WWS,,,$E"6[@;_=%'\ MDB>1^0%_RDL4JQVV"[JDFZBWS-9&_K2,(TPXP#Z*,()LX(#&-8_/_37O?HLE M=*_IJG,FNCVYXA;E2LR_9<'=X$*6"B;O]Z1H.N[QP9?SYM%LPW[A\K=L6]0M M4_L<;AA8?LI.H]"+B)A)ER#=-!@84M$?N+;-0T33V,U]S@)$/-8NPV]10(R' MU#!X-M#[GL6#HR)&)!W5I+:8[(79[M@74=9$?&].H(ZEL$>&G\ NTOKZ-BT MBYL#*6\J*NAC]*"ZH9]T2U($S/5^4.!0@XVA9[*8[@G26?>UN;$6[I"D>_\5 M%J5@TR7(^ZH_4<^-ARM^^5 QQB;X08&:F?]]^NG[(S1S-29S,S1*>2 M1Z>_0TU$6YR@NVQ.KEPM#WYG''9R7XFDS7D9G&7G]+XWJ7=IP(CTWFB5Y3-Y M:Y[*6P@MB ^G:"A)5)+>9I[9ICL\P?. M4@9B%3L-G'7+:X,(IA\5>/ES;=+WGV_S/??@%/+]_4W,A.EL8Y$Y:U2YNKD\ MS$U7:_':Y[D-R7>MG+G$ZM+C3FOCWH4,DS?#??G #/?9P1;0J3L+D+BP6M\*G,I\.IL=7Q>:WR,UX!X3PRR3TA,<7Z1ID4:@6,#[ M6$"W[BP@I04(/+GB: +/WR&.\.]6,Q/.Z\L?]D@GN,]L[:]XP_MXP^8S$3;, M&R1:W-N 9<)I0'M9KK-=%15K>!]KR!I6NC'6 M0+6QZ^0+Z>ZI4\WR5E,4CL\:G6:KMMQACW2%&T ]Y]G"4*?B!>O@!5E#2&NE M)L08P1\FH^%IJ#O?7-=\M:AWW9(-F9X8Z8 M%NAOE?TVNU&JSE;.5!K_K)X"C5G$FKX_("&S=9GIE/E6<)6LQW7'K#(Y >((HE/5IS]UCS9I$M!^2@W%-.L#VO8 M+Q="=ZLYE1N.C+Z7NVP\**H\EEOP6&84\"J64R664_LZ^JY)1@';C>.6YMTY2B&IQC>FD(U7(G,;B,S M-W93(5ZXD.=T@.>8;H@)A5-,I\PV ,5WF<<:LYKE2=98DI9YD42@)YQ@PC-K M6BMQTO-FH]W>9-WO-"?M%.:DF;TZ,YK/[EP#3^Q*%>?HTAR=J93=Q1VF7IF' M+9"E0:+QYH(N=3>T/(W!LB/>B#YJ8N6+KV?:&3;B]N/LS:#!(ME-L7 ]S^3] MK9Z%?$^-]Z#^ZV(TVM3T!5?,:-=,WB,05QLQ'1O\\J$LU'E1T_MN&& #0='I MW+ \(QQA*WJ#B5[/[ U'XYF)V4"S!TI/C!&[SEHNT5 ^L;&=;+O-FV%R0(D9 M!'F=1(^;Q]F=1$^WU4E4JI#W AM[T6R"7@RVE5J(MHYFNZ-,=Q U/')$PS5) M5"> SR4-/E%3C&, (@[L:+( MM9$U#+TL07WP(<'9&"C;$HNNXLF\?I5]Z.> MNP7ZRVT(DW:\$7^!?H'QG,'$D(@\[CW-D$.?#4+T.KXPO];=^:3+ZQH;4[+O M.-IFNM+@Z^0W_4_7N\ ^>MF]^EJ[VJMOS4;.R=G&<[6F7@[V&]RO\_>#]N+V MM-OU=J1VO1'F( XWTSN__^4JHN/?.1U_YS9>7WQO#5CTP9J3]C)]%EO+Y%/8 M40 [KE'9_B&\6J5D#&$K'LPXU#DVK\CYO"LGWB*B4#,F[5O&U@ MKL(="I!XR9[JRFRDRKE?''[EN,PO< K$B'I=BC&%0VM<]22O"H0"(T?V7.-M MO8[K/PK:=?0^"=2')$RECR=M0!8P&_]%TQ&8V0.:T9\9U[2_@VI]D'+>GZ8\ M/H<^,SZ9H8>2$8?P'#6GG>"Y,O8FC#/&V=,R[ES)N'KB<)98.VY62ZPMP.E2!-MYXZ3&-6CM!JMY30JBS.9@JM=K6$UA0.EV-]-3HU%E([:WQ]A?/:[K,24K46 M4@**FQ92G1PAU3PZV9R,6J7VH(IXO%]5-,?=:HG!*2HI10QN5@A6JT:GSI(Q MI_AY)GE1"<^J"<_-B<#C?.=B>WLRL$C52!71<:^KIX[+KI[:C&#;1F]S536U M=&[^MZ@*PW-]I@T\=S13_(/E1PX)LA%>:H8&U M&0.&13]^@X)UL%/@EHB <,AVLW7^V0@3X*LU_%]7@@>UK M ( ([(W.*&OH3.M%EL7=?[M^>LC-J4_4R M]=/5PR=-MU_UB2]-)/2T."QU/Y^U(=G7G[0VJNW"@?27)OTGR[G8<1.69N@Z-+0_,!#P:HFE+) M*%#A!?)\2E;0ET(+8J8I&DH2E:2WF6?6I7JG"T0L+!#YW=%#TT(^<^^YVC4^ MIUU:OF&[6#HN1@-8^U*/'4:W ?8;%Y.B.GL"GP#K1R[,:[03')HW/(BJM:7Q MHH-I-]L] AZ2Q?=#W=1<0U@X\%6>D/L_W0EA%\5$7(OS*[$?]+;![BVT(-V9 M_7RPDA5"-2P7S]"M )4)DV_B[B#9M>'MVM:&JX+*]]7A85LM5$JUW[B:>04? MH*89E\BI4L?W7_$M4&:)-ZRJD_>Y5'[*+B2[KP^;Z)-Y5XGR>848"C%4Y;2J MG*Y&$L?!EUL6:+YN5W\B1IU*38]/*^)&3[S8ER;2 WMA3KC:-*Q6\[C1Z1Z7 MEZ6L4/.]J)E=!;W]^,6Z4;-]UFDTFR6BIDJ@GR]A^)#XBHN8*J4!9I)N5OY" M5:0*0/F&@/S=]5<;2-)N=$]+'*NF,')YC#S)KCVNAC!Y/T:VVHUVM_1)?WN; MG/>$^5U9\9E4*&9@.;IC6+J-7;IUS*&+HO*N8T\TV?]8I-%AB,2R[9"'Y$7" MA^G"WO-2%-R QU< KH8EVK?P_O#R9XE0HL0#.)_' M!C8S^+TEFM^;; QGL&+,A4V"EOE?_@%ULI]&.6,(-$6=[?UP)!>-&_BGNM7# MPG!^ $? 4\689,=S)@H@PM(B>!%6F4B;:-ZN ?]V)39@ZF[4=AU)'SV$S ^B M3)PX9#L#/Y/U@WC$@(6)/X[#N!",AAODD#+=C!L&.&@ _8 :R"HC-VEJ@Q!UHD?>2]QN"ML*QF/H W[-G%\\V MA4; .0+70_-'(OBBY*4-")"TX,J2F9C7\H4"P/Q9_IQ,WGA_I/K& 8,6+F(2 M)UADAZ4[F6'IY:/2RU\LUUXH7)U41_0P<.4'I%;R3^8%I*>,73 )Q8N/U^OM MG_'MYV3]R;D"<37?3<[1[#< M8*$( N7]U-=IG+46$]]&05$=1E[Y0/7QNWGWVM&GV9JMM*X+[]Y9?1R[__A# M9M)\7L6ZU\*Z3][-NB54L%W/&FBOU6Z<=&<;02C>74W>??INWKUN_&DVFN>+ M\:>JS'MG%>_'D-(0ZL6V5W#>;H.[+[FMA4+@[-U"0$+WG?1[C)FF[0*-^+8? MD:B.3-BO-LPGY^^6,&M"SBZ. 3CKJ@[(=1 XZ5L['R<;("<2/&KFTU]3K]E- MTOB\+2T;(SAMOELH ;VOI$*>MAK'IYNT_U4SY!UHAGS:>K=@6A5!C\\;)\>S MS3-5M^)*Y)7*OL6+TDJ/55KINM-*NY5-*Y5(L;B4><]O$KW WCCV/4X]?CL&;/=>6:],=2=9^;+OIZ& M[GE4%\)K2#"Q-=J"K$>J0T?4-G_HE7E4*,$3<_WZIN5*]AEGYDJ:R6:?)[N: M?UN*I7;6K9*E)B'?T&:2$S6>E5@SPZW"J3.G62&@0GJLA-)J.FRG<7+657[Z MZA/C;TQ')99*#7FM6:*@3/MPZP:,7VS[8]7I]J.8V41&ZJA^VK?RP=64HL72?K4G1N&9;;3:RUVZOE8.%[U,7CAO'S4VJ M"\KE]0Z;[;OK/#\Q;W3)^D&VM7:JG%WK=G8=5];9)8IG-42'O75XW>2WV^B% MS_ K$G<-C0"9'%9 Q7K4V")PL4W&#?YMC;3KD'>KZ#U[C&OD'WA/#./SS76/ M_]/\_)%[S_Z%M*-=PZ9<+=+=M&OJR<,:_%YN'.,H?L>_KJ^NXY?HLM2;.DT\ MPY+/V%+'$GL9B+WHY@N^T-?",7:7R!O0=#8GJ'<&MN8?B"TWC@_L ?=)*J@X MMCAU=&AKH!?1/],OO-8-UB.7WTJSEUJ=H]D"H?3P)7>0:,HR%DJOZ-.A.8!; M'J-^.0;#4E1L? *W.;;&3!N1-A1@AP_\!BDW CYH!=Y(LUW FKM@3V5L-D, M3L'T>"L8W3! D4(@1&7Z',B)+C'<%PI( FOHGA\W6Q$-@)!]@SYFA(AV=_!J M!YFBQ!;M 2$_MD-?RP-O*]OB.(NEQZJ0_N.?2'W +' C] NQUVBK?*?P8WSB MT1UXT3'E_U,7XS@SA@G;!\S/FJ^Y;_./:8;MXYR7W$LT8/VP51"8V7 MH]-93/JI =A!$TQ][EBV)Z"23*)!4P!B$)MF!#8^P>K9TZFICN;C95C!) :K M\';'" FXA.1]I/7HA>4-O:-N7(G..WW=)A1[U?U\YI%39K)^YI%4:59B& OY M14-['5K&$-MCD0O:&EC4"@K :0@!:@.J63;"E;V MM$L,,\LV%,^4H;AN0_&DLH8BHH5&>*$EH@S[VWCK.F[]2//&!]3=4.=#[L9 M>RS91[*/#2H-!G: B=J=CWQ33$,/-!#U8]VB+V@^Z@!;8L8*14,JB/!6D/]C M,"G@%R,7#0*TYP+]F;DA=N/T?K @2HR(WIU^$:Q*E E*:W(8:Y\%K]BR4+QD MK".>P5JDLW*S8Y0(+F'/V-T>I X$-72!*'G_U>?0,DGS!7T=((>XX^6(R M+8M-".Y[KFZ"<'UAMB\G[O*_<,SN)^T[_EMYO@);?,(Y"S,HJ%.EZ&J:0#V+^1\_%UR^/;N\B\HTWJLSM1.Z:GJBCZ4" MR&T:&K/H<1,,-", -*<>G=%?<%UN^#P$R>AY+@@I/4YABE\BR0!;(<9\[M:AP#2Y +7G."7F+<%CS! M1#ZW(U00\\YYD#= KI^<)I#G MNYJ$MN8 =.=$]?JK0J\_*H&J1$\_!?\RX)]0.*K1VE&A0]L8Y%MK:$@486#*$A4 MY2 *$N\X2)5K8,H3MUDIZ]=3CK5/M96V&WMY3N/YJF^]OB]7EZXN?3]>OMU+ M5X;H8LG8.B/1>,D&C(:B&NX(QS:*8:"V[M2NC*NZ5=HGS:QN0X7*KB1\+A+@ MN0?H\ C82N67G4:WM*'DJ,KB9&\VI(WH&'G\Z6X'N)_DDG#4N)BX#\ZP7RJZ-B\$>+/]'7! &L* "08!$,9J5+WR' MM#@[/:^"MJQPK#".Y8Q%607'MJ!@%T/3"@H3A9\KX&?6V)62\+.@"J[8Z!ZB M:4ZOH&VC:4$-O;9L5'FL"^ODUZ['X$Y$E;TQ0="^ZAXUY0@0<%57T?>JC^%) M,VL"3"$N(@!]]<9;0%]S,&]-7K4:K7:G8ET*%3J7CQC-K(5C:B+.;LO@UQV6BB"9NJ M'545=55XN;IT=>G[\7)5.UJ^,-S13)R=-_$^Y-EX*\\"C$-&B?ZK*T92V\VM MIH5FVFT;:Y)?^9&Z.T\ >?B?EYFVO82< B0TQ[^A^7"_\*_J.3H4KE>-V;?S M\M:VEW2CY(62%Y6FH3P2RLMXVUZ6SB[*B\UY()5C7&VD+,?XCOH"$@V-+YF1 M[&?)$W2_5NK< !%"2J<@ %B:H<0/4SKIJT5?V,:Q T4B]7EZXN M?8]>KF+259.,JI_Q>EVF^:[0K#*/UF&K?=AI;;V;9[?109^#:BU45V3*JJH0 MR%2[WL;47_NL4XG^V@H?5\/'K-J'->!C6=V.N^>*.]88&[.:!:X!&U7/8^5; MVM&LSKWJ.M+.RN*4_*'2_=5.*]8X1.%RZ;B7KBY]CUY>J\QWE;=3I[R=G3?Z\AKT M='+R_+;57>?D9*N9HJJWSGZA?Q[VYV6QJ5YLRK]7-US/9?5Y:6[UZ<6FI(6B MH'*D13]O4WO[ MV]+D)[?H1]8@TEZW:3R(>[[E!]@!RP#@:KH# MT ($\G1;&P,N6X8]T<#F,AE"T35^T!-]%_YK% 8AI@:!I>HWM!=$0%,+?0"3 MAC0$?\!^?K! &\,=P^DL6-1 9!.?PX\,&[9A#2QX5OXYX!Y\ /-@%NT OZ,_*'FZ0%;\13M0J@G]1VJ*.Y_FJP[L,ICT.&3Q\ MM !/ZTT.@X5^!<+N".@(7\U_UMN( MB.CX]\@UF>UKKJ>9 MEF^XH8,73>0UL-U76$.W)SZ\)!@"-@'L7&_LTEINWV?>"S*JB'8 +IO)JZ#O"4C]U-$Y ((=]8"$F M@@B)4-P!;L]AP"1\W0-VXVH>&]@,* Q7''MNGTNG";(IX&EZ: =:?T+?\NOU MX)[P:T^@^FBL.["M-0!]#!\R1U ^O!Q._^RYOI^X"/](6^BQFK-&'A'?>VRL M6Z;&WI#P!7!=3MGPKX7G2@:7,A?H&8:'2)Q\3C$+R2P0 D+4@1IPO\#\> /_*'K!8> ;B/0^8+0HU_#%SZB M@//\N?P0_I7Z@0_SE-PXJ=[O M.>:OS(1M/O=0):&[CQ-$GF")KS8H.P=<56^W.]TVMAUGH!J/X=WP&G8@+H[T M2F$+_/T U7G0.H2^&OWMCW5#_KT\"G.]N=5L_O0YJ?/J8>#*#\B^X9]@;(#K MO* )[3OJ8!#X([%BX]SG/\;(*Y?^E]R),[I$8F)YZ+L 5Z6 M%IF9I=#4*%@6P TRQ^B! +8-_0-R=:YY_ M/[C_=OWT$/&_I'?&0 W+BV.GP.D$>TV_83@X!,$8?37]'7):[?[;[>^_Y:Z2 M';Z\?A[WKIZN'3YIN MO^H37SJ9,*CJL-0%?=9 &46FK[71&2)BQ7]ITG^RPLCBJP/MYTS8_'J9#1L4 M->N!S-/=Q7?+^1&M L81&+(3O$;4;P[[*'+3;CM:/ D!71MZ*/S_$KA&6I2^ MBMNP'."V&'[F8,8GIC^,(M53S\Y#B1Q'88/C"QAG@ @#5!U)'0!:O$!5Q<%0 MM;X46I".E"*B)%5)@IMY9EO,'"P=C>E@B,;6L$9T1:Z1I2S ).>BN^RIH0R+0;[#-C(3WF(+'A@BM_#5O]DW%]%3K&DD "J C5$_T'[ MA4WR0\ 3CL]=GWSO*;RR=.'N';:"HQ-OE0B%( MK6WRM[]:<)P^(ZO21PD*0LD?\Y_#U>$Y/!8D/Q/N 8"F;WC6F+Q+8K\C%@Q= M$_\:,1WD"=]@:CMH85OH]W -OCG"2!_-%;H;A%#2:P((@$M; U#E!Q;8)H8[ M&EG"$X#"%Z0EH :*M\1EP$I]>CW?;=&(7$]0 * M],%0$X8]_UU\[W 8QN^###K\'_CO9Q?7[^N@530 SQG9>=/;B7P:H4]4$<$W M?2@/72C/0]A0=*E3\.6*#4$].A\)^B0B\Y/&KQB#Y1>#T6>IAU&]$LX5OK7? M': WU%5,[1DI\P.80/Y'/._TC4I;=(YOX#& _Q&0'-#%>VP(SW'E& #-CK2; M >P"MV"B2VL$V&2*RTJR$_@^1](Z;L!%[?3=-;C[!UUJ >EG!J MUR*1)&;O MFHXUHWQZ:-)[_'?DOD.V%+)91D4*&&A98W)4N7SIQ#%2M+>[OA(^/B,'8-HC MT%%BM@:W[^8_WVDV.(#S_))@[HNG$'P!%2D#9@#>8XTR>6LD'RN@@K\"MOPU M+TJ7U4=/SDM:O6I?V(B7DK.Y#OU&_LW,GB\>B=^\7%SO5EQ)CVXD"NV=%(V- M'V,3BZ/9.B\.24 I&V_JPR\^4(^$U:'/C$/K[7!HF< G/LDK/#WXW3RR\_X?/HE'XG-Y@(A9\AG/A >&?S.S ;%A4"".H'D]*BS#HB<'WRY^OWA MKZ='W4R -(0>%[F-\X!SG#>4;^T49@Y\ !S\_FJU+ M7P%A3R(.WIK#,,B6 )V_", 8153?BYB;URUFW(4%#C?BAA_H@S(TC#HR&@:> M&SX/ MF!E_U"!NETL[:>N7QR'1&VV[W(".-C[6)]QF&\%)T3SJD\TD3#U0G$(TA>Y@ M_PZZUS11N@BO>,#M?.!;-SX_WET_\'^;G[DJ!V_&$]/>^?T@N.9SZ).\F:2Y M'/I&' 9W] @PF&&P]U3T/8_#7N,.D^^(F.QANR"7137YZ+P[FT3ZDXS')M,4 MJL'7LB7N(CEZDM6_8CU0VK3:UFDMTMLD\<)= )EB^ ;P%LAQ0NZ?)(E8Y,O* MN6S,EN1W+?)4\H#=&WN6C0R_RQD^B0],=T&IL;L<_,[)OY7P&7Y5#/_/5Q7K M:=\UB-6,')V$UTX@B/"SPE$6P[4@ 1]CL MK$*X?T3^OD>#.:CE<%-;_'$M/+G;5W:/%RF[C200):EOF]+/LB@]);1I>T)R M+RVX#=#40YO=#3(SU+[!W7V'B[MQ MHD/?#:*;N&<>X:ICS$E6:V4FJZV0K29B^ /+H6$"A.-Y,/V =VXC&F M_8;"S->N'/0W3]E 9./TYV<&ON/&,EL(E]7@0B%()H+<8@IT'?"C8*./W6%D M[PW^:E#_*CJ(:OZJ-J*:OZZUNUV1 M5G:J[ZOJAEF%EZM+5Y>^'R]7?5_+EXQ9;=%O6:#YNLWJU]UU02.RM5I!LUW- MS/>=H((-M^/+IX).!A6T8BIH*2HH-M&V>ZRHH+ZRH)LM"UI* M%BQ%!6<9F;Z*"FHC"XZS94%+R8+EYKMVRR,"Y6XL:E3=>^Z886]$S.O$TO8Q M G_'?([K92(SFIB6DE<:#GF%<2 ZK+5SKMA7QEH\A4';%:($Y3KB0] MK8E553D"*&/4:&&]4LF!##F0-P7C_*PF=E7EZ"!/$,23!"D?;E'#]0D[M-:N%F::]#M ^J8;8MNQ*=K?7IYTP2TMF4]]VLS*),TP6]<_ MQ6";!N5)9Y,Y_],LI+.4_KL'A+!E23U_EWF$D)4)F6%GUIL0-EO\H@AA%R1" M5D9DAD%8;T(X.5ELHBE"V&^)D)42F6&\U9L0-EH"LPH=Y P5_SG5L7@W>U*7 M/5;(G%UA# MX3J\\NX.KFR6%4U=V5_S4MA/\X8K%KRJ51-KJX!RK:/9DMZ/4Q>X:$#EZ?G[ M[W %CV*I6#<[!B%U:32W#/,N:-PPG\3K)?:!'T5M7QI:=K$BO_GI-(Z&G+TK MYECC.%XQ1\"!<^5Q[."5V2^,LVP:GT$3I'5\86C3)!4:\&U/XEG=4Z.;<9PT M'^6-0PT\D\]2YN.6<9:]G,S\R)@&6@@3TF;^EEIR ,S_BH%:23%P1V(@/5(9 MH?J_8N 6 DQ#;4%,A+$<#D$$@,>>=8^$S<*Y=4)8X65S>;7]X1738^VU7TSK M1>^1E]-?X>S#[3[;[>__[:XJ>F, MVW>>8A>OEH>2K38'O]S8S["SZ 2)/U+_'D9.]/O>MZO#KP]7O7\<]JZ?KAX^ M 8J^ZA-?*O/HC'98ZH(^ V:C\?!):Z-B*7SL?VG2?[+<[^*K ^WG3-C\>ID- M&U15UP.9I[N+[Y;S(UK%M/RQK4_P&I'F#OLX!2-M'M'B20CHVM!#/OJ7P#4. M4CC]*F[# E9KH=N>@QF?F/XP\O!//3L/)7(,L@;'EX;F R(,T.E/ SIH@CI@ M&]@HO_RL+X46Q)!31)2D*DEP4\]D60<(@B_T=OXC_IQ<9PT#4 $/X:N#>CI MH[X03)!37EJ^ =PG].8,-FEG#C99?J[)\@8)1V$BG:05IH>!*S\@:YQ_DAQI MDK0'I\)=@3L6+SY>;[_BF>[$\WG/V1$W@^8U+9Z[97'0S6TZB2+_*X9D:AQ7 MIG:;8_C6S,9-WX&%U] +#D$#./Q-]WZ KG0W&##4WO@-6%]V=L+4@OF 2YKR M[;6-"+P#_5,3P$#;4.L]>XR2 [0/^+M(AG^/[] M(AZJFOR._Z:AC4//#^$247/F%G!RJWGW-=(G?.B) M%?CH; "5&%X"E >KZ9[VHMOP>([A<]IJSS-\, $Q:;O<,^\1EYN6!1>T*I'[ MO>[=>91N8?X35XY_(@R49D$#Y>;V&BV4YJQAIX&1P8_=T(;Z"XU,?GY&39FF MW'$X<9M$&WNNP9A)]Q..\=9S;Z(S_R;^> S[OF5:NC=!K+D;T'')!NP% ,01 MX8E$DSS+SWD=OWWB;#!Z7'^S1N%(_CDU0'&I*SMN-D#-P_^?O;@4?A-88MS4 M!IX[T@+@ S0(C_Y7S+N.$!GM+,0R?K?Z,TZH3DT]+(3 A+8TGYBC+IA>? @F M-U[T@%;WA;UI,B#?$2B(IIS0*!>;W7!BQ#;-R(4?\G<"4+EYY2[6FZ(W9HV!9NC0\M=B_ MN#M:+>= '#SB87ZA/@CDA;]K:-8 EVO(8:F?$62E65.P_:'S!Z@ M!6OY8*#207R9AX6NU&O Z866]>/_BG&78GCJAVO+SAV0>>L>+904G4Y'OK;= M/3_IG-(O@ 3@W29G[-'\;$ ;QI%(EK7C24? A1/#2/O, -*.QX;C\?)HX=9] M6<:-74CV25\W;A5W#ZR/'"PA0"(UY @05Y(+C,=%25R^L%:+Y;) M$D BHC% #P3UT9MH.!YRY$3N4LF$ \\"!DN.+61W_E$^)7.DB0[V"@Q(\W0+ M1XPN8F":23[21>-T YQ;&---SI,.B*"4SY'1%+L2HE72WMNJW5"&BR%V)MP- M$!F9XQ,V/3!RK%ZX?N 37G_%X]#D6F/2?9>9[<+-8-*T\< LD#T[L;]$@7(MEZXZ @A+_N;=WQYU@VASXS M4 *^ CGZS)DQ;5SDP-,VC) ;,4H@_FO2[Y"+T9H>7'OHF'Q]^3;@E\[S@> M2LU?*\\3_>C^L1?_Z AN)(I:-5*&&6$8SI>3=XN /;3>P,XQ3>9\$I@&2,1! MBH]^@:O/ 64!<#5/\\#%]04)-/9BN:%O3T!U BK"B^5']4#ULU))'KL] 5Y" M+)KMSB>_&PF>"7_X%%25A)2B(PQ\O%A@W.(K&%PW15*9M)325,%(388'H@PN MC?-HEP=^"1ADH8"L!H.>3)6!;DDGEE!E^0O3.JI\GN\__1O$==HTXJ\6^E(M M3+UTUGKE),QW9G+7$M_AD9:4+[-W9?GQ?<+97H2>"O1EN:;42V/G7W2O<%?1 MM=([X+J\M+XM;GOFCJ-KP7,VT$T#GPZ8%83$'0RP8SD%Z;[O(G_)W'ABU[ F MG9GV 2> DQZAP2ZA2>I^@F.(RP###6@GX6Y),X8$FLVNGD(%.'!?[ULVX@O< MNVX,+?8B 9?D5,FEN U"M^+S*T+[5^=,.'$XM&>0=R%9D%$,IV6Z!QK^LR\2 M 22TD+'2"X^T7O( <^'.[PJ])YR0(K\3,M30YEAJYWK*'#<0A@8+=IO]#%S; M=E\)K*2'^^$(GB'\\.>1F,@?B3,W/A#$@)T#ZOL?/Y61]/#.2*HQ9&:(;H@K MP0H>.9G'MDU2B>W!G7&K^F[P$.'C/>$KF439!E WTP!:P0(2OL^!Y5"P.S*) M4LD)RR59\* _^@PEC"-]PE=,QI/;].NR-DR MY5 AATD%QO4J!"D%06XQ4Z\.^+'*..=:,S(U53R!IFJH_+Z#OQI#Y17X%?4K M\.\K]:^B@ZAF[VHCJMG[FIN]7PAWNAJ5O8B[+]F\X:S@J.R\CF (G+M!X8I1 MX8IC9K:G3E0!KE:;?EKB?,:=P,42I^F;[!]6VD2O36O3R[UR= ;1X">8_92T!<\ MHG1VL]FQF6H41*VZ:9\5G-5!5N/D6'%_Q?TC MS"\XG'D7,/_T>),&OAIYH$8>['&#Z_-F(?.I1/)OG9Q7K"GO7B%Q'9I3GV>- MFYRUA4I#XN/S4X7"B@_GHO"<6/7\(MLM1_P:W5.%Q,N;(;O,=>>$M%L5X;J MLIVJH>R.]_.?R7>TOCS$=>>\#OMWJCNGZMM$U2:!7^M1+2EO@MC?W4:(3_/+ MBZ?Z%:2Z"9 M[,0F2JU%$36];*B_L")UQ*J7]?9Z67=4+VO5R_IS6;VL*U.!GMD5 EBAY(2\ M\PRPZ!J5G%-[GKC>_'<'V34S8ZE-0IMD=L\Q$Q*;!#:7USUQ;$*/[%KS8U5K M7LA[>W*FJG2J4*5S&ZE$7-6)*G;H_Z3BDVII%"]]1B_ZT/HH&AE5HMQ'X5$9 M>/0OQIOX'J81J ?<1']FVC=2T"_37V*7G6OL5T3MLBN!/.^H%=AO"QT>7RAKJSAWON'CK"E3B@GVU1OJMDU:CU9D=/[#7U0:UJL(Z/]X2>N>,QM@"DDNM M0Z@9I&5<@EJ!6@4I%:OA?Z=YU)Z=#Z@J'DJ5DEE9-VEQ*3J:*LGX/M8QI\Y@ M.M>TQD*2^(1_X_#.@2O*R-9)XT15Y-4,M[-J"3:,VZ5(R#2&;TY,GIS55DSN MJ#&9)2;GF)<&HJZM!&81Q,L907YZ7K ZH\82\YKWU&;F^X3F6:/=W3+'V%#. MQT=%-.^3Q%EU';LHB:_C;O2;$L.MHU9]Q?#>6JM").>'UMIQ:*W2[&8'B])R M)/Y9KY/W)^<-8[/MNI&SHSV*26@FDK 63.KG&47E8 T,6U( M#VB?'[6W64%6]P+2R@9\9WOY:[R772^P8G$ M'_(*5ZAN)=LB^B%L]A6,%)-A M6:/EP)_]B3;"X9YC>R*'E')39@[QYC QX,MB7_IZ5S7+_3+5M!ZO&0^D@Z>LV7,!D8^>^,URK%$X*H4[8Y.4#-T:@9QS$\67% M\*C?YZQS\*0H1SH^^-(]FJTQX2@"M&##7[*[#?!XA*4A@-A'D$8@%RUL7F7] MK2XJ;N-.-LOW3%@'D-)@N1J-;7?"V"/OGI,-I4C/X&^B*TY^CP-1;MW@WPPV M+\_/H0%&M?@(GVL=I!"SFX()J@F?S-";,-T#U2"&@71Z ME&I/&D]=+[:['%"H. L%C0P'J3,:I%Z:04'6<;Z9*%['&V@)G37?(7J\DC8W M0\Y_/%D!=DVY 17WQ3)!IZ7G+BU@1('KE1VR7$\]3Z.3$:KAD!;Z^@('QDF6 MPIC1JUQ==JO=.&G.DW[\LAL@Y-#2\#K?#:'9#&\6D=<-&]7N\F*GF,'O2_4 8P_RY^3;>)6[V8F 0Q@ M'5D!00@TG$YE)YF=RG8@#'^\P0 DJM)Y$2R)>'/: M&,W=LSCIYG:=0!3B8RE4F=KO_D0:N&5T[WJ!C9?RJ^X!XFN/(7J 0OC@T0K8 MSMM*-_G19]E^2&LWF\V&1@BN:SXSDLXCVP7]3/N79=O G@)0;1XL]$O\<-Q7 M!UUDY"[+O69R,(F@2J1MW9*\TFWM'J0,[ =P5?MN89M=T>V7_2=D?N2X0\\$ MM5\&T>-K5\Z+Y;D.XCR]P0W$GGN(]A/M W=U&9^O[GO\G^;GCT?:OX86,,!, MCY@\04.[\]@SO D@$ [0R>^1:QV8HHV-BTT7EL\S/=V :Q2'003- M#8.!;MO<:8]/R252W92]T2L<&)3."2B](\WT=,O!NP0M6=<<%,VP#FYP[+EP MY;;UOA(Z]F^NT#V9B)+XBH)R'!Z'D/I3^A,_;\(?OC\V,6>K18\:UMZGX,$T$Q< M-&[%8T-0AK ]=/K=#V!R@'+#&EI27^+QG._1NWI&$*]^GHB;M$!TW,,* M0+BK!@=G];]QO P9B6(=;7\JX)YCD)TU M,]I]. WAN_"O?"@GM@NWVVT6?P^+RA!Q'$E8TY\GC?QNN)Z.*\:.S@G!(^,WTG?1XYP&MV6 #LG?F(W=PQD7!?S3,Y-G4[6?>! MJLR3BXS69@&3EP+W(^\E"'C[XB0ZP1$_90+R:@)W")B?#[Z]#% M:$R2Z<@,'T1-\L9*3(?/A^XK_TY\Q)^187U=3@31])$K*&;D>JA[@.C/0>M6 M,X>MKQ67M\KICV>]KXM8_9'VE1EZZ$>N-AO#M8F,B$6B0G)@4ID%![:X[DD^ M$GR'%U]BBHLVDDHBHD7HD.T,""?CS*C# 7!#U&.\Q!\H;6 9/5Z$HP8B$W)6 MMV]+Z4*"2;A"90AW@;( *\,N11I*+I9S)!^$'GIW--U$^X#$H5@(K$03?:!D M+U*5-.'K-8A%,!Q!JD0#-WTBJ3YC3NQ-U:.Y%]+;2?DJ PNG<=8WME8D?0UU M4DHG0D66"RH^X832CD"]]VE."5S)BVL#1J"P36D5'#5]-_0,1L3NN;9LNX^( M*W3G"/L<>,^+E+NS(U<20A4=TP/7"(536[P;0:+AFXS0\Q #I'X;XG@6TY<* M+F83@+;".*N#W\(U.N@*Y/9&EB5SE(>#MP('I::.9Z/)*(1*>( M18B:YK*]:2Y=-MP3 M0K+'UYX\6),AKPQ!YMNQYT-\X<>^%[(U?'?$2-NQ;;FT#^) JEP-X>2;DE4- M=%6Y@<4SO2V"$VHA(AF7:ICS V_-!&OFDM41;NWVXC%TR$1=?H#;! M:A&?IN<=7)&;3;$@<<0V/+D-D[;A"X\"=P=ICUQ,"=3(BQB<\I !62;R1HON MV$!1Q=V?'A.V'M=-N,WP%1VE&%,$-?3)L_H(BIR=!4#4(C]F MP$QZC2["!0L52U=FUO@!*<'D;SU*'Q$05,-1-&-&\VCLR3P\G?H="5]X'UP^ MO-=QN$'\\R; J!:UZ[)$S$0$]P4**Y'&FEY[T M#,,+=?M"]SQ,?*>8\@7G>2OE7C:/9OV*J=S+*'CSPSJ05'K#S&@:3BJR&/:V#;$1YN2.(/SQ9%_+%0,H#Z M_^Q8 \O Q)-!2$R-VYO2U 5>9H?)> Z^?'. V-$M_HL^\$[2"5.H?2:%I.^ ME)-I,BH<*2,>ZX<#P&(+%[4<3NNXWHS@MJT?S+:&+L]_UC4;F$E41LJ](YJ0 ML-([,XCD.!7E $!L,^VDBUPBM//=)8YI+@=8!9"DFD37QMOGZHG)!I0=1ZC2 M0%_/*QH4] .3C3B_(?!$/YMQYXNAKX DUJ@?>CX/Q4CE)^5W(W3#FMU?W5=& MX=$DZAKQ!-DB#B]DROQ(!&PAS>4V1:2!\NIC'5;X;DG")I?.8R0C?<+9!['A MW449GD;1@\M"M73WL\N3)((1=4HW0+^M",];D3G@8$#"#7WM&?%)AIG'R*N$ M5@E(AW0DN*T8'(PYI6QD^3XO)TQ$Y;W0<0<#KH&[Y+5EJ0BV\/VFN&SLWN*; MY>Y%M&PPHL]W)FH+Z43T6EM_Y1OTV'-HZZ*P,2DY7%E;)#;]ZGH_0!@9:.\- M6#"A7^.'\+8AT^U@V,!\ P=5&91,I. ;1CB621Z/\<]^I>?S;G#*>?C$MDB?'.<:45Z7'I7-"8[:UW.UKBI M$A]*-]$7#0;58( :(]H&B,:1?W_L^A;79$"0AS:/<,58U$ Q:NAPO0/;?:UQ MO4PQ#D=)L.G4.9X:PIYYAI$!9AM\M?L<\)HT5W@OJ47POS/!,,HK(5Y&P34D M;$ =FVZ*&UPI=F* %CNB,>\6TFVDUPIZF8Z->)9/)GL8Y7[1U'74VM$SP ." MB,K]$!X$U2%-YB-\M)FGO S ;]%=XOG]GF#)F(ONN]BT',B(I[PQ1Q^RB^ F&J1 M$AE0[0SW7EQ+,#=GB01=#/H><;U[W<)"6RP-&>.G M]V#7#[%PY-\,RW(?F,$LX(0K^>-.CV:[YZ3]<4E-TZ*[0(DPXKX RG-]13L2 MW0(&[\9A>"P L\X:,PU?0G;EK/VV3":0)X[(.;N\AUUG =]"GBN=;1O"Q"27.E];9(Q,1F;YN[):7%"=])9IGV0D;:UK;ILXPZ ML =0LIR0H5J.Y@F"\U^@_UT DH-ZY&57@)VJ"K"U5X"U*EL!)E!D;VN]TO:? MK-M!?R\YUD!S\'0L=Z5/-8S9V%QY %W+A$_]9 (=F%(8"[;Q52;Q(H-(378( M,X2A2@F=8$S"H]),X]3I>I@93P)8[XL9AWP9.P+>6B+O'7G:P MD, *D>ZQ#+U'[/I(^R;WVM"8#ON?U^]';LV/_5N&X!_\2S*8=0TM;SO=)2D. M8S9DW06L/T*/&_H'@ W[ SB(W%-1*S"1/2EK&X@W4=R,N_O$,E$H4QY"HS(M M\A7"+L%F+KBD:6%K.*,$I6Y_\_2.59Z>RM/;@SR]Q_M[8-4DA;DQ6E#P\)*3 M=,B4;C2)0K"H7$LF+Q*;4.T> MVR$*@4RO06RHN,-\^=""_1J^)^@-QZXR66XM?PS""T!^@Z(+D9B98/ M^/UAX!Y2.=J(!4/7_'BD2<4[7IP[:VP[\D,V-%L'KI0,WZ66C#8,T@S-&'\0 M-=7.%K?"KTT;P?ZDA#R1US.--[I/"2.)37)O+V5HT@\IXA40K*31.Q>_X+Q# M+%XAR?NGVT]NL$$?3#=$C2^;8XRHMYD-*DKO/HGY>,-#7BN#/)TB!.)SL/@ M441]A0B8HL@',A3%# 9F1(F?HSJAC=P7&2 TXD-X^FMT=7Z4UX!%NU@%&B_H M@T5JBZ*70M%_[D>F)9C88K)(R.?YFX3+C>2Z<"_N2+C[4>E,P-**^IQCDS_X M*W9LQ6O@;Q*5!QB@DE\A;0H'/]!MZ,@*.3/6 B5<^&J4@(=],^,,M08M$$.U M/R$#7/>XEP[I*?XRNCW) 5NS7U.Q#/PZ")_)X7,)D?&K$N@-!,>%4A%*S!) MA'HG3@4M@C*J,K8EAPW.8QU=)H8>#],^V R_J^/^ U*+JPG M]76;HVNNFVO...S3:1?&7/?SC=C%I=C#C;/ O^'?2!;2$XE"3_K;BHFA[45. M,>P"E3<MHGDL<7U2!6I@NC>"K==8[X3^%H2[>;W0#L M--T K(*0SVR0O:CAV5GWN%##LPJ>%S"]O=#]O9N(WLI ]-V5?_?"3;;0[DH' M#!&8TL,VXU*;UJO%< *TR&2E+HZK$5XO87]$KK2&$+4B\Y@L(K#+;<;MHSC; M0B0WS^3U^R+7!!UB@.A$K;71 MP13&GH5J?R*?1]!N2%:5;U#:#*94P&5+@X#'<_P&MSMB73/2-(ZTJTA1P5/- M.0/EX<@FG4,+LR71Q4[7Y5F,#!) &5%'8Z8M%=P(_%/G_1!CF_C/T'R>*?O( M-;)KA?#+YWH&!%71+8(Y5A]C6HIXH\P6DN"^@6S?7A% M@LA>X'9D'\SMN 8Q]5MR?W!;0SI T&CRI<40]]5IS"Z*ZS"/4H?\L(]A68E5 MY$!W;23LJ+5$;)+4%^09*0*7EJ\_/WM,]*S 63TRVK0'&0,# ++[2N8H<2+5J0\B5!KX%ML11$0Q\GKS LS"M(-X6MXQE.AM/"R=.SRUZV+'CCBP#4]LI M:/6!7 ]NZ&/5T\=/981)WA]OJ6BY7.BSG+L^IH'JG=.YD^'1KD\W-EY2G&Z&'?>!*8%5HOW&[8PKLC-F9\IS MMCPG3>$=-S8]DKB%(;8<&"H$V3Z"W&*E9!WP0\Z>W1M&UJXLGI: IKSU?@70 M4(&_)/"W%/CW&?R*^O<:_-6@_E5TD **Q&)L*_Y$9SO+J(UL92,%$2XC3Q&) MM]WL-K1VYPS^Z_CXXV94XSFL8-8[D>W,B)((!3^0_"EPQX(]B0\D?7*^Y MS#YX%+97K3B^&WY MG^?'!E[_F M(% JKY.\U>N5!H C\X.\9QE-U#/2.?YX(G_CW>!)Q+WN!M]-;G=VWJ="UKH@ZWG!T;8[@*RML[-&NSO; M'G1KR/I.]?_XF#3_75/_T[=VCI^D0I^'YSS?*QE$US[(]*^;=+(7!KV3)@2- M.O,K;S84<]H4L$@WS4L*[S2/YF@VVXM%A)K!XC5=$/, M^)VBUC*=-L5WF<=3LLKXBA;L;ETPMMN-\[-M*HB=N@K&O<;IDW>4XFX][MAM MG'0W&7=4*+T+*#TG$%^HK\#6O5G'S<99YU3AM,+I7)R>$[ OU$%@^V',9N/T M9)-AS%5P.J>#9T8CVITKP)1MZD5)+L)8U/)^CUL5[7P9:G1^G9]_[ '>TL#+ M:#!H5/')=!KW$Q>@]L/<%@#I<=8XW)O*'F7!/34$H'+I:%*6*(VGTGF?14,S M: )-G]$[L+IT\1MDRU6#MR:B?FJR#3=<)0,"=["WPYG%Z3C26GJ- ?,O8 X(Z MU:6'C"1Z<43=Q;"MQ:N>[BN1JMU/;J6OV[0!TH.4'Q.A7SQ$:+9BN_WC(IW%\DZ:%1%?5EG: MPDE/%O90VUD,WJ_F2ESW^JH;/VSW>>=U+''.6'#Q!AU2>% 33QPL1DU2L[NU MBK&%V ,HV6J3!!OV6"S<$3B>9>/%37"S>@0?:65/->J+:T-IG,O=EAY5-&7_ M/TWU83!% "1/> M2O!"#[$>D#]F470 M.FP7!%<;H#4+K)^DYK^8-/-5]P(ZVVGK0-2LDLXFB60^^$_;.P#^#M<_*@#^ MXUFMXZY:=J]E>:Y_MU:[L;"^.%AK@!?JZU8 O;8#.83% M00OT-]EX5KH!?P P17/,$X,S2XP%,5VG6)ZV!O 8G,:AEPG0/!\7@L_F&7>M,DL&.VOG3 MKF6/NX\3=X=#)LE;#,IC/+J"SY;&Z3))O$-,0/M[KAEPWLS*\,]-O\K2L*_D MZI&(>("E^:SZ$+7Y:(+U\LHUQCY/,B;T_L3]M2+P=!9PL!=A5!,SWHV3W8"[!>?T=O MJ5UHN[R%%C[XRCR62 JPX"9EAV= JD,X1 CWU^=C/4&.8EC6M.!6<7P6\_=A MA#*BE\>&(-HC0KYU@VSS"G^MS*LUFU>=RII7/<,(1Z%-K.:.IO:ED$7[[OK[ M;79-=\#WPQ%RFO_"6HD!>SS_8C1V'0J>@5:EI"-*C,03^:[.[@1BI>.,D+H80+H,Y(=+-;UK?:>4V MK=]"I_KB#KQW];!?>='9Q-X5ZK 6O72=':6+KK6%%J,+M[+)AJ/OVEC:%RW+ MV[+N0A"\%LNN_I=[)$"P(**$&:UG(E/$3,*U]"I=N/\--ZY5.%8ZCOWN> P> MPRP.9/&8#'DM''@7V8TZ7(-(UGZ-T)+^ MCYG/TD.L,%5AZMHP]1MF9+MI7'.T&_PMSBI"=XCVF/[Z51^GL#;][0(<5BBL M4'@=*/R$DPPKB$Q%.PPHY;< K>S 4CE=Q.M\K-U<2@&K1DLI8-5HJ3*!M=:F M/W42W-O3VHJ-@?C*=UA^4 H6^N*O_A%8PN8AB#90"G_"I7[*!Y3#S*W/@ M'\$]X),?._**M#][#%SCQ]"UX3P^7VR5C@)4" 3_.OC2:G3/5F^6L5XP91DJ MV^<"DMJ7:\JLR+EFY)Q5]"7)^1*V\J+SO!HLAT/B?+#\'T3-PB=Z]<8#C,(C MRFFW."- OQ5Z66]9@/XF=#?]BOZE>]TKBQ-DE)PI/J#X0/WY0!X;R"J$+,0& MI(L9/0*XTUR'/CTO1Z4< M5?KD;/6&P?LB0MJ)".3;LF*D- M/'=4J.A967_;Y6MS)N"59_U-\S0<;M-S#8N7 ;W# <2;$[/79R#4F<,V+6;2ZU"+5G- M \LR&4O&^785_"0J@%@G,Q('J!L<.Z,I9(MBBA6J8]_ ^DOW'9"_('#,39*L MUJ[G)),6.DD>,\YJ=UINE#.GNYEDQ/>NAP=9G[MZ\0C7G:&6LM??&VHML.VE MP[7=K-&&=37/2Z#TA.;5W:)':R'-;2Z8J\B]XN2>1^T%4Y J[EWU%X^^@\8()6-L)H)= J=T"M5GE4,K>AM>S"2_S[NKLNZQ&?4#9UUKV M^G5>2H%5@56!M2Y+50ZL*O!2TTPUQ7DAM MFF#,WW.NH[63,XF]UEWEVHL=(^6TPNA4IA6&(N@=).AN#D'7(ERR#E[03?"" M;G=Q"8/B!'56? L23FI+,W2_25I?=H.DP><1^?&J1%Y^E&0]HK[G6.!! M2=6=D:HGZU"3RVX6=YS2D-M-)1>+-8O+'&::,:AWFU,WV9MAAR:3PRU-ZT6. MKKS_=OWTD#L;24*UV?Q)3L=,O6$X./3]P9*9V_^WV]]\63V":N7P) MQ:D[^1ROEC?7N77*ISK+C453D*?^2/U[&#F>[GO?K@Z_/ESU_G'8NWZZ>OBD MZ?:K/O$EET"4<%CJ@CYK0T93A;4V,GWAE_I+D_Z3Y;(27QUH/V?"YM?+;-@@ M.:P',D]W%]\MYT>TBFGY8UN?X#7:8*4?]G%B:IH+T^))".C:T$-&]!?@.NE9 MS:_B-BS@5182#P>^V*9L!*R2V37N@WH&+@TLAILUX8>,ABU2!@"].))V-,?X;LP\7GH^-:VX1J.(Y]5(W(7! MW:" ^,Z91=S.G46\Q+CT^HPEWJA;O7U6D>&#K6Y9TP?%[KK-:LX5Y-7_L\7_ MVQDUN-@F*P=:[2I"JS<8, -9.JH%F@5-VBN*K-&^4,P9!C F%@#=D M3(DO&K,<$^9NTF2* N%.2$M):C?QX:N"[UGD6PD:."E9Z+6Z,6X_@87"M-_@ MMT-?NP)@FA7 Y+V%QBV*D(H!8ZML)6DC582CY+A^N%2%;5^2_>AG&) D+\J" M8/DXOF36?+>"^AW\WVQ23U7T<(5%"HMJQN+3GJ\*,_GEL"Z2!;.V@1;'LDJ7 M!.WMT/#2-5Z22'BRY(:5GK(KX"H$J'LM9RK2T$AZI5 M977PY1XM*-?1;$OO6[853#0]*H;Y5+;%7.>EK_GC9>OAW=[ZY %2^&WQS7=/O.:9 <\)=-=JW@)1+K92?N^4\XC[.:MS?BHF[I8A[#<3=K6CA M?JLRA?L[PUGV0B4X+C@ 0'&-S8ZV52I!%>3KKJD$69W_6S%Q*Y5@'<3=*D?A MKZ=.L,'CEU3P/96K-[^##N(?EB_X@&H^-=-9ON"[,A&WG6R[5I3G+DP-J[[: MUU6>H%@RW+(@GD*CG#_[2+ U5.Z.E;]G(R2L7#Q[U;.X2#7(XA+8#?L:K$N_U%>^GRG>S$8)5[AKEKBGBKL'L7'>@!?K;FGTU M.2E'JKY0;:3"]84JKW]JBEMF6O_OCL?@/O_+3.U9MQSM S9__JB!>!_P.3^: M$7H>:_2GG=CZ44L&JTE )6C9;:36"IS/]-*S,'7[ZE MU15#]X?:P'9?M2$.&O/W2#?9I+\H1:C!CMZJ,E2_0=Y;M['M@+ MA#_C+/'B1':+OI.?[#/[/?-+?5AIEU]FB]W89Z[". MWMK*N6'S_:LG68FO&>%315VK4E?"Y5I._FL&1NRH=W4_966>EOF;$.Q5Y MOY^\CT_*D:([%NZLFP#M% M0*@I[/X6=+IZXK 3H_H4G=R*3O/IN$>K'K_PA MI?M#LA)>]\,?X>4\]Q.!M'M-]=LGX_\Z3 M./]EGFL")D_[0@Z5*V2'-;D\NLI*#=T/3T@UZ&I+JEOI0F07Y56NA925PKD? M/HAU$E;1M,Y3Y878/]EUMK=.""6[-F3^GU?#_(_^?VZB88YW0"*'ICNFQB1F M;"^1>5]=!3W?=PV+IKA:1,F8/Z[U>=W#SO@+=K:"+D?2G.YO-@9_\DE_NWK# M+N5,E/&\LU!^<1G.VE!AQ4E6]5;D=KYZ+H]8]S>Y8R/$6DY)?-&N%J5[&Y1@ M?8]@W=],C74B^N]%#*DE*65E.6SO]Y.<[!ER\XU]PLF^.PN!29RZ!9W7B^GH5&G M@@V-:LX"=DB^YI)WP3RA?2!O.&ZE1>VN.>N4E(W)L&!"T#Z0X8F2LN6U_.4N MBAPOG&0/Y(&+71@_!WW7G.!?.J#^%^U_-$V38+P-1_!C0WR8>7M_F]KTWS[' M&Z3]I6Y(7)"XGS3;&M,R64O_8EHO7W +&G^6/XB63Y0W&@<8C5? M?Z(!45J(^Y>._X :9>6307S3BSQ&@AT/)'^//S M[B4=PAUJ M?08/C^#PH!J$(WD[#/:$P19ZR=@%^H$O^)7A!W!,V*$__6AR'7F_-X[XIP\R M)AAJ.MTT]DMJ%+H^.B5[PQN$DPP\=T1+<;"0'H._,!-0Q'0 SKISF0-N),_ .23AKI9W\_N/]V_?00L?BD.FLP#- F MLC6:/PD)DG[#<'#HN:_15]/?H3#1[K_=_OY;[BK9>HK4-J8Y1+R:EL>LSXA7 M1QN+!/#4'ZE_#Z, R7WOV]7AUX>KWC\.>]=/5P^? (=>]8DO]7#4GAR6NJ#/ MVI!X!B@W:%B)^,E?FO2?K-"*^.I ^SD3-K]>9L,&I>EZ(/-T=_'=!6W88$Z;Z&>R<&,3TQ_ M&*FD4\_.0XGB"NC!ER?2>(!T+U#5 F;RR\_Z4FA!.EZ*B))4)0ENYIEM2;O; MM#SID_!#5B]9U8PDDUR/N%92:KT""P/UQ>!F&C*T@6O;[JNO?;"0T;NA#T_" MW<))V3A(\KX1(';@?_Q4!H-[GSK]: R9&=KL;C"M6),>T7-,(;D)D;*5[6ZF MLKV"MBT(=& YM-K!C-LA^U=7^VY'*I MF,!JX7[!X#]9+(%66WS5)*MHUZ?K-6@2QQ.GFS%Q^E^>@&DS[3?X^=#7KAS4 M>!Z!HLD!PV^PTVQP V*.K?..&ULQLUXAR!81Y!;D?RWPHV!FR^XPLG9E\;0$ M-$6Q7@DT5. O"?PM!?Y]!K^B_KT&?S6H?Q4=I( BLIQO.BUS/>B:5BU(O2M&-?V%*I8@LWM6RVRN)3;B(GI?.^G)3U[G)N$LI9 MLY65A#*;;+WIA.?SQOGQR1D5MV4+H-JF)5*^I)G32&B^ MN4G9'].RYE\"7CT.KEM*![T;T+/^70PM@NZJ!FG[=(.RJ(8J4N5Q:TXSG/GF M86FX=7:Z>#2#PJTJX=;QLN9<>7RKN;C9F,*M*N%65K^+7.NK/+[5+1&WRA^Q MM2,Z[Q4O97$'<1V&/8DK2=*Z[R\8[$Z=BO9Z1F_ZT/KXR\_X0';,MSH\8$U- M DMPZ"S?%A X2E;_CC5IV2(!>X:M]$S,B,?&@BOQEK/%W:37Y_A9KOV>PN*2 ML#BK3<6:]/E-8''WX,MQ4V&QPN(T%L\)L*_#;4%,Z#HM8UB;C#0J%:XK"Q::Z5 2%51J;0N%9%"XV M *4B*-RJ&@JK[#:UD0INI+Z6\K9*JJC=3]+<_;3NHLNRRFO7]_(5;44A#N?64K5)?NNUEY9^NR%03\5Z;\;2:8 M*:E51^S-RG-:E[7P3NQ5]H+"W@78FY7AM"Y[X5W8"Q9#U?K$*.RM&O9F)3>M MRV)XK^:PS6*WXC9#Q>8Y[L* 1(#U!D\L?[)0>V117)\P_MN &?-,:G[S%3LYQ%D^-FYO_AY"5]//;<-Z#:@-D3 M+8?--+,:0RR?!MQ+G/.1&2$OY'N1TT4O+-_Y_>U_:W+:Q)?I]?@5* M-WG7KH)H+B(EQHZK%%E.-/&B6,[DO4]3(- D<0T"#!;)S*]_9^D&&B0HD1(E M@E3?FHPI$NCE;'WV#J(D6W9Q!.&3"+OY<6+B440W= UN7PW<,1Z3NBD62SRJWGCR,M<>"V) B\7 ME[#"; B'!E^+#,^X(DFL+.'KCO$)/+:<<$9OX!3X7;X$.;9Z!D^8F['OCN&) MJ0/K%=;0#YW0Q=M]_0*3>*VR<^WX ?$NCER\66P4SJPL2/F6XUB,LL")0?\2 MUTZ0.>G" @$Y[6:K_SJQW+$OAMHX>%HF..O$^29BV_)AS#-ZYOP[G-1T1'X> M#GT7?TPC>BQ_":8?1%F*BXFR&*"#3^#MP0$(*%J&O+-9PH3AE"0(1IQ(NQ&Y M87UT0E!IZ3&UC21_4;\[.![" X*NY+Y*A0BL2X C'FS6I3\M M*.7%U>7E2XT#86U XB-QZ/EP4*9(C6,X5@ZGZNV$!IO"&'@+L)7,$@0Y\4Z& M" C!7('7D--B!S":T:AHOP0@Q.65X\QER%/3&)3(& "37Q,.*/- $'SC.V=Q M*#D'D5ZB"1&Z6S9((A85N(+QS(LC$0@W17U@&MT4;]MH1J6B-"(3'U.6OD"Z M+QQ/;_S+M@!$Q(]),35.YH<>8"-&L3(-'&0>?TJR48($QP9V3AT?VU4Q(.#9 M\D0X]ACLN[(,A$]^0,J[I3@V=89T 4L)O2=UX#G!I/@ MARCS87,?_03EA?_:N@09#:]ZMO49A%@4PK,.D(=S8UN@YS@)/.'$()>2018# M;_X%'&?]CX\DAN/B=%=.:'V 4:TO,(7P7D= <4$4.UX$\XCOOAL],_X"=G*! MH% W*-$YP$IG/4D+.;O)U^98CECL[PS6D,Z R'AD'"H6=&*Y J_Y"MT8.#(G M0ELZ%9!@8+1Q%*#$'$3?+3<+4&F"OZX=/+UL"V@(& ZO?T;VB_Q L18?D5$, MWTZSR=0":DH!K(I1!SX(_8#D,G)"P2XBO/;C*,1-(4W#]Z+8-9SNF:1O!:95 M:?P=G!0.3/Q;!)A04R+Q@6T;A7Z4$RQ^#\0\ ?9T@M3Z@.?E&8!/OJ%8X5<1 M@32SK3]39_ST%#I_[_?<)>[OOU9?XJZN;%,^UX=OS+W[#*2N"6:8C.]V"!88G^(LI.T:U#1S] X!S7LS2MG+;(@ MKT")B72N4@RW\,RCF(1X$/"E]RC V.@'K#FC$9RJI$?'XEJ$&1\#NMI<-HH6 M#A.VHFB\W*QY09YB$(,P5O+RIVW(K@?Z5MRQ\+) ?![.>UDT>_J7F?RQVM_2 MJ_2WW,/A(GD/+$&BR)Q72A)D/4E8;@74!*FC>UWNR';;GRNGS=7HA9=K "(B M%KMQ-[HAD*T0R">TFG>!/NYS;^U."S)S?;)&IN;V[.>._GK=R=Q I&8+CNF]T@=!C= -T!_'H.;+CO;/P"K:F=OSW?8N9+:[1:\ MW%[(LJ1MPURR\O^>12'IM>3GO\ P^.EW/SG\K-)WI.,_^4C.K_^]2IV4TI)^ MR1+ 9)*HW^FM KV$785B/A"!=)/ M*6E*>%^=[_>\-VCCKG+)N[ND M>4'+2.ZW[4[7/CKJ&>K>7>I>TMR@943WV];)B=T^>LS.0'O;!&B](3=EU+3P M/MO*RZ;62CRMN]WSK.ZLZR[I7_&HAI,DES*UG(:>)KB85.HDKCI]N_.D-P29 M2Q]W@H&6M-!X5.-L)QFHU;7AS#0,9!BHS$!5MQ,]M@&XFPP$'-3IFR/(<- < M!RUIK_*H1N9.?PLXFED>AZ\_1JE3E!W^_$Y-Y3KWN?: MBJV=I^VVW3^I6VMJ0]-UH^G[7&>QM6#OD=T[JEOG1$/2=2/I^]QRL37'6[=I MGW2.#4T;FKZ5IN]S^\7V(KM-^[CWF)'=>MV*L4(EW=V9DJL_LFZ&*;R8V]JN3&FA==D,YT M22K3_7S&1W:K;S)R=YAHJQ+>:EY,\5"B/;%/MIEG:VCVH31;E6-6\QJ)!]'L MT<';3ML^ZC_F]7N&:!^9:*ORNFI>^O!00=MNV[W6%DLM=]=39BH:3#;<9K+A M>E79<#M5T?!@&Z5I]VN7Y6888^N,496;M5.5"@]EC([=;3WE?>2&+W:"+ZKR MNW:J .'!?-$"6\M4YAC&F&.,JBRQG:HK>+CCK/FHG7.V4"[P+")!IEQ@-W+V M>FO?,?P83INNW6J=U"P5SY!JS4CUN*I/T;I5 ^V[-MVYTD/)$.JNTBJ2^+R M:V7W/Y14>QU36V5(]4Y271*-7RMI_\'F;]/N'=F=C)QR)Y"+4G_%# MUY\&(JF^O^VX\OZV]:]OJX#W/"G,09LIB.YUT[%/=\;++XA1U2WRQ@^[67'HYP](URYT^WJJ_"+Q3PBK(@V)X^;5_UCMQ M+8)H.N%[($O+OX4%]^\VX5A88^<:&$"(\/;KT_D654^#&]Z/'1.<@YGE)TDF M/,LI )ZD '(G]DJW ^.=DWA#NHN7['IT464TM!POFM(90;?WPDHG= FO& X% M7G&][*[*LPBCMWB;9>&+@C_>^Z$#HL )K-SGQ%=@>W[B!E%"]QS[H?4IPNG3 M:)UQ;&L81Q.\#3,1:CR^+KARA;= E&\V09B^!VQ)$KB%UYH\:NOU[XKIS W" M3W.#<+MI;A V-PB_WM8-PO?0OAY-%\ ;JDJ$!"IUQ%>R_P3*.E S8ONU!4\[ MI'SYH.FG?HK/XT>)8/@9((O<$C6(%8?7$&*WUWKU7;#^NB$SHC$^;UG M)_%^K_D3ZQV<&EF2J./N-'2"6>+3.5B<.'@D^?F1^$4D69#2(S*\ N>4OGBE MJ#^-.?!4^@E %L[&&] A#C]$T3?4'XJ3>(_W_74,Y%!0::%.;(ITZ)<(-!8X MI(3+7\$#*<[[1^;$<)2"2L?:,FI?A892J"%_H*5-6L_?_(8EEMPA:Z&59[W@ M%]W7^!?_]D>G>F3^X+U^28:C \J5>G@=,,ML'JV$0X(3Y% M6Q,66(C7\#BLT,W@9/@/"&0V/""DUH.Z-KYW>OP4V)G8-4_0 D[(.)30M<^-''(]&K^ 'T@+#B:UKH==5(B1#? M*KXN@+/P$V".PL=5@XVC+/ 6OW?+7R.TB$MS9B"HW!" \,?$!VYW8D089AK=#E5%0_O(X",-IB/_G&JT/?2(R<0@29DYOG#X>^"_R/JX-U>[Z;TN0Q M$KL (G'3#$0&D)8;H1C#L6(I,2;.C 8 SD:P VP"$ ID_MS@!" K)#"0I&-+ M(8'-H3M 0.PAIR(+D* OTAG^X4]0\ 8K"$L,(H!8'^-?5"]?)H5?P8,H"ZF M QV6)V?EEVQII1$T"-V6ZV3PA=RTVB>,L62;_'YACP+W9(DT9L5/3WSX;,)1 M=<^J5+1($-AY,KPM'T!J+V[@[ZRX- M@0\<\F)X8D*B'OZ#1[Z)%!C==^$W/)[QO(!3Q,M GB]LC3U=!I7;1:5$CS7Q MOQL,U1)# Y^$+)X;_K4/1Q1ISRB'X4"!@S=@I<%@KY;8@\-;V@"N;.?%N),N M8=!"8:V@-1GTU1)]4CRBA9:X8^%E@4%5;5'E2P/%N7; 6!KX@<\*?>S^@]*8H"$')C-87R/R=&OLYSIH7*0S@[]:X@\=$7%(J@@8MVF,[IYI M%/CN3%KUH\PH*G5&H&;3I?#F<"@UE(Q\.N3T8-\ANT?X5_&]^!RC)HK>EPDP M*H?-LPT@>P+J;R#NC^^J]^N$\M+ZML.V(DGAC$S9HT>XU(A!6O6E!Q=R*ACG MB'(T^96F6Z8+Z2DP?H&=$ >((J5"E=R<2!W19!J(E+W/, M8\?]._,3GQW:0$=LL<)0HSBZ*442# 7L @5P-A1@&+.M .\CDAB7(!VL\_#: MCZ,0/>M "^> =\K0LAD+'SZ<%=$W?/[/J],BQ%:$ N<(!J;4B80?+(<0'7>, M,1PK@3WX0X!:F%J.!_:VGZ0Q46/Y+5B<&X$(2V:A@(T*-8H;"U(Q84 M_OFZ$6=!0_AK3 M7%$8)*_K Q3#L7R8*\UK:/W9N&J 'O?=BCFN'(B1G[ "KD[IN C-%WQ5-W(W MF*75@C7U=^:XY,U W/EADL44D'4C6"58RP9QM41]*'IME/ MGICX+F)\ZJN/Z%8BC$ZS 0@#:RR<(!U;0 /Q"!C?ITQZF6KH1F"N.F3D(.*% MDP@+$Q@+._7L\_]K>SDX)0^V#:Z&>A?N31>MY;0 M2^T^55+O6329^)QSG4]Y=7Y6C#V$4S <*5,;MQ"HJBSDDHVBNG#/MB*-BT23&0M#LO$XG1F M@@#H5)2(R@FN,-N-'P0 *P2)QQ4 P' \?Z(M@(YNS))'!P1F>N,.8X'NOGCN M^TCRQBVIS'M:@O%F\/8S2-9K7]SL<:'))Q!6XQL,*F&K;%6^BCG6CA4(AU2[ M0OO#S"D@:\SC*&*-Y4;)*J8$#!#F5(AT-! J4A7 G#&^7%%T5\YH0M<>*(I M+ QKIZR$^[]QX2XLVSJE3H8#)50^9GR_H$#)[P4H?SJK^4*8632EV&)MC5PXL.;V)E.]>'= M68 =IF/Y##%R*)2X4Z"(,/NFX .K-Z^(3!= M@Z*'O00S'/"0"UD4].C8=C!?7%@QG9JP$8Y;)BRIN0"'8P^V]:L(Q;7#1(=+ MD-W_;.M2(-U&WY ?Q&O>ZA(B11C!AC_# >YA"A]F^@MG@L3KXI&=IKQK10E< M.!%&UWQ,W%!! >BN( U3:?A0Z!3%\K439+(RG>O991C&ED-3<(5&Q"EOHOA; MP_I+T%D%6J\G"Z)8^?D?.$NB[!KIZ2\G&<,\:13RRU1YW^HP\Y>M+/B$,Y(V MXM*%?R6B?VJQ6ZHF_N7WO+B@5+.\V"NFU-T"OU)5! ^M'+^E//EIZL9Y+LL" MU5-.NZSBM_BXW9+P!U:$KPGQA]>#[W8Y^)WD<%>UMK7 PW/S+^O5)%EO'K); MTS%00%>>+OGA@6(3#A;/&L&Q$-/!A0D/()?A,TMKK .-55G7S3A215BE1!;9 MA<./K8'O45W74'@XH,T**PO=2192$6-@.;E;8LJ5H<'L,+K!PY+7Z]))0P_ M\28[GZ 2CJ<='*!$]+I#%(>UQD"$BKA1BJZ(SNO6&DL\!B*4#]/2B-6O@P&:N!P'R4; M_W!\J>=DTQ&F#,(NBOK9%!NI%@>Z@K/-VR,5"+45BPH_.7B?%HI-?.CYSD20 M)H4Z&7PQ57?RY4H.Z$L!G&>R_I4/9<8IZVT+BAI0N8]&(S !)AX4VAEI18 N M A$LPISU7T3S MT!G$$DU2]7.5K1!:7\5W1Q:=2B9)9#E:KI0GR]1K45JB4B^!F2 ?5)5)*4^X'W6N M-+/&R&E7/NJ28T%,63C*Y1M N+??/JDYCBXORTZIM2ZD@ONT=T)8 ;FD/.$%_\,#=UY;V+!$+J6A_^2^KAJKO)[5 M_$9[*JG0FP*T=2:;'IR#A(DF<'9J FJ/O2SORGFWBN4+M271-!]@KX#BI%1N M+K^WA(*8JYI[%&T;QE&62*=X%P"Y ;;#>'K0DLC/B@ M>Q*]OQX"#5O'<80@EJ[65N-(&L9^$/AH,M.1$TN)L]H0O=(0N*3_SD)!JY'V M^UCH ).BH[QM;G3 +>M(,873$0-6@!]07^+H.[4'@'6TR[--130-2/SB? #= MW"L;S)2N([4XKN!6W34\U?A!397DAR KM/ [:ERT3U@%_O)>_O)%L&:$>J>^ M:L #B&<]!URBRY;YXQ,!ZEHJ\NJ!HBW@))/-#\@37C$ L-'$YT?D?CB/0Z8J M3R(/'3!Y5H=J?A*@$V?BI\HS*%-U =XS(ZQ(<6^"D24AJ +Y,8#H2L:@B)M M8;L4Y":$\ 0U+ R%$0$XWC4>K:3R@"K#>HAT_^=9NM(Z"*)P= A,+R-> 'K_ M'R!)'#0/KI1G3P#>*>T4F(Q4J6Y^,%$T;I#Y@7>(76BHHTO#^I#/H1'%,E./ M)Y)D7.8O])GB%N%Y&!%4/S2/4J"NT5C1DS;!@I^X9%0 V5*M3!Q=8^,=$!-C M?YBRQ,"Q*)"'%@)+U)EL#((N0%C;"'/YE#+*OE$R+=!0G $ O)&0M392'T)' M*H&3AY%5&# [!5"*'@PY>O+.1)Z? 6X > MR07;D1.:-?3X)M*1A?%LU#RIG M2Z%DE5U@K&7.1%NC@!L6$A/9 JE<2)*.8X(_?H4]4S#MD2+-$R'EIA][AT@I M,^P>0^H=U -= MJVAQ,W@)+@XQ OE[&2PJG5;!>%]EQB6 >$RV%]-].IM*-S_H[, #I+\.1'J# M,KO=_9'PU(%_L?0]HC #^R2D\YE,X#'CE*!Z_) MJ)*T&A?J,?:5O;Y@8SVG:*3FA]=.(G5"E=)(L:4P\3TAU="!]'4QRTSQ-R03 M%+)*=T-E3B' 5M^J:)-L/S'CGU6;*S:#&65E+I@ZE%/C(+GF)"J+_6R.XQ.] M#[";&+5_XR1UEKR [=S(+I;'\Q M$/Y!UDY1"NL'VT#D]?L6MG<.4#+#][E= M0G%5/,(I4O8/\,+[F+STMV5-1>JDP1L4!*%7GWD M93GK$HPPBFVQ6J-$X\U8(/F7I WI^"''['*S0#;F\3'KPL>X[AVD_PA$N2U[ MW4>3_0*+#$D94K;1.8((!!+0SQ?ITK$N45^EUIPM=AA0*;!3['"\!BJ9(.Z<- MD7,,CSOI.43?KD#+GH%%I86%EU2>GZ"Q!UB-%CF4LB#I/\].L-F-Y9?) A5N MZJOGR?B*,RN=*?2;C0F!<58T>0>NQM:$/D=@I-NM*$Q$ 5PD&N_KD8.=@WUD M,\?-?=>4]\I<,WBK["]^L-4'(''F+>I!:$.JNQ35"WL**&"UCPXH6'@3*P*8-H(*U)#UT:*6"OPIU77=!/BRN<*7H?G<*?8N?' M'5OCTPBCT?@(Y3BB&L@!S !8$SU'LA]6$0E5]GFQ5<7!GL:X"8N97)7E8E2I MQRHM42F_K/<6C4DUW68II#590C",*#N+C!W)+3FR]:CLJ,I&)03(-"Z$@_AE3)MF5BF_2C9>E';9-^9-*/3/K1K3K6DML3]E9; M^DK9$D' B;Y480(FK$C1AL9HH*JQ0?\RUN+AN8IA>E#@E?^X.MP?BY'#X4'I MF^ &5!A;UWN!8U-BF!Y=^B]\]N0G\&CR4O:D1T5,Q"CZI.N7\XQ"6"$Y )[Z M=%F[L[84-@ DXL'JXV@]DW:?H(]USV9I^MRAWI'S-9;[XX\W>PJ=M3^YNP7(< M *.CW_@CO#Y.K/,EMV_P!W1*L,C3[[K;*!HK;[6_&[>&?G:$?EJUHY^YLM]G M*1KE'"M2VX:6\F:0KV;P]F$KVC ?:C'K?$+(/8TH;!]L%U.+$E-? M_!-+0HI"?0(%] H5T$<6=/4X$VM+_O40'#]81F88F;$;,N/A>M#JRLS*@F7M M!^_NP_)X%NS:]D M&%)^QF;MPH.W)QV[U^L\Q78?![!;'O=)<-0[:32? D.;#QS#,[DT$ MQLUT+P7MX.W7LO!^]ZQ"=[7&4?=7J-K,%1G#/6:=K=O<%1K'!VW&KVM8&A?;'&3JV+< M9 ]UD[5/[$Y_\[F"QENZ8V30:9B$I>=.!*V6W3O9O-)DR&#'R*#3.*D/$1CW MS(-R54H7 1B=JQ8,UC^V3WJ;-WV,G-TM,CCN/X+]:XA@QXB@;;=/:I2G8,A@ M*V1PTFW4*']Q7QQDCZES';S]-8[PBN8X&OJIR4RI>YC7S&$0L@MS&(34; Z3 MF5+G8]ADICQ9O+9U9+?ZVXG8&ARMBJ.6R4RI-X9.[).CS9MZ!D6;9*+F(QCC MS\GN-HDIQB/V\/HMNX\W[-3%)V;(8#N.T89)3GKN--"QNRU#!<^="HX:-3H- MC&OF05DI(RUTLE/Z5GWXYN!MNVNW6IO/U-IY$5@K'&W+E#086M78;]L=T]:Z MYC@Z,I5".^B0Z2_SQUR)( "UR[9&(A2Q$]A\C[4W\4,_2?$^\6NA[L'>*?5@ M?[7O5M/N=6N4HF3(8$ON&).R^MQIH&MW>S4RQ0T5;(4*>G62!,8=<[],F<]3 M@=I6.++\T(TFNZ5LU8=I*#?FJ&])_"!5#I)7NTBSY?&MJJ!VTUG\)Y86CK6=)6 MJ_4$Y[^AK6=)6\U':"Q9-]HRSJG[A9\NR"UE#<0PBH5T4EFI\WW'.M75ARVQ M>:/=->ZJFN.HM24GNL'0ZH&HGD%1K5%T\A1ZA?%9W;,WVD5^EAL?5:WT<5 / MNJ;%]W.G@K:IJG[V--"R^RV3T/_1=H!( MO2@;!&*>2G^H'T^LY>"=3E4ZRI9EZ_X22S42KIX-,_WCT;B MU)'2CNS^D9$X1N)TMY(C\+021],1X>,@\F;T WQV "+\N7(E_YY;RK_77HLB MB"G/XOG7EALX2?+SP>6OO_Q^, _K9O/'*O#);XA0Z"NIH9;'>__U2SZ@3E^N MP-ROHG$T3*(T7'V \? PCFX*W;?\DRN"P+K\]=.?'V^=HUIK748Z!V]Y+@N4 M;S7M*Y@WQUO^6?\XSK7\R]-?SP]_^7)^^OOAZ?NOYU]^LIS@QIDEBOY130Y% M:>>OK;%@,+91-DDCX%]-^E^5?2!_.K!>5<'\MW?5,$?D;0+B7S^???##;_D< MGI], P= Z8>!'XK#01"YW\KBA*;.![7>.-8X%L.?#_Z51NY!B_C$_)>YW3'W[#),WR*_;"8#VTI$[ ]AI5^1"_'"L3,8 >@H>?/*>;LJ M.6B?J@VK!1Z>FW^9^)*L-P_9!98F&2+I[><#H!/$FY1W^=_)U''SOQG#0S^D MC5?+@/7XJ-PQH\G"E>!42+M5S./'-'RWU]0']9'>'N<6.= .IYU)::IF Q$S'#L-&W^T&YB M5U5XB?Y[E$MK*OT_=Z/6D,]ND$^K=N2SGM]P/P6CG&-%8MO04H!TU&J0'!ZR MH@VSH6:?:'K?$+(/8TD;!]L%U.+ E-?_!,+PA]1=44'^Q7?E_NH@JX> M1V)MR=\(#B,XC.!XY%O#JI2AU36:E:7+V@_>?>O:X\UM%KEKBS2) ZLF#B0H MGLQMM6OH /NPD7V9PR"D9G,8A-1L#G-;;9W/X#V_K;8J.Z0&B30';]N=KGWT M""DR.Y\-4Y\LEX.WO>.G*>DRN7%U9M76R8G=-C?DUIM53UI/]6':U>O"6EV[T]_\26PJPW:+#CJF2-00P5';[II;N)\] M&;1.'N$:2W/;RY-YFDJ7[X8J#&04KEHP5Z?;M$\ZQ_7A+T,'VQ&RS>8C] 4S M5+!;5-#N-.WC7HWN5C-T8*3!_GC(GD[G8D">14F*J8$F[V8G@MAF#H.079C# M(*1F+V';:]M$CF"H[;Y74"4?]QN8+3@V"-IGB MU;9[KQ^Z?F%Z?M<91Z\3X M8^J-H4[3[AV;BKM:XZC5:6S'8V8<,@\-QE3Z8ZY$$(#:95LC$8K8"6QRQ3C> MQ _])(V=U+\6EO@^%6&R6]&:/=:^FW;KJ$9YX88,MF.*/T+KR9'O-8(:C[-5:'&2+_7$7X1IB(626H"(+5R=[UHVYW^ M$T0A*WU@CW:9YTM#7?6@KN93F%6&MIXE;?5.GL"G8FCK6=)6\RDR<[9,6\;U M=+_@T@6YH:R!&$:QD$XI*W6^[U@GNOJPI:R*VDYQHL'1RF$FX_^H-8):>"^S MP5&M<=1]A#N3C8]J"5ITD@?&CK*);?1+I+B;PW$VD'2!2+\H&@9BGTA_JQU'+%]ONV*V3 MQY>LG;V4K,O!6E?1NGS%O:V$[#J/Z?K^T8B<.E):WVYW-]]&P$B<79,X1T_A M6=ZRQ-&41/@XB+P9_0"?'8 (?ZYB"&)ZRRP/W>^;P=NOXUAP M\\%/?BBLC_#*.+'.0P][$(II*B8#$;]Y-5#K&6#QM=5NMMO66329.MBK,(VL M>P_3PB]OWV5M8:FQXG^R)/6'LP7POO%)A:8;KQIO7OEO<;M6_A7JUK%P$H#2 M4;?1^1%!^4.KW6DT>4X0S].4BM$+$\8RY7K:'?6':#5V%,RN+J\ MM,($Y\@%01\:G1_S&EL M]6TNW]"-DUA>[%^+T!K,+,=J'<^-'X74SLO+7!@J%DD64%'I,(XFECMVPA$Q M'C[R'^&F5NI/\&?J^F%URF,EW!P$GO5=84UA%3"ZY64"EU@>"Z9+K8G_76Z[ MVV@M;GLU8-\*U87M=X[76'+!ZQ,'8.H[04+7\B6T_>H-V7 (QRD\&LQ@$<,$ M2)DF[O]H>>*A8&]8O_ATPEN.F_K7?CJSR=<21"-NQ"(7@@07B&L!ZYTX,PM8 M<&8EP'+^T'>!%V%I- ]LUX\(B/*3,QS"9#@^L]]U%&03DL5[*6M4<^%Y>=/I M-SKWE3>M[A+.OT7>M%H/E#='[4;W/N*FU3UI]#8O;X"9 ,Z -,5(^/BE$W_[ M\^K4BKAN'>G?&'&M9*Q/YW"("N(X-9QJW'T>#*XDB1R_"_21B4)](XJV&1= M$FBBUK8A$NC5AP1"JW7R !K84PG/1H5^VUMA5^C?:M!N-3N--NOUJ):4Z>T% MD ]P"5!V3C4OUSDLOOQ_,.UN:S1^K_"?R&_(4T5[_W7+_F NH/)%5C_55P,!9.H&)<^P'AX&$RK/:1FO85S)L[;O+/^L=Q'N>[//WU_/"7+^>GOQ^>OO]Z M_N4GRPENG%FB'& 8* M%:>>OK;%@,+;1.2G#@/]JTO^J(H3RIP/K517,?WM7 M#7-$WB8@_O7SV0<__);/X?G)-' E'X((ET<#H+(_5;V)]+4^:#6&\<:QV+X M\\&_TL@]*%'YC82$'_HHN!7V\(GY+_/(X]RSRS!]BP/39C*PX5B*_2&L]"NZ MX9 CSV $H*/DS2OG[:KDH'VJ#JTN\/#<_,O\EY+UYB&[50?$J/IHZ)%U3H+\ M:%[+?]$Z1L4"H%OR8*QS.IS,^X!>P'EQO.:8\P?$40>'(%&^8"2@*#^Y9?Q5 MO5?M>2\:+OPV8-QAEFS<_S%OSFMFLM22-..9U#?J<0HJ:"!H[$=S3<#*@!-! M"09M#IP 8VX(O'>EOP"<=0-^\VJ#F M#GQGX =^.@,.3M- 2%4:V/E:P+\NBGZOO X)_7U5)Y7#8(E\:+=(.R0!T6ST MYU7'8\EL"VZ'=81$9X&)P:AMW6/<>4'1[C>5)MEI+4YR+)6^Y9.L*"U.%G3J M5E\*B_7'GA<8&K?GEB/9;.3OJG9#$$_[<$SU'F1['3>1\:25-$_4)TN'7C6&<+RP M^^.ENW_B W5];PZL(,C(<_U#J\*YBOX1$=,*@!SHI4,X$QUT^R@2(5=I59Q, MONQ,HCCU_Z&7!GJ]%4#PK%[OH ML0RB&W@WYZ#2L5KGF5L;J@EMD;:PZA>L/( JK MZ3^$QA;15HGFU>&[W^?#A58?7,C_Q4HCHC+@O]5C[FWK!6!6<%CJ6J]$MH ( MR9AM]T S>3DG.RO0OURBW3W%<:,/4R!QT Y.EH2'EC/B*KLXFM]%9\UI5ME) M#XZLERQ&!.!SPM2_[)6$G-7+D8,0R0_&VR&0/THA-E"S'!>G'LS0=73H";+' MT#\!X@6($TT-SX=UQ2)TT;>_XHHM%T# /NZYB* T\#A M_9VZ:$_!\H(9QRZ8%/P$GH/%K82L@4AOA AE-!Q+K/:PILGYQPF^V]LEIDD2N MS\S_ MYM-UON:^UY_LI[_9+]-&53R8%EIW:^J@"DF8B59>M/6&/#?]'1,\-G M8I%&NI+&GBSR*V/-D1K#+BWY!3ZEUO:!)YE;UT10JN* )L%S/B:XX ;Q)PU& M,JK/8&JW[?)I<27 2/>TEV '2X!]"B@-Y#!]F5+Y(HU& K?) E.M^50N;WZD M?!,-Z_T"S# @&T3AZ!".MPD0 0N+4 B/4V@&<* )= 7$438:,R23)$/A3;25 MO^J)08K27]-&!=!=.FM89!N6D ,$12GNV"_V'$=EY;%_ V?]5JZ#^YK]_[(: *Z;Z80]$#S@7J M34(+Y]?^Z%CO 2IRK"8_V7K]AW1AP):&64S]FCT_<;,$=S(0L%2V3/""\(H$$$(,A# M'\D(H3;,6*V)!5EJ##\<*J(5AL*)F32C 4C-_3[V3XEREA"E3:";XQ[K!5F0 M(&@<0"- #F1N!A0GOU0^?ENP.&=8;25 8]E;Z,S^C6?6X\Y[%A MFW+G)J1U^^%U)*/")*JC(!#R(2UZI%GY,OT:_0I%L)E?35B_R7/*26E(9U.L MI >-@8Y]1[HG2(<(8,^HN8-"ET[80;&H!-(R-!UR"EHKZFWY-#:, R+ UG0# M;6F\+.EARHV$U!FQENJH3'05%8?A6=,@>)*^"!B*)FB2H )4+"2&,\?'D)HS M1-_1$&V:L1;B!LW+ Z7G&A#A-:Q3:XH.7_9ZX+ Q #+,!(^*4>=12*F@09TY-UY.<-^I5P9+EA#$06]I!44@/F7TP3EM5:5%-#R;U/)+H"JPS2*?>FI M.%7L"CLE&2AM(0^=^G-Z%8R;I$($1.><+WS#(467$,=I"P"BOS.'\AC@(/$G M;*53>G VG8*VO;?I"G> GDP,@.MQ:SZH1JR7 O5(HU6)SS>[\XKK?A\[GT)**ZE*=VV"A =+[PU))M.++ZC:&Z9 MLJOV?=)[P+[[)_,QJQ4WTEYC(WM*ET6I)]D^EW%T[4N'THL_$[+R7UK%_8:G M7.ODH\]VKUV7"!$Z$J8Z1#(%D8*ZG!PB;).VNVO6_\SE&F B8._ENA5$1;L; M(&X/=R2XN@$C.GRT@>#!@@6UG1\Z)[>R?^$*63,#L;69866 '?,K9 QI4=.R M"!_L"EC(J-S(;CH+5\LF<_) B@U2)Y)E*#"DDI)%0)2. 6!?S7M:@ MRN.U*]3SF)ONOI8EEJT%G>.!681WK485E)4375!:T7'OQ%[.X+&8!HY+CE0R MS:0* X]+U;+*+8\+H&7"ZD"#=Z8@]+Y3R!;> P%=7BT)K3*3JP5*?3>9'Z*_ M(!+*!B&J^"'05BQ\=.EC67%18>9/ 1X^&JG28(D%^I\]L@%7!L:>,M$2<2)C M!L]:G QS&%2(D^J>#*NF-ZZ=W<(*1Z&$6R^ -J47XJ5*ZD '(+[ .1I2V&"1 M77\]]69>P5B_G<,=BV4'#,7B9-'YPU6XDW55N#TE8XS!Y0$R=(!PT"S/WW:7 M15QL/>C)PI[!.U .+9FS5,H>IZSF/-J;XQQ%J..BVR$C08NH6!:;UGQR:&H" MCZ&PQG/$@^71+B(*]%6%L.Q22%/J'* $(4]P 5M3LYP#P&H5GHC@FM% M)J ,%_,I!&=L2<<=QJ+]D!-DU2^P"O1:9B$+2(*M%G>G M]P 3@%CXLV&=AC->8AK#5XZKLFF'.'B232C1RR8(,\Q]#%K? D-,.&#JT?)= M9%R8O"'36%S[499@'IR*6!,6%])[YUHQ:%H3CL>%$5)? #[0EU E@/=5PGP. MK4_1M>Y=(N=2DYVTR5@$0\RFD,D[2'$J[0#A5.067*G4@H[UXHO^_*=(9C!T M.AWU3/NHW^L<8Y+HM8A52L$T0MY$9_TP(R['P@!$0#:5_4@J+&,4AI24@I3Y M*HJ5 %-ERDXHCSI 7(>$3!YSJ.AS04VP@WHW"E2$64JT-7Y&5K0?G(K")2F M*U5+5DCO!3,2[".1$&?G(P<8<0R2KQ*E?)),C#/D- M)P!!$7):#?P1"\>;45D=[H'M!"?$=$N0VJZ(*;6#UJ?R,W*1KDNBH7,=Q?0' MB2'*',I_AY>=()@7PS0HL&[L^$E)*.!$":(",Y-P1HGC J^*/ %[XRB@]#$4 M,GA(Q#[Y^K5@ DB*@*JGE#\5U^#)1.*5$V94'@M"9H9U*S O8$%?57X^4B2D MFF)")-(H'PU#&GDV"^((?DNBAG7)/M18#*F3$ZL_).<3+55GU22BT[DLHB]^ M\LUZS\/EV4/2]")A606#WTT^15WR*7HFG\+D4YA\BEO5FKDCM*T%"XG]2'QB M]Z,0(S2A]1'T1A#K5ZAU%.9,*8GX-#V$/P_EDY\QK@RG4YZ.R_'8_Q;TO4AX MW@\?SHH,:?TWE8<\S6),OY4!>AGZQ<,,#S\V#; =$Q]VB=)Z0*F9T,$"%$V- ME*@:0V#-5[-%[?_H>1M/&?)ZC$:8%$MG'B];MHJB] ),#BXTK6[3!A[&_\K; MOZ(5%-M=-#"4D93ODS+Y\*3FME0CY8G$_=&N2-GBG:&R,N&0.5FBU"M0)-)J M]03J%90Z"XI!5I4N#D;6?V3 G"I]2 ^1EHXG#1AY^E=CTK8&6:H=]'-',RT8 M3WPYB%RW9A17CLJA&/DP;X9TA[O>(SL*IK-SA8M0)ZTW&D*GG7OKZX4ZX0Q M(2\2\X$T*)DR2SC!0$]CK^8N,&@#A2#",ZT<$W@TBF#7!!*P3X6C!>5U9/E\ MWI6 *3,O>5<6@09\'0*WH4 9Q63H.\C>G-O!ZK2V/.)AS@#"W!!T+4]8D=02 MGXJ"?&[ O]%!4+)C\8:;5W8]GRLMP$2O-VRBOGI^^K7 MYEC++3]RRLRE=,#YC,X+\EGPWTA%@4A3-(T*-[)TI!:G 4MC_#DA]<7 MFE%@T0.P;CI7B7+KVDD,L'DKW8SPMY;%7TI6H8J. MP#ORP%9PD6XH7ZE5D42FO[N _%4?&EWH*&TG?)!N")/4I[X^A4O@(\(#-R/M(\VAM*E?Q\.ZI1/A2 M(H!D%0?\0#@R:5( N !N7%*K&@1@(9VC0)P?:7.J$\F:I*0P+25FX:-7Z2?K MA2^#-D@NUA<4+B_(QS94]4ZWC?,2Z"GC]-?3@O\^$BQ>P]AJ\%.5GO,5O>M7 MZ'K!ZCP02R$>Q%JLDU>0ZZZ?WW\I-->-+0PH$]:VL+AW#KJ5K_P)*$T63KVI M&5G.YO;(_,^%+R>Q6HUC;C_3;G2Z/]KELG%9NZ95K''HXH, 2(*:CM#SH_56 MK=3&G/:X5I^)S!U'B0BQ2D_^2(M8)NFHXEOES1*'![.&=54ZXN['#/AT0:!W M 7KIN/)$X)=5*C-EE[OYX8CM4/ [E47=;'1 O44H-1M'S1^QX;F4JW0D\T$, MJC,;@?A=Q8D+$I5U3'I'(LLC &P,[N(=%7)"M%L< MW*0H%$3-6I[I4KG&P)KFU:7N,+EFC5)='@)#.'P"Z:^7'ED4FTQ1LZG85^G^ ME:J?YW6TDC9SJZ[!,IT\_J( FT\$ MSCR3)>9 0DF^B@$("]0G<5UAAKW!*TO%52"J2!6K+@GWDVE4^H9C7@ EY#*; MFX84RHX:%J7JE N*5Q3\&?ER8)]9X,3!+/UFMI23@&:E4^8KVC*H^?RC[RF-L MC>AM"'87>0#$>2_8F2#?U]R'H8 M2K3SS(0;#%8RG5%W'"#K#&6SK5R#I%K?(#2P6S\2!HA-;)N A$5E63DK8)>C M:ZDZ2/[$WOF!ND@EM]==5P32'E)\J9O/=VM"[(VCCD52>'9V,+8M>-]9!.>EDB;22Z7D-*%AFRGA6J M,5[ZD U0[Y W,I"'9BA[-+ J@ _XGN\4 0S0-+C9@ D-UR4T?&Q"PR8T;$+# MMT86OI#>H"IT44N]C*,0/G-YP#YW5'M/P0-/)&[L3Y4ZP7J4:C @B\XU>&C7 MJ8)7Z>]Z&KPC*I@9ZKY![2_]C+ MF$VC6SN6+2%PV;%@V\W*V"5*%MN 6YL(+AA!VYGZC18&0TF*48\Z3#TINGB@ M+35-"UOU3SB(5VH>027A[21-%*VK9=KL=7C45LE9Z/JRL<(FX0)=+/QRG_(ZU)&(6) M]8X#?S'%<&IUOM(HK'8$LFV K6!CS,I7&<9)DDVF*N':83M$FGRJ"@4;?T/Z,1C3:(50*]G/(>7'AJ.('-D.\ %'%56U@F:DY&LM'TM1(K305][$ M1'8^X9,G-UWU3''JE*,:>MBY%<\@!J3F[7347+J7A)[*V^/:UBB*/+1S\7G8 MW(CZ RM<%D/H;A6;$[@.F7UU?ZY=M-LE*QCO:4^Q)ZYJ$&1K#745'2!Z1\7: M&$\Y.;C<; );$ 6Y*,$ .S=/R3-P$IUZ&6VJO4I:PCJEW:NDJWT]J;YB+8$F ME<*HE'6N]5 BK4D=:IJ *H"I90&MT9MRL=O^';.P-"CZ5]8GV7N_2 /3EQ)0 MDDLFK8=MDX@'?V+F0?PHK4WX&11,&0HQ%%HYLE"SD9:B4MTM=4.7=JLI3"K/(^GS7%]+.T72N MY4K7\7QQQ_U1INMF.R ='H=O\PP%RA!@2MY;$D:?,I7,8:)$4LJ4&(". .;& M=YEO3 .CVD+I1'=EP=W6HC7/?NO.%\Y38ZF%9E;EIJXV3JL6PKGTE>3&F7* 2/7USFL%P98 '><:M,*5QL>Z9X1F M\96R,%0C[8@B>,BERC:B3&.'6PN2]HJ7X-$YSQ/PI7;2AZ%5?/O:-O(8_+PH M6F'1V(\\DY?OY<%(2!/=58-W1&8^RRB/J !_)-)PBXW^V:'$2&&B+T'Q%'JJ*6^MY3]B[G M]B+AHN%,E"#;1B)M< G\(O5J@Q<9+)1:1S=>8JJ1E%;JBIA6HW_$UYH1=^"N M14Q7"NPO,8 %1H:D3!PH89=UC7*A>Q7+.]9X-D4#D0V)5@-SU8"?6LVF1.T4 M[''J,9&W%IN;Z(9BV!A#ESU@\XP@)3W8_,A?*^[U3<_S3<_ MGWOT!=4$::QT'&6MM+HO!&= M;I>^"[93UG%:_8OR27IR?0'U2N--/\GN@PH[Q,=I+ZI0M,9#<36?RH^VW8+TQ-LK'< M#D5SD@TF?JKMIK0%K6.SK=I)XT=JT!)C^V=;QA"DPQDU*W71'-W#(Z_A0BW< M'_J%[YS5,FG"3O)B 0V6^%N^F+.BYJ]<6'I^5N3F/4N>^[$OAK ?R0OB- MPK6_^,;[X@VF$6QV![H.K,@FI19]M01&NKK-E5F618)DCNK"5;^W'M,+S.\* M0]F\.V]?/1=D(<7]#\[T Z!Q!+=\0EO97AQ;Y54IMEHJ4HW:1$/MG@^ M]^9R*_B&UD"HTTNKJB#MM\E-&;"OGG4>7OMQ%,I+$L_S.'A%KQ/9AZ_0IZ*P M?(MB5]T;AFW]<+?R,)Q&27J(IXQR!(WD85ET;N6.?WC.A"-R\$I]5-V5(C,E MDJ2H0*&>9T%Q:LD=P0H+7^1 C#*JU5"S8E>ZP'=5!@ ISOA11%.\=B05[C@$ M(3::V>5SO4A/I\WH$.4< QG2IRPZ4C5D'GQE3\:RUQ6K#%1&@_*YRB7K.^1K M98ITH5CEP3&\L9=*FK>Y%S>4&",5494/(;@'&[G-L(9>=[!2I5/+ MN-):3LJZ%TJ60>I96*<6QV*E.-AX3 K?7N4T+O-4;3)Y@F?FC9<6H M]>=5:&A=E9IVMWJ-XQ\5:/5A[.(R(/(!PP !7DE%]^J0LU!=:@1V;Q;+5A9\ MMX[BD:K\&UD1(HBI[K@0L(&%LGRU$L%NA>V<-([FME-"57Y5T]KWA=ZA[^Y, M%O5"2F:1S'*AV/=,9]_B/,HS;O?8-75.I755KTJ^LET<+MW8JF:2" MQ;Y/^7.RM2B6=H74.FR6 /';W$V5+;[;DY]6%_G?WG_^\O'TZ\7G3\\BN'*/\%C: M*N)C^'G[ 3*PF#Z($8B?2^XWA['<_<>>[#)"\7ORJU/L6G#Z2T#PD/WGX3D_ M89=_[@OEYOLQ9NQD<<)M6:36B;V6L0[?'PX3/'BI:@ XHFIH87"@*H\6A[QWP/ O]%UTM2%C?! M ,W+"=6[8Z2-#&!LH99?!JBRR>7%JUHAL:I=:,"!7:K;:MKEI,6BPPW;0V>1 MEIINJK6,AG /T=UR"M&-GVL@ND\;EMY[??_%]D7Y!@*2Q20M],!N(LB42L?L MQUO1<9G6H"6^K-&;:1/ 13D/<)DV(S;Q@*1FO M(I9'5-$&C)_"J;"^F#K54*8 #E5<4/^K@/4T'[]5!D/<:UOGWL3_PTV<@PU\X M+TF@"+EC*=^<(FRSHLPF41#XU"(3U.7HYJ$4 MCO*_DRE),/I[SQ>YN6WVST?U10USE^P^!SE&[T;L%/!MPE;\KFFM4 0(^QF__ZS;D MKX#<6\'S4/"N KZ% =;>5AI-5R+8AV*DU6@])BT^+:W=>;ZJ7)1QFDY_>O7J MYN:FD0BW,8JN7YW&[ACO_'HEO)$3OP)3V7D%8JG5.>F^ JYI'76.CX_Z;=0/ M3YK'K\3W_SUJ'9\-/Q&<=X2%LNKJCX\.&,2_SC:91?Y$DWA5%+!FEFR7?OZUCNWV,WB77& M^OEU7%UU'GXR+8CP=21E M\?(]Q&SQ\NX=2)WU3J0-PVD+9Q&>))U.J]U9Y20YPPWD?8GUCJZM$^O/QE7C M#'W)G$#>ZG2;Q(.GV'$,N%!_7#W4:;;SS"0G'CA@[Q]^_AZ(F2KO:#>;[>VS MP\3WO$#<'].E]W>2*=IK,,6C0&N+K'&TLZP!'W-K%CZC@3UGT9<2F.Z=U&Q2 M_5=/]>^;5'^3ZK^+J?Z;\,_=(:Z9C(AZ==G@9>NB0:Z!OCL3,>.^.Q>VI= ML+V6@;1ONF!W*[I@O]DS9M(NL,8Z9M+^^ YZ>\X4>WID6$A$2G67V^KW4;QO M;5,ETCIJ]IK-54B+BE[\B?4^XXO9BCM6.'9PFHV CO,*47;JL^->^?;U"Z#R MRDF9JRAD.N1%Z#;HI5]%**X=C@)PPQ>Z2Z?PZB/-&7+;5DRQV6I;8D6;0/I%G:TQGUC;C$CMSD1W*XR_\[)W6L]]C"]077PJ5<5:&3+31FUY-G)1!)C0Q\*NML%';^E M;-R]:G)Y5U9*:9+[I:ATFL\R#T7FGU@R'Z4:;28I97?SZZ?3KGU_.K_:XQ% /OO'=E]2+,.^6MU*'=GYQY"=I M[,B^@UZ&M_0X64+M^Z@1.A4F<.&P[,Z.K<5AFH$8.\%0=<6BW'G5OAWKF#-L MR47CR3MG_A%>+8J!'Z/S/L:T?K(^@=Y2]-CJJP*"[6_YD0I#-UP->F=RW JU MH9N>\^!NM=B2.1)J>=W\H-_(_-4:.AS,6)?R\T'[8,5E=3:ZJL=H,[Q*)MZG MSU^^_O;7^=57Z_+B\MPZ^_SQ\O33_[O#]C1$\31$<9?5_%SP\)P8\I?93]K9 ML%(Z*V6R65#>5C TMX^K#/AKGMR]D5^BS4#0Y1I-&(:O2U698CTV1"I MT0F-66W,ZE7,ZE,GIAO% &Y_^<$W/S3:JY&@1H(:,MBN:#)BR=!C;>CQ;J/Z M2H1^)(/8_P-V"'_2#&S-N,ZO>R@9UV2#\S=GJNLB_WDEW%BD3CPS'& XH#[V M][!,QG1+@>OB52Q^.%K9)K\[?_0)>GM].+WZ>E@D!2[MUK5>+M[C=^'JM-;, M<(./;UX1O/_KS:MQ.@G>_M?_!U!+ 0(4 Q0 ( +J :56M;A&B@0@ -$[ M - " 0 !E>%\T,S,Q,C,N:'1M4$L! A0#% @ MNH!I590:@?&E" [SP T ( !K @ &5X7S0S,S$R-"YH M=&U02P$"% ,4 " "Z@&E5YX^SKM8$ #X%@ #0 @ %\ M$0 97A?-#,S,3(U+FAT;5!+ 0(4 Q0 ( +J :549-/4MY@0 #X7 - M " 7T6 !E>%\T,S,Q,C8N:'1M4$L! A0#% @ NH!I M57I4+I4''P "ZD T ( !CAL &5X7S0T,#8P,"YH=&U0 M2P$"% ,4 " "Z@&E5Q;8XM%P1 "/U $0 @ ' .@ M;G=P>"TR,#(R,#DS,"YX"TR,#(R,#DS,%]C86PN>&UL4$L! A0# M% @ NH!I5:%\ HF60 )ZP% !4 ( !^5@ &YW<'@M M,C R,C Y,S!?9&5F+GAM;%!+ 0(4 Q0 ( +J :57O2P1(Z50 -B;! 5 M " <*9 !N=W!X+3(P,C(P.3,P7VQA8BYX;6Q02P$"% ,4 M " "Z@&E5%?7R3V9# #=&08 %0 @ '>[@ ;G=P>"TR M,#(R,#DS,%]P&UL4$L! A0#% @ NH!I58%T$H Y*0$ 8;(1 !0 M ( !=S(! &YW<'@R,#(R,#DS,%\Q,'$N:'1M4$L%!@ + - L M ( .); @ $! end