0000006845-24-000254.txt : 20241004 0000006845-24-000254.hdr.sgml : 20241004 20241004141622 ACCESSION NUMBER: 0000006845-24-000254 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 80 CONFORMED PERIOD OF REPORT: 20240831 FILED AS OF DATE: 20241004 DATE AS OF CHANGE: 20241004 FILER: COMPANY DATA: COMPANY CONFORMED NAME: APOGEE ENTERPRISES, INC. CENTRAL INDEX KEY: 0000006845 STANDARD INDUSTRIAL CLASSIFICATION: GLASS PRODUCTS, MADE OF PURCHASED GLASS [3231] ORGANIZATION NAME: 04 Manufacturing IRS NUMBER: 410919654 STATE OF INCORPORATION: MN FISCAL YEAR END: 0301 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-06365 FILM NUMBER: 241354443 BUSINESS ADDRESS: STREET 1: 4400 WEST 78TH STREET STREET 2: SUITE 520 CITY: MINNEAPOLIS STATE: MN ZIP: 55435 BUSINESS PHONE: 6128351874 MAIL ADDRESS: STREET 1: 4400 WEST 78TH STREET STREET 2: SUITE 520 CITY: MINNEAPOLIS STATE: MN ZIP: 55435 FORMER COMPANY: FORMER CONFORMED NAME: APOGEE ENTERPRISES INC DATE OF NAME CHANGE: 19920703 FORMER COMPANY: FORMER CONFORMED NAME: HARMON GLASS CO INC DATE OF NAME CHANGE: 19720623 10-Q 1 apog-20240831.htm 10-Q apog-20240831
0000006845false2025Q2March 1P2YP3Yxbrli:sharesiso4217:USDiso4217:USDxbrli:sharesapog:drawdownapog:lineOfCreditxbrli:pureapog:acquisitionHolidayapog:quarterapog:arrangementapog:segment00000068452024-03-032024-08-3100000068452024-10-0100000068452024-08-3100000068452024-03-0200000068452024-06-022024-08-3100000068452023-05-282023-08-2600000068452023-02-262023-08-2600000068452023-02-2500000068452023-08-260000006845us-gaap:CommonStockMember2024-03-020000006845us-gaap:AdditionalPaidInCapitalMember2024-03-020000006845us-gaap:RetainedEarningsMember2024-03-020000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-020000006845us-gaap:RetainedEarningsMember2024-03-032024-06-0100000068452024-03-032024-06-010000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-03-032024-06-010000006845us-gaap:CommonStockMember2024-03-032024-06-010000006845us-gaap:AdditionalPaidInCapitalMember2024-03-032024-06-010000006845us-gaap:CommonStockMember2024-06-010000006845us-gaap:AdditionalPaidInCapitalMember2024-06-010000006845us-gaap:RetainedEarningsMember2024-06-010000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-0100000068452024-06-010000006845us-gaap:RetainedEarningsMember2024-06-022024-08-310000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-06-022024-08-310000006845us-gaap:CommonStockMember2024-06-022024-08-310000006845us-gaap:AdditionalPaidInCapitalMember2024-06-022024-08-310000006845us-gaap:CommonStockMember2024-08-310000006845us-gaap:AdditionalPaidInCapitalMember2024-08-310000006845us-gaap:RetainedEarningsMember2024-08-310000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2024-08-310000006845us-gaap:CommonStockMember2023-02-250000006845us-gaap:AdditionalPaidInCapitalMember2023-02-250000006845us-gaap:RetainedEarningsMember2023-02-250000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-02-250000006845us-gaap:RetainedEarningsMember2023-02-262023-05-2700000068452023-02-262023-05-270000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-02-262023-05-270000006845us-gaap:CommonStockMember2023-02-262023-05-270000006845us-gaap:AdditionalPaidInCapitalMember2023-02-262023-05-270000006845us-gaap:CommonStockMember2023-05-270000006845us-gaap:AdditionalPaidInCapitalMember2023-05-270000006845us-gaap:RetainedEarningsMember2023-05-270000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-05-2700000068452023-05-270000006845us-gaap:RetainedEarningsMember2023-05-282023-08-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-05-282023-08-260000006845us-gaap:CommonStockMember2023-05-282023-08-260000006845us-gaap:AdditionalPaidInCapitalMember2023-05-282023-08-260000006845us-gaap:CommonStockMember2023-08-260000006845us-gaap:AdditionalPaidInCapitalMember2023-08-260000006845us-gaap:RetainedEarningsMember2023-08-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-08-260000006845us-gaap:TransferredAtPointInTimeMember2024-06-022024-08-310000006845us-gaap:TransferredAtPointInTimeMember2023-05-282023-08-260000006845us-gaap:TransferredAtPointInTimeMember2024-03-032024-08-310000006845us-gaap:TransferredAtPointInTimeMember2023-02-262023-08-260000006845apog:TransferredOverTimeInputMethodMember2024-06-022024-08-310000006845apog:TransferredOverTimeInputMethodMember2023-05-282023-08-260000006845apog:TransferredOverTimeInputMethodMember2024-03-032024-08-310000006845apog:TransferredOverTimeInputMethodMember2023-02-262023-08-260000006845apog:TransferredOverTimeOutputMethodMember2024-06-022024-08-310000006845apog:TransferredOverTimeOutputMethodMember2023-05-282023-08-260000006845apog:TransferredOverTimeOutputMethodMember2024-03-032024-08-310000006845apog:TransferredOverTimeOutputMethodMember2023-02-262023-08-260000006845us-gaap:TradeAccountsReceivableMember2024-08-310000006845us-gaap:TradeAccountsReceivableMember2024-03-020000006845apog:AccountsReceivableConstructionContractsMember2024-08-310000006845apog:AccountsReceivableConstructionContractsMember2024-03-0200000068452024-09-012024-08-3100000068452025-08-312024-08-3100000068452026-08-302024-08-310000006845apog:MunicipalandCorporateBondsMember2024-08-310000006845apog:MunicipalandCorporateBondsMember2024-03-020000006845us-gaap:InterestRateSwapMemberus-gaap:DesignatedAsHedgingInstrumentMember2024-08-310000006845us-gaap:CommodityOptionMemberus-gaap:DesignatedAsHedgingInstrumentMember2024-08-310000006845us-gaap:ForeignExchangeForwardMemberus-gaap:DesignatedAsHedgingInstrumentMember2024-08-310000006845us-gaap:FairValueInputsLevel1Member2024-08-310000006845us-gaap:FairValueInputsLevel2Member2024-08-310000006845us-gaap:FairValueInputsLevel1Memberus-gaap:ForeignExchangeForwardMember2024-08-310000006845us-gaap:FairValueInputsLevel2Memberus-gaap:ForeignExchangeForwardMember2024-08-310000006845us-gaap:ForeignExchangeForwardMember2024-08-310000006845us-gaap:FairValueInputsLevel1Memberus-gaap:InterestRateSwapMember2024-08-310000006845us-gaap:FairValueInputsLevel2Memberus-gaap:InterestRateSwapMember2024-08-310000006845us-gaap:InterestRateSwapMember2024-08-310000006845us-gaap:FairValueInputsLevel1Memberus-gaap:CommodityOptionMember2024-08-310000006845us-gaap:FairValueInputsLevel2Memberus-gaap:CommodityOptionMember2024-08-310000006845us-gaap:CommodityOptionMember2024-08-310000006845us-gaap:FairValueInputsLevel1Member2024-03-020000006845us-gaap:FairValueInputsLevel2Member2024-03-020000006845us-gaap:FairValueInputsLevel1Memberus-gaap:ForeignExchangeForwardMember2024-03-020000006845us-gaap:FairValueInputsLevel2Memberus-gaap:ForeignExchangeForwardMember2024-03-020000006845us-gaap:ForeignExchangeForwardMember2024-03-020000006845us-gaap:FairValueInputsLevel1Memberus-gaap:InterestRateSwapMember2024-03-020000006845us-gaap:FairValueInputsLevel2Memberus-gaap:InterestRateSwapMember2024-03-020000006845us-gaap:InterestRateSwapMember2024-03-020000006845us-gaap:FairValueInputsLevel1Memberus-gaap:CommodityOptionMember2024-03-020000006845us-gaap:FairValueInputsLevel2Memberus-gaap:CommodityOptionMember2024-03-020000006845us-gaap:CommodityOptionMember2024-03-020000006845apog:UnsecuredSeniorCreditFacilityMemberus-gaap:LineOfCreditMember2024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberus-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberus-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-07-192024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberapog:TermLoanFacilityMemberus-gaap:LineOfCreditMember2024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberapog:RevolvingCreditFacilityCADMemberus-gaap:LineOfCreditMember2024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberapog:TermLoanFacilityMemberus-gaap:LineOfCreditMember2024-07-192024-07-190000006845apog:UnsecuredSeniorCreditFacilityMemberus-gaap:LineOfCreditMember2024-07-192024-07-190000006845us-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-08-310000006845apog:UnsecuredSeniorCreditFacilityMemberapog:TermLoanFacilityMemberus-gaap:LineOfCreditMember2024-08-310000006845apog:WellsFargoBankN.A.Memberus-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-08-310000006845apog:BankOfMontrealMemberus-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-08-310000006845apog:WellsFargoBankN.A.Memberus-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMember2024-03-020000006845apog:BankOfMontrealMemberapog:CanadianCreditFacilitiesMemberus-gaap:LineOfCreditMember2024-03-020000006845apog:LenderFeesMember2024-06-022024-08-310000006845apog:ThirdPartyFeesMember2024-06-022024-08-310000006845us-gaap:LineOfCreditMember2024-08-310000006845us-gaap:RevolvingCreditFacilityMemberus-gaap:LineOfCreditMemberapog:AcquisitionHolidayConditionMember2024-08-310000006845us-gaap:LineOfCreditMemberus-gaap:BaseRateMembersrt:MinimumMember2024-03-032024-08-310000006845us-gaap:LineOfCreditMemberus-gaap:BaseRateMembersrt:MaximumMember2024-03-032024-08-310000006845us-gaap:LineOfCreditMemberapog:TermSOFRAndCORRAMembersrt:MinimumMember2024-03-032024-08-310000006845us-gaap:LineOfCreditMemberapog:TermSOFRAndCORRAMembersrt:MaximumMember2024-03-032024-08-310000006845us-gaap:LineOfCreditMemberapog:IncrementalTermSOFRAndCORRAAdjustmentMembersrt:MinimumMember2024-03-032024-08-310000006845us-gaap:LineOfCreditMemberapog:IncrementalTermSOFRAndCORRAAdjustmentMembersrt:MaximumMember2024-03-032024-08-310000006845apog:IndustrialRevenueBondsMember2024-08-310000006845apog:August2025Member2024-03-032024-08-310000006845apog:August2025Member2024-08-310000006845apog:September2025Member2024-03-032024-08-310000006845apog:September2025Member2024-08-3100000068452022-12-012022-12-310000006845apog:ShareRepurchaseProgramMember2024-03-032024-08-310000006845apog:ShareRepurchaseProgramMember2023-02-262023-08-260000006845apog:ShareRepurchaseProgramMember2023-02-262024-06-010000006845apog:ShareRepurchaseProgramMember2024-08-310000006845us-gaap:RestrictedStockMember2024-03-032024-08-310000006845us-gaap:PerformanceSharesMember2024-03-032024-08-310000006845us-gaap:RestrictedStockMembersrt:MinimumMember2024-03-032024-08-310000006845us-gaap:RestrictedStockMembersrt:MaximumMember2024-03-032024-08-310000006845us-gaap:PerformanceSharesMembersrt:MinimumMember2024-08-310000006845us-gaap:PerformanceSharesMembersrt:MaximumMember2024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalFramingSegmentMember2024-06-022024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalFramingSegmentMember2023-05-282023-08-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalFramingSegmentMember2024-03-032024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalFramingSegmentMember2023-02-262023-08-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2024-06-022024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2023-05-282023-08-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2024-03-032024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2023-02-262023-08-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2024-06-022024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2023-05-282023-08-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2024-03-032024-08-310000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2023-02-262023-08-260000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2024-06-022024-08-310000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2023-05-282023-08-260000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2024-03-032024-08-310000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2023-02-262023-08-260000006845us-gaap:IntersegmentEliminationMember2024-06-022024-08-310000006845us-gaap:IntersegmentEliminationMember2023-05-282023-08-260000006845us-gaap:IntersegmentEliminationMember2024-03-032024-08-310000006845us-gaap:IntersegmentEliminationMember2023-02-262023-08-260000006845apog:ArchitecturalFramingSegmentMember2024-06-022024-08-310000006845apog:ArchitecturalFramingSegmentMember2023-05-282023-08-260000006845apog:ArchitecturalFramingSegmentMember2024-03-032024-08-310000006845apog:ArchitecturalFramingSegmentMember2023-02-262023-08-260000006845apog:ArchitecturalGlassMember2024-06-022024-08-310000006845apog:ArchitecturalGlassMember2023-05-282023-08-260000006845apog:ArchitecturalGlassMember2024-03-032024-08-310000006845apog:ArchitecturalGlassMember2023-02-262023-08-260000006845apog:ArchitecturalServicesSegmentMember2024-06-022024-08-310000006845apog:ArchitecturalServicesSegmentMember2023-05-282023-08-260000006845apog:ArchitecturalServicesSegmentMember2024-03-032024-08-310000006845apog:ArchitecturalServicesSegmentMember2023-02-262023-08-260000006845apog:LargeScaleOpticalMember2024-06-022024-08-310000006845apog:LargeScaleOpticalMember2023-05-282023-08-260000006845apog:LargeScaleOpticalMember2024-03-032024-08-310000006845apog:LargeScaleOpticalMember2023-02-262023-08-260000006845us-gaap:CorporateAndOtherMember2024-06-022024-08-310000006845us-gaap:CorporateAndOtherMember2023-05-282023-08-260000006845us-gaap:CorporateAndOtherMember2024-03-032024-08-310000006845us-gaap:CorporateAndOtherMember2023-02-262023-08-260000006845apog:ProjectFortifyMember2024-06-022024-08-310000006845us-gaap:CostOfSalesMemberapog:ProjectFortifyMember2024-06-022024-08-310000006845us-gaap:SellingGeneralAndAdministrativeExpensesMemberapog:ProjectFortifyMember2024-06-022024-08-310000006845apog:ProjectFortifyMember2024-03-032024-08-310000006845us-gaap:CostOfSalesMemberapog:ProjectFortifyMember2024-03-032024-08-310000006845us-gaap:SellingGeneralAndAdministrativeExpensesMemberapog:ProjectFortifyMember2024-03-032024-08-310000006845apog:ProjectFortifyMember2023-02-262024-08-310000006845apog:ProjectFortifyMembersrt:MinimumMember2024-08-310000006845apog:ProjectFortifyMembersrt:MaximumMember2024-08-310000006845us-gaap:EmployeeSeveranceMemberapog:ProjectFortifyMembersrt:MinimumMember2024-08-310000006845us-gaap:EmployeeSeveranceMemberapog:ProjectFortifyMembersrt:MaximumMember2024-08-310000006845us-gaap:ContractTerminationMemberapog:ProjectFortifyMember2024-08-310000006845us-gaap:OtherRestructuringMemberapog:ProjectFortifyMembersrt:MinimumMember2024-08-310000006845us-gaap:OtherRestructuringMemberapog:ProjectFortifyMembersrt:MaximumMember2024-08-310000006845apog:ProjectFortifyMembersrt:MinimumMember2024-03-020000006845apog:ProjectFortifyMembersrt:MaximumMember2024-03-020000006845us-gaap:EmployeeSeveranceMemberapog:ArchitecturalFramingSegmentMember2024-06-022024-08-310000006845us-gaap:EmployeeSeveranceMemberapog:ArchitecturalServicesSegmentMember2024-06-022024-08-310000006845us-gaap:EmployeeSeveranceMemberus-gaap:CorporateAndOtherMember2024-06-022024-08-310000006845us-gaap:EmployeeSeveranceMember2024-06-022024-08-310000006845us-gaap:ContractTerminationMemberapog:ArchitecturalFramingSegmentMember2024-06-022024-08-310000006845us-gaap:ContractTerminationMemberapog:ArchitecturalServicesSegmentMember2024-06-022024-08-310000006845us-gaap:ContractTerminationMemberus-gaap:CorporateAndOtherMember2024-06-022024-08-310000006845us-gaap:ContractTerminationMember2024-06-022024-08-310000006845us-gaap:OtherRestructuringMemberapog:ArchitecturalFramingSegmentMember2024-06-022024-08-310000006845us-gaap:OtherRestructuringMemberapog:ArchitecturalServicesSegmentMember2024-06-022024-08-310000006845us-gaap:OtherRestructuringMemberus-gaap:CorporateAndOtherMember2024-06-022024-08-310000006845us-gaap:OtherRestructuringMember2024-06-022024-08-310000006845us-gaap:EmployeeSeveranceMemberapog:ArchitecturalFramingSegmentMember2024-03-032024-08-310000006845us-gaap:EmployeeSeveranceMemberapog:ArchitecturalServicesSegmentMember2024-03-032024-08-310000006845us-gaap:EmployeeSeveranceMemberus-gaap:CorporateAndOtherMember2024-03-032024-08-310000006845us-gaap:EmployeeSeveranceMember2024-03-032024-08-310000006845us-gaap:ContractTerminationMemberapog:ArchitecturalFramingSegmentMember2024-03-032024-08-310000006845us-gaap:ContractTerminationMemberapog:ArchitecturalServicesSegmentMember2024-03-032024-08-310000006845us-gaap:ContractTerminationMemberus-gaap:CorporateAndOtherMember2024-03-032024-08-310000006845us-gaap:ContractTerminationMember2024-03-032024-08-310000006845us-gaap:OtherRestructuringMemberapog:ArchitecturalFramingSegmentMember2024-03-032024-08-310000006845us-gaap:OtherRestructuringMemberapog:ArchitecturalServicesSegmentMember2024-03-032024-08-310000006845us-gaap:OtherRestructuringMemberus-gaap:CorporateAndOtherMember2024-03-032024-08-310000006845us-gaap:OtherRestructuringMember2024-03-032024-08-310000006845apog:ArchitecturalFramingSegmentMember2024-03-020000006845apog:ArchitecturalServicesSegmentMember2024-03-020000006845us-gaap:CorporateAndOtherMember2024-03-020000006845apog:ArchitecturalFramingSegmentMember2024-08-310000006845apog:ArchitecturalServicesSegmentMember2024-08-310000006845us-gaap:CorporateAndOtherMember2024-08-310000006845apog:UWIntercoLLCMemberus-gaap:SubsequentEventMember2024-09-232024-09-23

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 August 31, 2024
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-6365
_________________________________ 
APOGEE ENTERPRISES, INC.
(Exact name of registrant as specified in its charter)
 _________________________________
Minnesota41-0919654
(State or other jurisdiction of incorporation or organization)(I.R.S. Employer Identification No.)
4400 West 78th Street, Suite 520MinneapolisMinnesota55435
(Address of principal executive offices)(Zip Code)
Registrant’s telephone number, including area code: (952835-1874
Not Applicable
(Former name, former address and former fiscal year, if changed since last report)
_________________________________ 
Securities registered pursuant to Section 12(b) of the Act:
Title of each classTrading Symbol(s)Name of each exchange on which registered
Common stock, par value $0.33 1/3 per shareAPOG
The Nasdaq Stock 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.    x  Yes    o  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 during the preceding 12 months (or for such shorter period that the registrant was required to submit such files).     x  Yes    o  No
Indicate by check mark whether the registrant is a large accelerated filer, an accelerated filer, a non-accelerated filer, 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
x
  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    x  No
As of October 1, 2024, 21,943,016 shares of the registrant’s common stock, par value $0.33 1/3 per share, were outstanding.



APOGEE ENTERPRISES, INC. AND SUBSIDIARIES
 
3

PART I. FINANCIAL INFORMATION
Item 1.Financial Statements

CONSOLIDATED BALANCE SHEETS

(Unaudited)
(In thousands, except stock data)August 31, 2024March 2, 2024
Assets
Current assets
Cash and cash equivalents$51,024 $37,216 
Receivables, net
177,146 173,557 
Inventories, net79,591 69,240 
Contract assets49,285 49,502 
Other current assets36,742 29,124 
Total current assets393,788 358,639 
Property, plant and equipment, net of accumulated depreciation of $460,167 and $445,017
240,627 244,216 
Operating lease right-of-use assets41,886 40,221 
Goodwill129,119 129,182 
Intangible assets, net64,547 66,114 
Other non-current assets47,125 45,692 
Total assets$917,092 $884,064 
Liabilities and Shareholders’ Equity
Current liabilities
Accounts payable$86,035 $84,755 
Accrued compensation and benefits40,901 53,801 
Contract liabilities41,655 34,755 
Operating lease liabilities12,661 12,286 
Other current liabilities57,597 59,108 
Total current liabilities238,849 244,705 
Long-term debt62,000 62,000 
Non-current operating lease liabilities33,323 31,907 
Non-current self-insurance reserves32,055 30,552 
Other non-current liabilities44,443 43,875 
Commitments and contingent liabilities (Note 6)
Shareholders’ equity
Junior preferred stock of $1.00 par value; authorized 200,000 shares; zero issued and outstanding
  
Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 21,945,986 and 22,089,265, respectively
7,315 7,363 
Additional paid-in capital155,883 152,818 
Retained earnings373,458 340,375 
Accumulated other comprehensive loss(30,234)(29,531)
Total shareholders’ equity506,422 471,025 
Total liabilities and shareholders’ equity$917,092 $884,064 
See accompanying notes to consolidated financial statements.

4

CONSOLIDATED RESULTS OF OPERATIONS
(Unaudited)
Three Months EndedSix Months Ended
(In thousands, except per share data)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net sales$342,440 $353,675 $673,956 $715,388 
Cost of sales245,119 258,304 477,780 527,031 
Gross profit97,321 95,371 196,176 188,357 
Selling, general and administrative expenses55,356 54,818 112,830 114,037 
Operating income41,965 40,553 83,346 74,320 
Interest expense, net1,140 2,230 1,590 4,266 
Other income, net290 4,900 433 4,612 
Earnings before income taxes41,115 43,223 82,189 74,666 
Income tax expense10,549 9,896 20,612 17,763 
Net earnings$30,566 $33,327 $61,577 $56,903 
Basic earnings per share$1.40 $1.54 $2.83 $2.61 
Diluted earnings per share$1.40 $1.52 $2.80 $2.57 
Weighted average basic shares outstanding21,762 21,708 21,793 21,813 
Weighted average diluted shares outstanding21,875 21,962 21,985 22,105 
See accompanying notes to consolidated financial statements.

5

CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS
(Unaudited)
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net earnings$30,566 $33,327 $61,577 $56,903 
Other comprehensive earnings (loss):
Unrealized gain (loss) on marketable securities, net of $30, $(8), $29 and $25 of tax expense (benefit), respectively
114 (28)108 93 
Unrealized (loss) gain on derivative instruments, net of $(257), $66, $107 and $(55) of tax (benefit) expense, respectively
(846)217 350 (180)
Foreign currency translation adjustments(492)508 (1,161)943 
Other comprehensive (loss) earnings (1,224)697 (703)856 
Total comprehensive earnings$29,342 $34,024 $60,874 $57,759 

See accompanying notes to consolidated financial statements.

6

CONSOLIDATED STATEMENTS OF CASH FLOWS
(Unaudited)
Six Months Ended
(In thousands)August 31, 2024August 26, 2023
Operating Activities
Net earnings$61,577 $56,903 
Adjustments to reconcile net earnings to net cash provided by operating activities:
Depreciation and amortization19,664 20,661 
Share-based compensation5,642 4,483 
Deferred income taxes2,016 (4,281)
Loss (gain) on disposal of property, plant and equipment291 (62)
Settlement of New Markets Tax Credit transaction (4,687)
Non-cash lease expense5,844 6,153 
Other, net1,002 (1,121)
Changes in operating assets and liabilities:
Receivables(3,698)(8,238)
Inventories(10,509)5,841 
Contract assets238 8,992 
Accounts payable1,335 (3,529)
Accrued compensation and benefits(12,823)(17,567)
Contract liabilities6,987 4,244 
Operating lease liability(5,748)(6,608)
Accrued income taxes(224)4,292 
Other current assets and liabilities(7,462)(2,912)
Net cash provided by operating activities64,132 62,564 
Investing Activities
Capital expenditures(15,662)(15,018)
Proceeds from sales of property, plant and equipment608 143 
Purchases of marketable securities(2,246)(969)
Sales/maturities of marketable securities1,850 775 
Net cash used by investing activities(15,450)(15,069)
Financing Activities
Proceeds from revolving credit facilities95,201 174,853 
Repayments on revolving credit facilities(95,201)(199,000)
Payments of debt issuance costs(3,485) 
Repurchase of common stock(15,061)(11,821)
Dividends paid(10,821)(10,467)
Other, net(5,266)(3,705)
Net cash used by financing activities(34,633)(50,140)
Effect of exchange rates on cash(241)(405)
Increase (decrease) in cash and cash equivalents13,808 (3,050)
Cash and cash equivalents at beginning of period37,216 21,473 
Cash and cash equivalents at end of period$51,024 $18,423 
Non-cash Activity
Capital expenditures in accounts payable$1,426 $2,493 
See accompanying notes to consolidated financial statements.

7

CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY
(Unaudited)
(In thousands)Common Shares Outstanding
Common Stock at Par Value
Additional Paid-In CapitalRetained EarningsAccumulated Other Comprehensive (Loss) IncomeTotal Shareholders' Equity
Balance at March 2, 202422,089 $7,363 $152,818 $340,375 $(29,531)$471,025 
Net earnings— — — 31,011 — 31,011 
Other comprehensive income, net of tax— — — — 521 521 
Issuance of stock, net of cancellations170 57 (57)— —  
Share-based compensation— — 2,704 — — 2,704 
Share repurchases(242)(81)(1,860)(13,120)— (15,061)
Other share retirements(80)(27)(603)(4,206)— (4,836)
Declared dividends— — — (5,409)— (5,409)
Balance at June 1, 202421,937 $7,312 $153,002 $348,651 $(29,010)$479,955 
Net earnings   30,566  30,566 
Other comprehensive loss, net of tax— — — — (1,224)(1,224)
Issuance of stock, net of cancellations16 5 (5)— —  
Share-based compensation— — 2,938 — — 2,938 
Other share retirements(7)(2)(52)(347)— (401)
Cash dividends— — — (5,412)— (5,412)
Balance at August 31, 202421,946 $7,315 $155,883 $373,458 $(30,234)$506,422 

(In thousands)Common Shares Outstanding
Common Stock at Par Value
Additional Paid-In CapitalRetained EarningsAccumulated Other Comprehensive (Loss) IncomeTotal Shareholders' Equity
Balance at February 25, 202322,224 $7,408 $146,816 $273,740 $(31,556)$396,408 
Net earnings— — — 23,576 — 23,576 
Other comprehensive income, net of tax— — — — 159 159 
Issuance of stock, net of cancellations155 52 13 (9)— 56 
Share-based compensation— — 2,178 — — 2,178 
Share repurchases(120)(40)(829)(4,324)— (5,193)
Other share retirements(40)(14)(281)(1,438)— (1,733)
Cash dividends— — — (5,245)— (5,245)
Balance at May 27, 202322,219 $7,406 $147,897 $286,300 $(31,397)$410,206 
Net earnings— — — 33,327 — 33,327 
Other comprehensive income, net of tax— — — — 697 697 
Issuance of stock, net of cancellations(3)(1)7 (195)— (189)
Share-based compensation— — 2,305 — — 2,305 
Exercise of stock options25 8 (1,192)— — (1,184)
Share repurchases(160)(53)(1,160)(5,415)— (6,628)
Other share retirements(9)(3)(444)(547)— (994)
Cash dividends— — — (5,222)— (5,222)
Balance at August 26, 202322,072 $7,357 $147,413 $308,248 $(30,700)$432,318 

See accompanying notes to consolidated financial statements.

8

NOTES TO CONSOLIDATED FINANCIAL STATEMENTS
(Unaudited)

1. Summary of Significant Accounting Policies

Basis of presentation
The consolidated financial statements of Apogee Enterprises, Inc. (we, us, our or the Company) have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP). The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024. We use the same accounting policies in preparing quarterly and annual financial statements. All adjustments necessary for a fair presentation of quarterly and year to date operating results are reflected herein and are of a normal, recurring nature. The results of operations for the three- and six-month periods ended August 31, 2024 are not necessarily indicative of the results to be expected for the full year.

New accounting standards
In November 2023, the Financial Accounting Standards Board (FASB) issued ASU 2023-07, Improvements to Reportable Segment Disclosures, which expands the required disclosure for reportable segments. This guidance requires entities to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all segment disclosures which are currently required annually. This ASU additionally requires entities to disclose the title and position of the individual or the name of the group or committee identified as its chief operating decision-maker. Such guidance, which is required to be applied retrospectively, is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, although early adoption is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact to our segment disclosures for the year ended March 1, 2025 and future interim periods.

In December 2023, the FASB issued ASU 2023-09, Improvements to Income Tax Disclosures, intended to enhance the transparency and decision-usefulness of income tax disclosures. Such guidance requires entities to provide additional information within their income tax rate reconciliation, including further disclosure of federal, state, and foreign income taxes and to provide more details about these reconciling items if a quantitative threshold is met. This guidance additionally requires expanded disclosure of income taxes paid, including amounts paid for federal, state, and foreign taxes. This ASU, which is required to be applied prospectively, is effective for fiscal years beginning after December 15, 2024, although early adoption and retrospective application is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact on our income tax disclosures, including the processes and controls around the collection of this information.

2.Revenue, Receivables and Contract Assets and Liabilities

Revenue
The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Recognized at shipment$140,518 $152,241 $277,240 $304,895 
Recognized over time (input method)118,683 118,270 235,364 241,651 
Recognized over time (output method)83,239 83,164 161,352 168,842 
Total$342,440 $353,675 $673,956 $715,388 

Receivables
Receivables reflected in the financial statements represent the net amount expected to be collected. An allowance for credit losses is established based on expected losses. Expected losses are estimated by reviewing individual accounts, considering aging, financial condition of the debtor, recent payment history, current and forecasted economic conditions and other relevant factors. Upon billing, aging of receivables is monitored until collection. An account is considered current when it is within agreed upon payment terms. An account is written off when it is determined that the asset is no longer collectible.
9

(In thousands)August 31, 2024March 2, 2024
Trade accounts$108,449 $115,061 
Construction contracts70,672 61,879 
Total receivables179,121 176,940 
Less: allowance for credit losses1,975 3,383 
Receivables, net$177,146 $173,557 

The following table summarizes the activity in the allowance for credit losses for the six-month period ended:
(In thousands)August 31, 2024
Beginning balance$3,383 
Credits charged to costs and expenses(1,414)
Deductions from allowance, net of recoveries13 
Other adjustments(7)
Ending balance$1,975 

Contract assets and liabilities
Contract assets consist of retainage, costs and earnings in excess of billings and other unbilled amounts typically generated when revenue recognized exceeds the amount billed to the customer. Retainage on construction contracts represents amounts withheld by our customers on long-term projects until the project reaches a level of completion where amounts are released to us from the customer. Contract liabilities consist of billings in excess of costs and earnings and other deferred revenue on contracts.

The time period between when performance obligations are complete and payment is due is not significant. In certain parts of our business that recognize revenue over time, progress billings follow an agreed-upon schedule of values.

The changes in contract assets and contract liabilities were mainly due to timing of project activity within our businesses that operate under long-term contracts.
Other contract-related disclosuresThree Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Revenue recognized related to contract liabilities from prior year-end$3,451 $2,249 $30,361 $24,956 
Revenue recognized related to prior satisfaction of performance obligations4,867 4,477 8,166 4,904 

Some of our contracts have an expected duration of longer than a year, with performance obligations extending over that time frame. Generally, these contracts are found in our businesses that typically operate with long-term contracts, which recognize revenue over time. The transaction prices associated with unsatisfied performance obligations at August 31, 2024 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)August 31, 2024
Within one year
$535,538 
Between one and two years
305,493 
Beyond two years
111,600 
Total$952,631 

10

3.Inventories

Inventories
(In thousands)August 31, 2024March 2, 2024
Raw materials$31,952 $31,363 
Work-in-process16,656 12,291 
Finished goods30,983 25,586 
Total inventories, net$79,591 $69,240 

4.Financial Instruments

Marketable securities
Through our wholly-owned insurance subsidiary, Prism Assurance, Ltd. (Prism), we hold the following available-for-sale marketable securities, made up of fixed-maturity investments: 
(In thousands)Amortized CostGross Unrealized GainsGross Unrealized LossesEstimated
Fair Value
August 31, 2024$11,708 $37 $323 $11,422 
March 2, 202411,327 15 437 10,905 

Prism insures a portion of our general liability, workers’ compensation and automobile liability risks using reinsurance agreements to meet statutory requirements. The reinsurance carrier requires Prism to maintain fixed-maturity investments for the purpose of providing collateral for Prism’s obligations under the reinsurance agreements.

The amortized cost and estimated fair values of these investments at August 31, 2024, by contractual maturity, are shown below. Expected maturities may differ from contractual maturities, as borrowers may have the right to call or prepay obligations with or without penalty.
(In thousands)Amortized CostEstimated Fair Value
Due within one year$3,119 $3,092 
Due after one year through five years8,589 8,330 
Total$11,708 $11,422 

Derivative instruments
We periodically use interest rate swaps, currency put options, and forward purchase contracts to manage risks generally associated with foreign exchange rate, interest rate and commodity price fluctuations. The information that follows explains the various types of derivatives and financial instruments we use, how such instruments are accounted for, and how such instruments impact our financial position and performance.

In fiscal 2020, we entered into an interest rate swap to hedge exposure to variability in cash flows from interest payments on floating-rate borrowings under our credit facility. As of August 31, 2024, the interest rate swap contract had a notional value of $30.0 million and has a maturity date of February 5, 2026.

We periodically enter into forward purchase contracts and/or fixed/floating swaps to manage the risk associated with fluctuations in aluminum prices and fluctuations in foreign exchange rates. These contracts generally have an original maturity date of less than one year. As of August 31, 2024, we held aluminum purchase contracts and foreign exchange option contracts with U.S. dollar notional values of $2.0 million and $1.5 million, respectively.

The mark to market adjustments on these derivative instruments are recorded within our consolidated balance sheets within other current assets and other current liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive loss until which time the hedged transaction is settled and gains or losses are reclassified to net earnings.


11

Fair value measurements
Financial assets and liabilities are classified in the fair value hierarchy based on the lowest level input that is significant to the fair value measurement: Level 1 (unadjusted quoted prices in active markets for identical assets or liabilities); Level 2 (observable market inputs, other than quoted prices included in Level 1); and Level 3 (unobservable inputs that cannot be corroborated by observable market data). We do not have any Level 3 financial assets or liabilities.
(In thousands)Quoted Prices in
Active Markets
(Level 1)
Other Observable Inputs (Level 2)Total Fair Value
August 31, 2024
Assets:
Money market funds$42,400 $ $42,400 
Municipal and corporate bonds 11,422 11,422 
Foreign currency option contract 28 28 
Interest rate swap contract 781 781 
Liabilities:
Aluminum hedging contract 20 20 
March 2, 2024
Assets:
Money market funds$26,529 $ $26,529 
Municipal and corporate bonds 10,905 10,905 
Foreign currency forward/option contract 3 3 
Interest rate swap contract 1,292 1,292 
Liabilities:
Aluminum hedging contract 529 529 

5.Debt

On July 19, 2024, we entered into a Credit Agreement (the Credit Agreement) with Bank of America, N.A., as administrative agent, and other lenders. The Credit Agreement provides for an unsecured senior credit facility in an aggregate principal amount of up to $700.0 million, in which commitments are available through a $450.0 million, five-year revolving credit facility and a committed $250.0 million delayed draw term loan facility. Borrowings under the revolving credit facility can be in Canadian dollars (CAD) limited to $25.0 million USD. The term loan facility may be borrowed in up to two drawdowns, which are available to be made within one year after the closing date. The senior credit facility has a term of five years with a maturity date of July 19, 2029. Outstanding borrowings under the revolving credit facility were $50.0 million as of August 31, 2024. As of August 31, 2024, the term loan facility had not been drawn.

The Credit Agreement replaces the previous revolving credit facility with Wells Fargo Bank, N.A., as administrative agent, and other lenders, with maximum borrowings up to $385.0 million, and the two Canadian credit facilities with Bank of Montreal totaling $25.0 million USD. Outstanding borrowings under the previous revolving credit facility were $50.0 million as of March 2, 2024. We had no outstanding borrowings under the Canadian facilities as of March 2, 2024.

As a result of the transaction, in the second quarter of fiscal 2025, we recognized a loss on extinguishment of debt within interest expense of $0.5 million for the write-off of unamortized financing fees related to the previous revolving credit facility. Additionally, we capitalized $3.0 million of lender fees and $0.6 million of third-party fees incurred in connection with the Credit Agreement, which were recorded as other non-current assets and will be amortized over the term of the credit facility as interest expense.

The Credit Agreement contains two maintenance financial covenants that require our Consolidated Leverage Ratio (as defined in the Credit Agreement) to be less than 3.50 and our Consolidated Interest Coverage Ratio (as defined in the Credit Agreement) to exceed 3.00. At August 31, 2024, we were in compliance with all covenants as defined under the terms of the Credit Agreement.

The Credit Agreement also contains an acquisition “holiday.” In the event we make an acquisition for which the purchase price is greater than $75 million, we can elect to increase the maximum Consolidated Leverage Ratio (as defined in the Credit Agreement) to 4.00 for a period of four consecutive fiscal quarters, commencing with the fiscal quarter in which a qualifying acquisition occurs. No more than two acquisition holidays can occur during the term of the Credit Agreement, and at least two fiscal quarters must separate qualifying acquisitions.

12

Borrowings under the Credit Agreement bear floating interest at either the Base Rate or Term Secured Overnight Financing Rate (SOFR), or, for CAD borrowings, Canadian Overnight Repo Rate Average (CORRA) plus, in each a margin based on the Consolidated Leverage Ratio (as defined in the Credit Agreement). For Base Rate borrowings, the margin ranges from 0.25% to 0.75%. For Term SOFR and CORRA borrowings, the margin ranges from 1.25% to 1.75%, with an incremental Term SOFR and CORRA adjustment of 0.10% and 0.29547% respectively.

The Credit Agreement also contains an “accordion” provision. Under this provision, we can request that the senior credit facility be increased by unlimited additional amounts. Any lender may elect or decline to participate in the requested increase at their sole discretion.

At August 31, 2024, we had a total of $42.5 million of ongoing letters of credit related to the senior credit facility and industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal years 2026 through 2032 and reduce borrowing capacity under the revolving credit facility. As of August 31, 2024, the amount available for revolving borrowings was $357.5 million.

At August 31, 2024, debt included $12.0 million of industrial revenue bonds that mature in fiscal years 2036 through 2043.

The fair value of our senior credit facility and industrial revenue bonds approximated carrying values at August 31, 2024, and would be classified as Level 2 within the fair value hierarchy described in Note 4, due to the variable interest rates on these instruments.

Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Interest on debt$1,339 $2,661 $2,513 $5,171 
Interest rate swap gain(236)(153)(472)(420)
Other interest expense594 50 615 78 
Interest income$(557)$(328)$(1,066)$(563)
Interest expense, net
$1,140 $2,230 $1,590 $4,266 

Interest payments under the credit facilities were $2.6 million and $5.4 million for the six months ended August 31, 2024 and August 26, 2023, respectively.

6.Commitments and Contingent Liabilities

Bond commitments
In the ordinary course of business, predominantly in our Architectural Services and Architectural Framing Systems Segments, we are required to provide surety or performance bonds that commit payments to our customers for any non-performance. At August 31, 2024, $1.2 billion of these types of bonds were outstanding, of which $366.0 million is in our backlog. These bonds have expiration dates that align with completion of the sales order or contract. We have never been required to make payments under surety or performance bonds with respect to our existing businesses.

Warranty and project-related contingencies
We reserve estimated exposures on known claims, as well as on a portion of anticipated claims, for product warranty and rework cost, based on historical product liability claims as a ratio of sales. Claim costs are deducted from the accrual when paid. Factors that could have an impact on these accruals in any given period include changes in manufacturing quality, changes in product mix, and any significant changes in sales volume.
 Six Months Ended
(In thousands)August 31, 2024
Balance at beginning of period$21,362 
Additions charged to costs and expenses5,967 
Deductions from reserve, net of recoveries(6,585)
Balance at end of period$20,744 


13

Additionally, we are subject to project management and installation-related contingencies as a result of our fixed-price material supply and installation service contracts, primarily in our Architectural Services Segment and in certain parts of our Architectural Framing Systems Segment. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages.

Letters of credit
At August 31, 2024, we had $42.5 million of ongoing letters of credit as discussed in Note 5.

Purchase obligations
Purchase obligations for raw material commitments and capital expenditures totaled $14.2 million as of August 31, 2024.

New Markets Tax Credit (NMTC) transactions
We have two outstanding NMTC arrangements which help to support operational expansion. Proceeds received from investors on these transactions are included within other non-current liabilities in our consolidated balance sheets. The NMTC arrangements are subject to 100 percent tax credit recapture for a period of seven years from the date of each respective transaction. Upon the termination of each arrangement, these proceeds will be recognized in earnings in exchange for the transfer of tax credits. The direct and incremental costs incurred in structuring these arrangements have been deferred and are included in other non-current assets in our consolidated balance sheets. These costs will be recognized in conjunction with the recognition of the related proceeds on each arrangement. During the construction phase or for working capital purposes for each project, we are required to hold cash dedicated to fund each project, which is classified as restricted cash in our consolidated balance sheets. As a result of the structure of these transactions, variable-interest entities were created. As the other investors in these programs do not have a material interest in the entities' underlying economics, we include 100% of the results of the variable-interest entities in our consolidated financial statements.

The table below provides a summary of estimated benefits related to our outstanding NMTC transactions (in thousands):
Inception dateTermination dateDeferred BenefitDeferred costsNet benefit
May 2022(1)
August 2025$6,052 $1,604 $4,448 
September 2018September 2025$3,198 $1,031 $2,167 
Total$9,250 $2,635 $6,615 
(1) Continuation of the August 2018 NMTC financing transaction

Litigation
The Company is a party to various legal proceedings incidental to its normal operating activities. In particular, like others in the construction supply and services industry, the Company is routinely involved in various disputes and claims arising out of construction projects, sometimes involving significant monetary damages or product replacement. We have in the past and are currently subject to product liability and warranty claims, including certain legal claims related to a commercial sealant product formerly incorporated into our products. In December 2022, the claimant in an arbitration of one such claim was awarded $20 million. The Company has appealed the award and believes, after taking into account all currently available information, including the advice of counsel and the likelihood of available insurance coverage, that this award will not have a material adverse effect on the Company's business, financial condition, results of operations or cash flows. The Company is also subject to litigation arising out of areas such as employment practices, workers compensation and general liability matters. Although it is very difficult to accurately predict the outcome of any such proceedings, facts currently available indicate that no matters will result in losses that would have a material adverse effect on the results of operations, cash flows or financial condition of the Company.

7.Supplier Finance Program Obligations

In the first quarter of fiscal 2024, we implemented a supplier financing arrangement that enables select suppliers, at their sole discretion, to sell our receivables (i.e., our payment obligations to the suppliers) on a non-recourse basis in order to be paid earlier than our payment terms provide. These suppliers’ voluntary inclusion of invoices in the supplier financing arrangement has no bearing on our payment terms, the amounts we pay, or our liquidity. We have no economic interest in the supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. The balances owed are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided by operating activities in our consolidated statements of cash flows when settled.


14

The following table summarizes the obligation activity and outstanding balance as of August 31, 2024 that we have confirmed as valid to the administrators of our program:

(In thousands)August 31, 2024
Balance at beginning of period$6,527 
Obligations added to the program22,411 
Obligations settled(20,503)
Balance at end of period$8,435 

8.Shareholders' Equity

We paid dividends totaling $10.8 million ($0.50 per share) in the first six months of fiscal 2025, compared to dividends paid of $10.5 million ($0.48 per share) in the comparable prior year period.

During fiscal 2004, the Board of Directors authorized a share repurchase program allowing us to repurchase shares of our outstanding common stock, with subsequent increases in authorization. During the six-months ended August 31, 2024, we repurchased 241,573 shares under the program, for a total cost of $15.1 million, inclusive of the applicable excise tax. During the six-months ended August 26, 2023, we repurchased 279,916 shares under the program, for a total cost of $11.8 million. We have repurchased a total of 11,518,090 shares, at a total cost of $408.5 million, since the inception of this program in fiscal 2004. We have remaining authority to repurchase 2,731,910 shares under this program, which has no expiration date. We may also elect to repurchase additional shares of common stock under our authorization, subject to limitations contained in our debt agreements and based upon our assessment of a number of factors, including share price, trading volume and general market conditions, working capital requirements, general business conditions, financial conditions, any applicable contractual limitations, and other factors, including alternative investment opportunities. We may finance share repurchases with available cash, additional debt or other sources of financing.

Additionally, shares withheld from the vesting of restricted awards, or the settlement of performance-based awards, are treated as purchases and retirements, and are included within other, net in the financing activities section in the consolidated statement of cash flows.

9.Share-Based Compensation

As part of our compensation structure, we grant stock-based compensation awards to certain employees and non-employee directors during the fiscal year. These awards may be in the form of incentive stock options (to employees only), nonstatutory options, or nonvested share awards and units, all of which are granted at a price or with an exercise price equal to the fair market value of the Company’s stock at the date of award, unless the date of the award is on a day the Nasdaq Stock Market is not open for trading, then the exercise price shall equal the fair market value on the most recent preceding date when such market is open.

The table below sets forth the number of stock-based compensation awards granted during the six-months ended August 31, 2024, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Grant Date Fair Value
Restricted stock awards and restricted stock units(1)
118,092 $62.54 
Performance share units (2)
37,151 $62.78 
(1) Represent service condition awards which generally vest over a two- or three-year period.
(2) Represent performance condition awards with the grant equal to the target number of performance shares based on the share price at grant date. These grants allow for the right to receive a variable number of shares, between 0% and 200% of target, dependent on being employed at the end of the performance period and achieving defined performance goals for average return on invested capital and cumulative earnings per share.

Total share-based compensation expense included in the results of operations was $2.9 million and $2.3 million for the three-month periods ended August 31, 2024 and August 26, 2023, respectively and $5.6 million and $4.5 million for the six-month periods ended August 31, 2024 and August 26, 2023, respectively.

15

At August 31, 2024, there was $17.3 million of total unrecognized compensation cost related to nonvested share and nonvested share unit awards, which is expected to be recognized over a weighted average period of approximately 24 months. The total fair value of shares vested during the six-months ended August 31, 2024 was $8.6 million.

10.Income Taxes

We file income tax returns in the U.S. federal jurisdiction, various U.S. state and local jurisdictions, Canada, Brazil and other international jurisdictions. We are not subject to U.S. federal tax examinations for years prior to fiscal 2021, or state and local income tax examinations for years prior to fiscal 2015. We are not currently under U.S. federal examination for years subsequent to fiscal 2020, and there is very limited audit activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.

For interim periods, our income tax expense and resulting effective tax rate are based upon an estimated annual effective tax rate adjusted for the effects of items required to be treated as discrete to the period, including changes in tax laws, changes in estimated exposures for uncertain tax positions and other items. For the three-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.7%, compared to 22.9% for the same period last year. For the six-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.1%, compared to 23.8% for the same period last year. The change in the effective tax rate for both the three- and six-month periods was primarily due to an increase in tax expense on discrete items.

The total liability for unrecognized tax benefits was $5.6 million at August 31, 2024 compared to $5.1 million at March 2, 2024, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense.

11.Earnings per Share

The following table presents a reconciliation of the share amounts used in the computation of basic and diluted earnings per share (diluted EPS):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Basic earnings per share – weighted average common shares outstanding
21,762 21,708 21,793 21,813 
Weighted average effect of nonvested share grants and assumed exercise of stock options
113 254 192 292 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
21,875 21,962 21,985 22,105 
Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)
11 51 65 73 

12.Business Segment Data

We have four reporting segments:
The Architectural Framing Systems Segment designs, engineers, fabricates and finishes aluminum window, curtainwall, storefront and entrance systems for the exterior of buildings.
The Architectural Glass Segment coats and fabricates, high-performance glass used in custom window and wall systems on non-residential buildings.
The Architectural Services Segment integrates technical services, project management, and field installation services to design, engineer, fabricate, and install building glass and curtainwall systems.
The Large-Scale Optical (LSO) Segment manufactures high-performance glass and acrylic products for the custom framing, fine art, and engineered optics markets.

Segment net sales is defined as net sales for a certain segment and includes revenue related to intersegment transactions. We report net sales intersegment eliminations separately to exclude these sales from our consolidated total. Segment operating income is equal to net sales, less cost of goods sold, selling, general and administrative expenses, and any asset impairment charges associated with the segment. Segment operating income includes operating income related to intersegment sales transactions and excludes certain corporate costs that are not allocated at a segment level. We report these unallocated corporate costs in Corporate and Other. Operating income does not include other income or expense, interest expense or income tax expense.
16

Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Segment net sales
Architectural Framing Systems$141,350 $158,801 $274,522 $322,963 
Architectural Glass90,101 94,096 176,804 191,298 
Architectural Services98,018 88,064 197,045 177,482 
Large-Scale Optical19,832 23,645 41,036 46,101 
Intersegment eliminations(6,861)(10,931)(15,451)(22,456)
Net sales$342,440 $353,675 $673,956 $715,388 
Segment operating income (loss)
Architectural Framing Systems$17,141 $21,060 $35,477 $41,005 
Architectural Glass21,068 17,434 38,159 33,955 
Architectural Services6,130 3,519 11,753 2,923 
Large-Scale Optical3,793 4,663 8,639 10,188 
Corporate and Other(6,167)(6,123)(10,682)(13,751)
Operating income$41,965 $40,553 $83,346 $74,320 

Due to the varying combinations and integration of individual window, storefront and curtainwall systems, it is impractical to report product revenues generated by class of product, beyond the segment revenues currently reported.

13.Restructuring

During the fourth quarter of fiscal 2024, we announced strategic actions to further streamline our business operations, enable a more efficient cost model, and better position the Company for profitable growth (referred to as “Project Fortify”). Project Fortify primarily impacts the Architectural Framing Systems Segment and includes:
Eliminating certain lower-margin product and service offerings, enabling consolidation into a single operating entity.
Transferring production operations from the Company’s facility in Walker, Michigan, to the Company’s facilities in Monett, Missouri and Wausau, Wisconsin.
Simplifying the segment’s brand portfolio and commercial model to improve flexibility, better leverage the Company’s capabilities, and enhance customer service.
Additionally, the Company has implemented actions to optimize processes and streamline resources in its Architectural Services Segment and Corporate.

During the second quarter of fiscal 2025, we incurred $1.2 million of pre-tax costs associated with Project Fortify, of which $0.9 million was included within cost of sales and $0.3 million was included within selling, general and administrative expenses. During the first six-months of fiscal 2025, we incurred $2.3 million of pre-tax costs associated with Project Fortify, of which $1.5 million was included within cost of sales and $0.8 million was included within selling, general and administrative expenses. Since announcing Project Fortify, we have incurred $14.7 million of pre-tax costs. The Company expects these restructuring actions to be substantially complete by the end of the third quarter of fiscal 2025 and expects to incur total pre-tax charges of approximately $15.0 million to $16.0 million. Total Project Fortify restructuring charges are expected to include:
$6.5 million to $7.0 million of severance and employee related costs;
Approximately $1.7 million of contract termination costs; and
$6.5 million to $7.5 million of other expenses.

The Company expects that these actions will lead to annualized cost savings of $13 million to $14 million.

Three Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $271 $172 $5 $448 
Contract termination costs
108   108 
Other restructuring charges537 86  623 
Total restructuring charges$916 $258 $5 $1,179 

17

Six Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $573 $172 $129 $874 
Contract termination costs108   108 
Other restructuring charges1,233 86  1,319 
Total restructuring charges$1,914 $258 $129 $2,301 

The following table summarizes our restructuring related accrual balances included within accrued payroll and related benefits and other current liabilities in the consolidated balance sheets. All remaining accrual balances are expected to be paid within fiscal 2025.

(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Balance at March 2, 2024$2,814 $2,067 $56 $4,937 
Restructuring expense736  124 860 
Payments(3,195)(348)(117)(3,660)
Other adjustments778   778 
Balance at August 31, 2024$1,133 $1,719 $63 $2,915 

The charges presented in the rollforward of our restructuring accruals do not include items charged directly to expense as incurred, as those items are not reflected in accrued payroll and related benefits and other current liabilities in the consolidated balance sheets.

14.Subsequent Events

On September 23, 2024, we entered into a purchase agreement for the acquisition of UW Interco, LLC (UW Solutions), a leading developer and manufacturer of high-performance coated materials. The total initial purchase price was $240.0 million, which is subject to customary closing adjustments. We intend to fund the acquisition with cash on hand and borrowings under our existing credit facility.
18

Item 2.Management’s Discussion and Analysis of Financial Condition and Results of Operations

Forward-looking statements
This Quarterly Report on Form 10-Q, including the section, Management’s Discussion and Analysis of Financial Condition and Results of Operations, contains certain statements that are considered “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995. These statements reflect our current views with respect to future events and financial performance. Forward-looking statements generally can be identified by the use of forward-looking terminology such as “may,” “believe,” “expect,” “anticipate,” “intend,” “estimate,” “forecast,” “project,” “should,” “will,” “continue” or similar words or expressions. All forecasts and projections in this document are “forward-looking statements,” and are based on management’s current expectations or beliefs of the Company's near-term results, based on current information available pertaining to the Company. From time to time, we may also provide oral and written forward-looking statements in other materials we release to the public, such as press releases, presentations to securities analysts or investors, or other communications by the Company. Any or all of our forward-looking statements in this report and in any public statements we make could be materially different from actual results.

Accordingly, we wish to caution investors that any forward-looking statements made by or on behalf of the Company are subject to uncertainties and other factors that could cause actual results to differ materially from such statements. These uncertainties and other risk factors include, but are not limited to, the risks and uncertainties set forth under “Risk Factors” section of our Annual Report on Form 10-K for the year ended March 2, 2024 and in subsequent filings with the U.S. Securities and Exchange Commission, including this Quarterly Report on Form 10-Q.

We also wish to caution investors that other factors might in the future prove to be important in affecting the Company’s results of operations. New factors emerge from time to time; it is not possible for management to predict all such factors, nor can it assess the impact of each such factor on the business or the extent to which any factor, or a combination of factors, may cause actual results to differ materially from those contained in any forward-looking statements. We undertake no obligation to update publicly or revise any forward-looking statements, whether as a result of new information, future events or otherwise.

Non-GAAP Measures
We have included in this report measures of financial performance that are not defined by U.S. GAAP. We believe that these measures provide useful information and include these measures in other communications to investors. For each of these non-GAAP financial measures, we provide a reconciliation of the differences between the non-GAAP measure and the most directly comparable U.S. GAAP measure (see “Reconciliation of Non-GAAP Financial Measures” in this Item 2 below), and an explanation of why we believe the non-GAAP measure provides useful information to management and investors. These non-GAAP measures should be viewed in addition to, and not in lieu of, the comparable U.S. GAAP measure.

Overview
We are a leading provider of architectural products and services for enclosing buildings, and high-performance glass and acrylic products used in applications for preservation, protection and enhanced viewing. Our four reporting segments are: Architectural Framing Systems, Architectural Glass, Architectural Services and Large-Scale Optical (LSO).

Our enterprise strategy is based on the following three key elements:
1.Become the economic leader in our target markets. We are developing a deep understanding of our target markets and aligning our businesses with clear go-to-market strategies to drive value for our customers through differentiated product and service offerings. We are focused on operational execution, driving productivity improvements, and maintaining a competitive cost structure, so that we may bring more value to our customers and improve our own profitability.
2.Actively manage our portfolio to drive higher margins and returns. We are shifting our business mix toward higher operating margin offerings in order to improve our return on invested capital performance. We expect to accomplish this by allocating resources to grow our top performing businesses, actively addressing underperforming businesses, and investing to add new differentiated product and service offerings to accelerate our growth and increase margins.
3.Strengthen our core capabilities. We are shifting from our historical, decentralized operating model to one with center-led functional expertise that enables us to leverage the scale of the enterprise to better support the needs of the business. In fiscal 2022, we established a Company-wide operating system with common tools and processes based on the foundation of Lean and Continuous Improvement, which we call the “Apogee Management System.” Our strategy is supported by a robust talent management program and a commitment to strong governance to ensure compliance and drive sustainable performance.


19

We set this strategy by developing a deep knowledge of the markets we serve and by gaining extensive input from customers and industry influencers, along with detailed competitive benchmarking. We continually analyze our portfolio of products, services, and capabilities to identify the best areas for future profitable growth. We also evaluate our operating model to ensure we have the organizational structure and capabilities needed to deliver consistent profitable growth. Through this work, we validate strengths that we can leverage and identify opportunities to improve our performance.

In fiscal 2024 and through the second quarter of fiscal 2025, we drove further progress toward our strategic goals and financial targets. We continued the deployment of the Apogee Management System across our business, supporting sustainable cost and productivity improvements. We invested in organic growth initiatives, including capacity expansion in the Large-Scale Optical Segment and geographic growth in the Architectural Services Segment. We increased our focus on differentiated products and services, and continued to diversify the mix of architectural projects that we serve while leaning more heavily into higher, value-added products. We also advanced several initiatives to strengthen our core capabilities, driving the standardization of key business processes and systems, and strengthening talent management and leadership development programs.

The following selected financial data should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024 and the consolidated financial statements, including the notes to consolidated financial statements, included therein.

Results of Operations
The following tables provide various components of operations as year over year U.S. dollar and percentage change, as well as a percentage of net sales.
Three Months Ended
% of Net Sales
(in thousands, except percentages)
August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net sales$342,440 $353,675 100.0 %100.0 %
Cost of sales245,119 258,304 71.6 73.0 
Gross profit97,321 95,371 28.4 27.0 
Selling, general and administrative expenses55,356 54,818 16.2 15.5 
Operating income41,965 40,553 12.3 11.5 
Interest expense, net1,140 2,230 0.3 0.6 
Other expense, net
290 4,900 0.1 1.4 
Earnings before income taxes41,115 43,223 12.0 12.2 
Income tax expense10,549 9,896 3.1 2.8 
Net earnings$30,566 $33,327 8.9 %9.4 %
Effective tax rate25.7 %22.9 %
N/M Indicates calculation not meaningful.

Six Months Ended
% of Net Sales
(in thousands, except percentages)
August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net sales$673,956 $715,388 100.0 %100.0 %
Cost of sales477,780 527,031 70.9 73.7 
Gross profit196,176 188,357 29.1 26.3 
Selling, general and administrative expenses112,830 114,037 16.7 15.9 
Operating income83,346 74,320 12.4 10.4 
Interest expense, net1,590 4,266 0.2 0.6 
Other expense, net
433 4,612 0.1 0.6 
Earnings before income taxes82,189 74,666 12.2 10.4 
Income tax expense20,612 17,763 3.1 2.5 
Net earnings$61,577 $56,903 9.1 %8.0 %
Effective tax rate25.1 %23.8 %
N/M Indicates calculation not meaningful.


20

Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
Consolidated net sales decreased 3.2%, to $342.4 million, primarily driven by lower volume, partially offset by improved pricing and mix.

Gross margin increased to 28.4%, compared to 27.0%, primarily driven by improved pricing, a more favorable mix of projects in Architectural Services, favorable material costs, and lower insurance-related costs, partially offset by the unfavorable sales leverage impact of lower volume, higher compensation and benefits expense, and $0.9 million of restructuring costs associated with Project Fortify.

Selling, general and administrative (SG&A) expenses increased $0.5 million to 16.2% of net sales, compared to 15.5% of net sales. The increase in SG&A as a percentage of sales was primarily due to higher incentive compensation expense and the unfavorable sales leverage impact of lower volume.

Operating income increased to $42.0 million from $40.6 million, and operating margin increased 80 basis points to 12.3%. The improvement in operating margin was primarily driven by improved pricing, a more favorable mix of projects in Architectural Services, favorable material costs, and lower insurance-related costs, partially offset by the impact of higher incentive compensation expense, $1.2 million of restructuring costs related to Project Fortify, and the unfavorable sales leverage impact of lower volume. Adjusted operating income grew 6.4% to $43.1 million, and adjusted operating margin improved to 12.6%.

Interest expense, net was $1.1 million, compared to $2.2 million, primarily driven by lower average debt levels, partially offset by the impact of the write-off of unamortized financing fees related to the previous credit facility.

Income tax expense as a percentage of earnings before income tax was 25.7%, compared to 22.9% for the same period last year. The increase in the effective tax rate was primarily due to an increase in tax expense for discrete items.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024

Consolidated net sales decreased 5.8%, to $674.0 million, primarily driven by lower volume, partially offset by improved pricing and mix.

Gross margin increased to 29.1%, compared to 26.3%, primarily driven by improved pricing and a more favorable mix of projects in Architectural Services, favorable material costs, and lower insurance-related costs, partially offset by the unfavorable sales leverage impact of lower volume, higher compensation and benefits expense, and $1.5 million of restructuring costs associated with Project Fortify.

SG&A expenses decreased $1.2 million to 16.7% of net sales, compared to 15.9% of net sales. The increase in SG&A as a percentage of sales was primarily due to the unfavorable sales leverage impact of lower volume and higher incentive compensation expense, partially offset by lower bad debt expense.

Operating income grew to $83.3 million from $74.3 million, and operating margin increased 200 basis points to 12.4%. The improvement in operating margin was primarily driven by improved pricing, a more favorable mix of projects in Architectural Services, favorable material costs, lower insurance-related costs, and lower bad debt expense, which more than offset the unfavorable sales leverage impact of lower volume, $2.3 million of restructuring costs related to Project Fortify, and higher incentive compensation expense. Adjusted operating income grew 15.2% to $85.6 million, and adjusted operating margin improved to 12.7%.

Interest expense, net was $1.6 million, compared to $4.3 million, primarily driven by lower average debt levels, partially offset by the impact of the write-off of unamortized financing fees related to our previous credit facility.

Income tax expense as a percentage of earnings before income tax was 25.1%, compared to 23.8% for the same period last year. The increase in the effective tax rate was primarily due to an increase in tax expense for discrete items.
21

Segment Analysis
The following table presents net sales, operating income (loss) and operating margin by segment and consolidated total.
Three Months EndedSix Months Ended
(In thousands, except percentages)August 31, 2024August 26, 2023% ChangeAugust 31, 2024August 26, 2023% Change
Segment net sales
Architectural Framing Systems$141,350 $158,801 (11.0)%$274,522 $322,963 (15.0)%
Architectural Glass90,101 94,096 (4.2)176,804 191,298 (7.6)
Architectural Services98,018 88,064 11.3 197,045 177,482 11.0 
Large-Scale Optical19,832 23,645 (16.1)41,036 46,101 (11.0)
Intersegment eliminations(6,861)(10,931)(37.2)(15,451)(22,456)(31.2)
Net sales$342,440 $353,675 (3.2)%$673,956 $715,388 (5.8)%
Segment operating income (loss)
Architectural Framing Systems$17,141 $21,060 (18.6)%$35,477 $41,005 (13.5)%
Architectural Glass21,068 17,434 20.8 38,159 33,955 12.4 
Architectural Services6,130 3,519 74.2 11,753 2,923 302.1 
Large-Scale Optical3,793 4,663 (18.7)8,639 10,188 (15.2)
Corporate and Other(6,167)(6,123)0.7 (10,682)(13,751)(22.3)
Operating income$41,965 $40,553 3.5 %$83,346 $74,320 12.1 %
Segment operating margin
Architectural Framing Systems12.1 %13.3 %12.9 %12.7 %
Architectural Glass23.4 18.5 21.6 17.7 
Architectural Services6.3 4.0 6.0 1.6 
Large-Scale Optical19.1 19.7 21.1 22.1 
Corporate and Other
N/MN/MN/MN/M
Operating income12.3 %11.5 %12.4 %10.4 %
N/M Indicates calculation not meaningful.

Segment net sales is defined as net sales for a certain segment and includes revenue related to intersegment transactions. We report net sales intersegment eliminations separately to exclude these sales from our consolidated total. Segment operating income is equal to net sales, less cost of goods sold, SG&A, and any asset impairment charges associated with the segment. Segment operating income includes operating income related to intersegment sales transactions and excludes certain corporate costs that are not allocated at a segment level. We report these unallocated corporate costs in Corporate and Other. Operating income does not include other income or expense, interest expense or income tax expense.

Architectural Framing Systems
Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
Net sales were $141.4 million, compared to $158.8 million, primarily reflecting reduced volume due to exiting certain lower-margin product lines as part of Project Fortify and lower end market demand.

Operating income was $17.1 million, or 12.1% of net sales, compared to $21.1 million, or 13.3% of net sales. The 120 basis point reduction in operating margin was primarily driven by the unfavorable sales leverage impact of lower volume, a less favorable mix and $0.9 million of restructuring charges related to Project Fortify, partially offset by favorable material costs. Adjusted operating income was $18.1 million, or 12.8% of net sales, compared to $21.1 million, or 13.3% of net sales.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024
Net sales were $274.5 million, compared to $323.0 million, primarily reflecting reduced volume due to exiting certain lower-margin product lines as part of Project Fortify and lower end market demand.

22

Operating income was $35.5 million, or 12.9% of net sales, compared to $41.0 million, or 12.7% of net sales. The 20 basis point improvement in operating margin was primarily driven by favorable material costs and lower bad debt expense, partially offset by the unfavorable sales leverage impact of lower volume, and $1.9 million of restructuring charges as part of Project Fortify. Adjusted operating income was $37.4 million, or 13.6% of net sales, compared to $41.0 million, or 12.7% of net sales.

Architectural Glass
Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
Net sales were $90.1 million, compared to $94.1 million, reflecting reduced volume due to lower end-market demand, partially offset by improved pricing and product mix.

Operating income increased to $21.1 million, or 23.4% of net sales, compared to $17.4 million, or 18.5% of net sales. The 490 basis point improvement in operating margin was primarily driven by improved pricing and product mix, and lower wages and benefits expense, partially offset by the unfavorable sales leverage impact of lower volume.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024
Net sales were $176.8 million, compared to $191.3 million, reflecting lower volume due to lower end-market demand, partially offset by improved pricing and product mix.

Operating income increased to $38.2 million, or 21.6% of net sales, compared to $34.0 million, or 17.7% of net sales. The 390 basis point improvement in operating margin was primarily driven by improved pricing and product mix, and lower wages and benefits expense, partially offset by the unfavorable sales leverage impact of lower volume.

Architectural Services
Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
Net sales were $98.0 million, compared to $88.1 million, primarily due to a more favorable mix of projects and increased volume.

Operating income increased to $6.1 million, or 6.3% of net sales, compared to $3.5 million, or 4.0% of net sales, primarily driven by a more favorable mix of projects, partially offset by higher compensation-related expenses, higher leasing costs, and the $0.3 million impact of restructuring costs as part of Project Fortify.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024
Net sales were $197.0 million, compared to $177.5 million, primarily due to a more favorable mix of projects and increased volume.

Operating income increased to $11.8 million, or 6.0% of net sales, compared to $2.9 million, or 1.6% of net sales, primarily driven by a more favorable mix of projects, partially offset by higher compensation-related expenses, higher leasing costs, and the $0.3 million impact of restructuring costs as part of Project Fortify.

Large-Scale Optical (LSO)
Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
LSO net sales were $19.8 million, compared to $23.6 million, primarily reflecting lower volume in the retail channel, partially offset by a more favorable mix.

Operating income was $3.8 million, or 19.1% of net sales, compared to $4.7 million, or 19.7% of net sales. The 60 basis point decline in operating margin primarily reflects the unfavorable sales leverage impact of lower volume, partially offset by improved mix and cost savings.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024
LSO net sales were $41.0 million, compared to $46.1 million, primarily reflecting lower volume in the retail channel, partially offset by a more favorable mix.

Operating income was $8.6 million, or 21.1% of net sales, compared to $10.2 million, or 22.1% of net sales. The 100 basis point decline in operating margin primarily reflects the unfavorable sales leverage impact of lower volume, partially offset by improved mix and cost savings.


23

Corporate and Other
Comparison of Second Quarter Fiscal 2025 to Second Quarter Fiscal 2024
Corporate and Other expense was $6.2 million, compared to $6.1 million. The increase was primarily driven by higher incentive compensation and benefits costs, partially offset by lower insurance-related costs.

Comparison of First Six Months of Fiscal 2025 to First Six Months of Fiscal 2024
Corporate and Other expense was $10.7 million, compared to $13.8 million, primarily due to lower insurance-related costs, partially offset by incentive compensation and benefits costs.

Backlog
Backlog represents the dollar amount of signed contracts or firm orders, generally as a result of a competitive bidding process, which may be expected to be recognized as revenue in the future. Backlog is most meaningful for Architectural Services due to the longer-term nature of their projects. Backlog is not a term defined under U.S. GAAP and is not a measure of contract profitability. We view backlog as one indicator of future revenues, particularly in our longer-lead time businesses. In addition to backlog, we have a substantial amount of projects with short lead times that book-and-bill within the same reporting period and are not included in backlog.

Architectural Services
As of August 31, 2024, segment backlog was approximately $792.1 million, compared to approximately $866.9 million at the end of the prior quarter. The decrease in backlog compared to the prior quarter was primarily driven by executing more project work in the quarter than securing new project awards that were added to backlog. Our backlog in this segment tends to vary significantly given the variable timing and relatively large size of projects awarded.

Reconciliation of Non-GAAP Financial Measures

Adjusted operating income, adjusted operating margin, adjusted net earnings, adjusted diluted earnings per share (adjusted diluted EPS), adjusted net earnings before interest, taxes, depreciation and amortization (adjusted EBITDA), and adjusted EBITDA margin are supplemental non-GAAP financial measures provided by the Company to assess performance on a more comparable basis from period-to-period by excluding amounts that management does not consider part of core operating results. Management uses these non-GAAP measures as noted below:

We use adjusted operating income, adjusted operating margin, adjusted net earnings, and adjusted diluted EPS to provide meaningful supplemental information about our operating performance by excluding amounts that are not considered part of core operating results to enhance comparability of results from period to period.
We believe adjusted EBITDA and adjusted EBITDA margin metrics provide useful information to investors and analysts about our core operating performance.

These non-GAAP measures should be viewed in addition to, and not as an alternative to, the reported financial results of the Company prepared in accordance with U.S. GAAP. Other companies may calculate these measures differently, thereby limiting the usefulness of the measures for comparison with other companies.

24


Reconciliation of Non-GAAP Financial Measures
Adjusted Operating Income and Adjusted Operating Margin
(Unaudited)
Three Months Ended August 31, 2024
(In thousands, except percentages)
Architectural Framing SystemsArchitectural GlassArchitectural ServicesLSOCorporate and OtherConsolidated
Operating income$17,141 $21,068 $6,130 $3,793 $(6,167)$41,965 
Restructuring costs (1)
916 — 258 — 1,179 
Adjusted operating income$18,057 $21,068 $6,388 $3,793 $(6,162)$43,144 
Operating margin
12.1 %23.4 %6.3 %19.1 %N/M12.3 %
Restructuring costs (1)
0.6 %— %0.3 %— %N/M0.3 %
Adjusted operating margin
12.8 %23.4 %6.5 %19.1 %N/M12.6 %
Three Months Ended August 26, 2023
Architectural Framing SystemsArchitectural GlassArchitectural ServicesLSOCorporate and OtherConsolidated
Operating income
$21,060 $17,434 $3,519 $4,663 $(6,123)$40,553 
Operating margin
13.3 %18.5 %4.0 %19.7 %N/M11.5 %
(1)
Restructuring charges related to Project Fortify, including $0.5 million of employee termination costs, $0.1 million of contract termination costs and $0.6 million of other costs incurred in the second quarter of fiscal 2025.


Six Months Ended August 31, 2024
(In thousands, except percentages)
Architectural Framing SystemsArchitectural GlassArchitectural ServicesLSOCorporate and OtherConsolidated
Operating income$35,477 $38,159 $11,753 $8,639 $(10,682)$83,346 
Restructuring costs (1)
1,914 — 258 — 129 2,301 
Adjusted operating income$37,391 $38,159 $12,011 $8,639 $(10,553)$85,647 
Operating margin
12.9 %21.6 %6.0 %21.1 %N/M12.4 %
Restructuring costs (1)
0.7 %— %0.1 %— %N/M0.3 %
Adjusted operating margin
13.6 %21.6 %6.1 %21.1 %N/M12.7 %
Six Months Ended August 26, 2023
Architectural Framing SystemsArchitectural GlassArchitectural ServicesLSOCorporate and OtherConsolidated
Operating income
$41,005 $33,955 $2,923 $10,188 $(13,751)$74,320 
Operating margin
12.7 %17.7 %1.6 %22.1 %N/M10.4 %

(1)
Restructuring charges related to Project Fortify, including $0.9 million of employee termination costs, $0.1 million of contract termination costs and $1.3 million of other costs incurred in the first six months of fiscal 2025.
25

Reconciliation of Non-GAAP Financial Measures
Adjusted Net Earnings and Adjusted Diluted Earnings Per Share
(Unaudited)
Three Months EndedSix Months Ended
(In thousands, except per share amounts)
August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net earnings$30,566 $33,327 $61,577 $56,903 
Restructuring costs (1)
1,179 — 2,301 — 
NMTC Settlement Gain(2)
— (4,687)— (4,687)
Income tax impact on above adjustments (3)
(289)1,148 (564)1,148 
Adjusted net earnings$31,456 $29,788 $63,314 $53,364 
Three Months EndedSix Months Ended
August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Diluted EPS$1.40 $1.52 $2.80 $2.57 
Restructuring costs (1)
0.05 — 0.10 — 
NMTC Settlement Gain(2)
— (0.21)— (0.21)
Income tax impact on above adjustments (3)
(0.01)0.05 (0.03)0.05 
Adjusted diluted EPS$1.44 $1.36 $2.88 $2.41 
Shares outstanding for EPS21,875 21,962 21,985 22,105 
(1)
Restructuring charges related to Project Fortify, including $0.5 million of employee termination costs, $0.1 million of contract termination costs and $0.6 million of other costs incurred in the second quarter of fiscal 2025, and $0.9 million of employee termination costs, $0.1 million of contract termination costs and $1.3 million of other costs incurred in the first six months of fiscal 2025.
(2)
Realization of a New Markets Tax Credit (NMTC) benefit during the second quarter of fiscal 2024, which was recorded in other income, net.
(3)
Income tax impact calculated using an estimated statutory tax rate of 24.5%, which reflects the estimated blended statutory tax rate for the jurisdictions in which the charge or income occurred.

Reconciliation of Non-GAAP Financial Measures
Adjusted EBITDA and Adjusted EBITDA Margin
(Earnings before interest, taxes, depreciation and amortization)
(Unaudited)
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Net earnings$30,566 $33,327 $61,577 $56,903 
Income tax expense10,549 9,896 20,612 17,763 
Interest expense, net1,140 2,230 1,590 4,266 
Depreciation and amortization9,688 10,379 19,664 20,661 
EBITDA$51,943 $55,832 $103,443 $99,593 
Restructuring costs(1)
1,179 — 2,301 — 
NMTC Settlement Gain(2)
— (4,687)— (4,687)
Adjusted EBITDA$53,122 $51,145 $105,744 $94,906 
EBITDA Margin
15.2 %15.8 %15.3 %13.9 %
Adjusted EBITDA Margin15.5 %14.5 %15.7 %13.3 %
(1)
Restructuring charges related to Project Fortify, including $0.5 million of employee termination costs, $0.1 million of contract termination costs and $0.6 million of other costs incurred in the second quarter of fiscal 2025, and $0.9 million of employee termination costs, $0.1 million of contract termination costs and $1.3 million of other costs incurred in the first six months of fiscal 2025.
(2)
Realization of a New Markets Tax Credit (NMTC) benefit during the second quarter of fiscal 2024, which was recorded in other income, net.

26

Liquidity and Capital Resources
We rely on cash provided by operations for our material cash requirements, including working capital needs, capital expenditures, satisfaction of contractual commitments (including principal and interest payments on our outstanding indebtedness) and shareholder return through dividend payments and share repurchases.

Operating Activities. Net cash provided by operating activities was $64.1 million for the first six months of fiscal 2025, compared to $62.6 million in the prior year period. The increase was primarily driven by increased net earnings and decreased cash payments for incentive compensation, partially offset by increased cash used for working capital.

Investing Activities. Net cash used by investing activities was $15.5 million for the first six months of fiscal 2025, compared to $15.1 million in the prior year, primarily related to capital expenditures in both periods.

Financing Activities. Net cash used by financing activities was $34.6 million for the first six months of fiscal 2025, compared to $50.1 million in the prior year period. The decrease in cash used for financing activities was primarily driven by lower net debt repayments, partially offset by debt issuance costs related to our new credit agreement and increased share repurchases.

Additional Liquidity Considerations. We periodically evaluate our liquidity requirements, cash needs and availability of debt resources relative to acquisition plans, significant capital plans, and other working capital needs.

On July 19, 2024, we entered into a Credit Agreement (the Credit Agreement) with Bank of America, N.A., as administrative agent, and other lenders. The Credit Agreement provides for an unsecured senior credit facility in an aggregate principal amount of up to $700.0 million, in which commitments are available through a $450.0 million, five-year revolving credit facility and a committed $250.0 million delayed draw term loan facility. Borrowings under the revolving credit facility can be in Canadian dollars (CAD) limited to $25.0 million USD. The term loan facility may be borrowed in up to two drawdowns, which are available to be made within one year after the closing date. The senior credit facility has a term of five years with a maturity date of July 19, 2029. Outstanding borrowings under the revolving credit facility were $50.0 million as of August 31, 2024. As of August 31, 2024, the term loan facility had not been drawn.

The Credit Agreement replaces the previous revolving credit facility with Wells Fargo Bank, N.A., as administrative agent, and other lenders, with maximum borrowings up to $385.0 million, and the two Canadian credit facilities with Bank of Montreal totaling $25.0 million USD. Outstanding borrowings under the previous revolving credit facility were $50.0 million as of March 2, 2024. We had no outstanding borrowings under the Canadian facilities as of March 2, 2024.

As a result of the transaction, in the second quarter of fiscal 2025, we recognized a loss on extinguishment of debt within interest expense of $0.5 million for the write-off of unamortized financing fees related to the previous revolving credit facility. Additionally, we capitalized $3.0 million of lender fees and $0.6 million of third-party fees incurred in connection with the Credit Agreement, which were recorded as other non-current assets and will be amortized over the term of the credit facility as interest expense.

The Credit Agreement contains two maintenance financial covenants that require our Consolidated Leverage Ratio (as defined in the Credit Agreement) to be less than 3.50 and our Consolidated Interest Coverage Ratio (as defined in the Credit Agreement) to exceed 3.00. At August 31, 2024, we were in compliance with all covenants as defined under the terms of the Credit Agreement.

The Credit Agreement also contains an acquisition “holiday.” In the event we make an acquisition for which the purchase price is greater than $75 million, we can elect to increase the maximum Consolidated Leverage Ratio (as defined in the Credit Agreement) to 4.00 for a period of four consecutive fiscal quarters, commencing with the fiscal quarter in which a qualifying acquisition occurs. No more than two acquisition holidays can occur during the term of the Credit Agreement, and at least two fiscal quarters must separate qualifying acquisitions.

Borrowings under the Credit Agreement bear floating interest at either the Base Rate or Term Secured Overnight Financing Rate (SOFR), or for CAD borrowings, Canadian Overnight Repo Rate Average (CORRA) plus, in each a margin based on the Consolidated Leverage Ratio (as defined in the Credit Agreement). For Base Rate borrowings, the margin ranges from 0.25% to 0.75%. For Term SOFR and CORRA borrowings, the margin ranges from 1.25% to 1.75%, with an incremental Term SOFR and CORRA adjustment of 0.10% and 0.29547% respectively.

The Credit Agreement also contains an “accordion” provision. Under this provision, we can request that the senior credit facility be increased by unlimited additional amounts. Any lender may elect or decline to participate in the requested increase at their sole discretion.


27

At August 31, 2024, we had a total of $42.5 million of ongoing letters of credit related to the senior credit facility and industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal years 2026 through 2032 and reduce borrowing capacity under the revolving credit facility. As of August 31, 2024, the amount available for revolving borrowings was $357.5 million.

We acquire the use of certain assets through operating leases, such as property, manufacturing equipment, vehicles and other equipment. Future payments for such leases, excluding leases with initial terms of one year or less, were $48.1 million at August 31, 2024, with $7.1 million payable during the remainder of fiscal 2025.

As of August 31, 2024, we had $14.2 million of open purchase obligations, of which payments totaling $9.3 million are expected to become due during the remainder of fiscal 2025. These purchase obligations primarily relate to raw material commitments and capital expenditures and are not expected to impact future liquidity, as amounts should be recovered through customer billings.

We expect to make contributions of $0.4 million to our defined-benefit pension plans in fiscal 2025, which will equal or exceed our minimum funding requirements.

As of August 31, 2024, we had reserves of $5.6 million for unrecognized tax benefits. We are unable to reasonably estimate in which future periods the remaining unrecognized tax benefits will ultimately be settled.

We are required, in the ordinary course of business, to provide surety or performance bonds that commit payments to our customers for any non-performance. At August 31, 2024, $1.2 billion of these types of bonds were outstanding, of which $366.0 million is in our backlog. These bonds have expiration dates that align with completion of the purchase order or contract. We have not been required to make any payments under these bonds with respect to our existing businesses.

Due to our ability to generate strong cash from operations and our borrowing capability under our committed revolving credit facility, we believe that our sources of liquidity will be adequate to meet our short-term and long-term liquidity and capital expenditure needs. In addition, we believe we have the ability to obtain both short-term and long-term debt to meet our financing needs, including additional sources of debt to finance potential acquisitions, for the foreseeable future. We also believe we will be able to operate our business so as to continue to be in compliance with our existing debt covenants over the next fiscal year.

We continually review our portfolio of businesses and their assets and how they support our business strategy and performance objectives. As part of this review, we may acquire other businesses, pursue geographic expansion, take actions to manage capacity and further invest in, divest and/or sell parts of our current businesses.

Related Party Transactions
No material changes have occurred in the disclosure with respect to our related party transactions set forth in our Annual Report on Form 10-K for the fiscal year ended March 2, 2024.

Critical Accounting Policies
There have been no material changes to our critical accounting policies from those disclosed in our Annual Report on Form 10-K for the fiscal year ended March 2, 2024.

Item 3.Quantitative and Qualitative Disclosures About Market Risk

Refer to the Company’s Annual Report on Form 10-K for the fiscal year ended March 2, 2024 for a discussion of the Company’s market risk. There have been no material changes in market risk since March 2, 2024.

28

Item 4.Controls and Procedures
a)Evaluation of disclosure controls and procedures: As of the end of the period covered by this report (the Evaluation Date), we carried out an evaluation, under the supervision and with the participation of management, including the Chief Executive Officer and the Chief Financial Officer, of the effectiveness of the design and operation of our disclosure controls and procedures (as defined in Rules 13a-15(e) or 15d-15(e) of the Securities Exchange Act of 1934, as amended (the Exchange Act)). Based upon that evaluation, the Chief Executive Officer and Chief Financial Officer concluded that, as of the Evaluation Date, our disclosure controls and procedures were effective to ensure that information required to be disclosed by the Company in the reports that it files or submits under the Exchange Act is (i) recorded, processed, summarized and reported within the time periods specified in applicable rules and forms, and (ii) accumulated and communicated to our management, including our Chief Executive Officer and Chief Financial Officer, to allow timely decisions regarding required disclosure.
b)Changes in internal controls: There was no change in the Company’s internal control over financial reporting that occurred during the fiscal quarter ended August 31, 2024, that has materially affected, or is reasonably likely to materially affect, the Company’s internal control over financial reporting.

PART II. OTHER INFORMATION

Item 1.Legal Proceedings

The Company is a party to various legal proceedings incidental to its normal operating activities. In particular, like others in the construction supply and services industry, the Company is routinely involved in various disputes and claims arising out of construction projects, sometimes involving significant monetary damages or product replacement. We have in the past and are currently subject to product liability and warranty claims, including certain legal claims related to a commercial sealant product formerly incorporated into our products. In December 2022, the claimant in an arbitration of one such claim was awarded $20 million. The Company has appealed the award and believes, after taking into account all currently available information, including the advice of counsel and the likelihood of available insurance coverage, that this award will not have a material adverse effect on the Company's business, financial condition, results of operations or cash flows. The Company is also subject to litigation arising out of areas such as employment practices, workers compensation and general liability matters. Although it is very difficult to accurately predict the outcome of any such proceedings, facts currently available indicate that no matters will result in losses that would have a material adverse effect on the results of operations, cash flows or financial condition of the Company.

Item 1A.Risk Factors
There have been no material changes or additions to our risk factors discussed in our Annual Report on Form 10-K for the fiscal year ended March 2, 2024.

Item 2.Unregistered Sales of Equity Securities and Use of Proceeds

The following table provides information with respect to purchases made by the Company of its own stock during the second quarter of fiscal 2025:
PeriodTotal Number of Shares Purchased (a)Average Price Paid per ShareTotal Number of Shares Purchased as Part of Publicly Announced Plans or Programs (b)Maximum Number of Shares that May Yet Be Purchased under the Plans or Programs (b)
June 2, 2024 to June 29, 20241,679 $60.76 — 2,731,910 
June 30, 2024 to July 27, 20244,845 61.19 — 2,731,910 
July 28, 2024 to August 31, 2024— — — 2,731,910 
Total6,524 $60.89 — 2,731,910 
(a)The shares in this column represent the total number of shares surrendered to us by plan participants to satisfy withholding tax obligations related to share-based compensation. We did not purchase any shares pursuant to our publicly announced repurchase program during the fiscal quarter.
(b)In fiscal 2004, announced on April 10, 2003, the Board of Directors authorized the repurchase of 1,500,000 shares of Company stock. The Board increased the authorization by 750,000 shares, announced on January 24, 2008; by 1,000,000 shares on each of the announcement dates of October 8, 2008, January 13, 2016, January 9, 2018, January 14, 2020, October 7, 2021, and June 22, 2022; and by 2,000,000 shares, on each of the announcement dates of October 3, 2018, January 14, 2022 and October 6, 2023. The repurchase program does not have an expiration date.

29

Item 5.    Other Information

Insider Adoption or Termination of Trading Arrangements
During the three months ended August 31, 2024, none of our directors or officers (as defined in Rule 16a-1(f) of the Exchange Act) adopted or terminated any “Rule 10b5-1 trading arrangement” or any “non-Rule 10b5-1 trading arrangement”, as each term is defined in Item 408(c) of Regulation S-K.
Item 6. Exhibits
3.1
3.2
3.3
10.1
10.2
10.3
31.1#
31.2#
32.1#
32.2#
101#
The following materials from Apogee Enterprises, Inc.’s Quarterly Report on Form 10-Q for the quarter ended August 31, 2024, formatted in iXBRL (Inline Extensible Business Reporting Language): (i) the Consolidated Balance Sheets as of August 31, 2024 and March 2, 2024, (ii) the Consolidated Results of Operations for the three- and six-months ended August 31, 2024 and August 26, 2023, (iii) the Consolidated Statements of Comprehensive Earnings for the three- and six-months ended August 31, 2024 and August 26, 2023, (iv) the Consolidated Statements of Cash Flows for the six-months ended August 31, 2024 and August 26, 2023, (v) the Consolidated Statements of Shareholders' Equity for the three- and six-months ended August 31, 2024 and August 26, 2023, and (vi) Notes to Consolidated Financial Statements.
104#Cover Page Interactive Data File (formatted as iXBRL and contained in Exhibit 101)
Exhibits marked with a (#) sign are filed herewith.
30

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.
 APOGEE ENTERPRISES, INC.
Date: October 4, 2024 By: /s/ Ty R. Silberhorn
 Ty R. Silberhorn
President and Chief Executive Officer
(Principal Executive Officer)

Date: October 4, 2024 By: /s/ Matthew J. Osberg
 Matthew J. Osberg
Executive Vice President and Chief Financial Officer
(Principal Financial and Accounting Officer)


31
EX-31.1 2 apog-ex311_20240831.htm EX-31.1 Document

Exhibit 31.1
CERTIFICATION
I, Ty R. Silberhorn, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Apogee Enterprises, Inc.;
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 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 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: October 4, 2024
/s/ Ty R. Silberhorn
Ty R. Silberhorn
President and Chief Executive Officer



EX-31.2 3 apog-ex312_20240831.htm EX-31.2 Document

Exhibit 31.2
CERTIFICATION
I, Matthew J. Osberg, certify that:
1.I have reviewed this quarterly report on Form 10-Q of Apogee Enterprises, Inc.;
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 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 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: October 4, 2024
 
/s/ Matthew J. Osberg
Matthew J. Osberg
Executive Vice President and Chief Financial Officer

EX-32.1 4 apog-ex321_20240831.htm EX-32.1 Document

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 Apogee Enterprises, Inc. (the “Company”) on Form 10-Q for the period ended August 31, 2024 as filed with the Securities and Exchange Commission (the “Report”), I, Ty R. Silberhorn, 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 based on my knowledge:
(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/ Ty R. Silberhorn
Ty R. Silberhorn
President and Chief Executive Officer
October 4, 2024


EX-32.2 5 apog-ex322_20240831.htm EX-32.2 Document

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 Apogee Enterprises, Inc. (the “Company”) on Form 10-Q for the period ended August 31, 2024 as filed with the Securities and Exchange Commission (the “Report”), I, Matthew J. Osberg, Executive Vice President and Chief Financial 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 based on my knowledge:
(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/ Matthew J. Osberg
Matthew J. Osberg
Executive Vice President and Chief Financial Officer
October 4, 2024

EX-101.SCH 6 apog-20240831.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 9952151 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952152 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 9952153 - Statement - CONSOLIDATED RESULTS OF OPERATIONS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952154 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952155 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical) link:presentationLink link:calculationLink link:definitionLink 9952156 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952157 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) link:presentationLink link:calculationLink link:definitionLink 9952158 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 9952159 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities link:presentationLink link:calculationLink link:definitionLink 9952160 - Disclosure - Inventories link:presentationLink link:calculationLink link:definitionLink 9952161 - Disclosure - Financial Instruments link:presentationLink link:calculationLink link:definitionLink 9952162 - Disclosure - Debt link:presentationLink link:calculationLink link:definitionLink 9952163 - Disclosure - Commitments and Contingent Liabilities link:presentationLink link:calculationLink link:definitionLink 9952164 - Disclosure - Supplier Finance Program Obligations link:presentationLink link:calculationLink link:definitionLink 9952165 - Disclosure - Shareholders' Equity link:presentationLink link:calculationLink link:definitionLink 9952166 - Disclosure - Share-Based Compensation link:presentationLink link:calculationLink link:definitionLink 9952167 - Disclosure - Income Taxes link:presentationLink link:calculationLink link:definitionLink 9952168 - Disclosure - Earnings per Share link:presentationLink link:calculationLink link:definitionLink 9952169 - Disclosure - Business Segment Data link:presentationLink link:calculationLink link:definitionLink 9952170 - Disclosure - Restructuring link:presentationLink link:calculationLink link:definitionLink 9952171 - Disclosure - Subsequent Events link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Inventories (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Financial Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Debt (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Commitments and Contingent Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Supplier Finance Program Obligations (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Share-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Earnings per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Business Segment Data (Tables) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Restructuring (Tables) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Inventories (Details) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Financial Instruments - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Financial Instruments -Schedule of Fair Value Measurements (Details) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Debt - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Debt - Schedule of Interest Expense (Details) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Commitments and Contingent Liabilities - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Supplier Finance Program Obligations (Details) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Shareholders' Equity (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Share-Based Compensation - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954501 - Disclosure - Income Taxes (Details) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Earnings per Share (Details) link:presentationLink link:calculationLink link:definitionLink 9954503 - Disclosure - Business Segment Data - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954504 - Disclosure - Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details) link:presentationLink link:calculationLink link:definitionLink 9954505 - Disclosure - Restructuring - Additional Information (Details) link:presentationLink link:calculationLink link:definitionLink 9954506 - Disclosure - Restructuring - Restructuring Costs (Details) link:presentationLink link:calculationLink link:definitionLink 9954507 - Disclosure - Restructuring - Reserve (Details) link:presentationLink link:calculationLink link:definitionLink 9954508 - Disclosure - Subsequent Events (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 apog-20240831_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 apog-20240831_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 apog-20240831_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Deductions from reserve, net of recoveries Extended Product Warranty Accrual, Writeoff, after Recovery Extended Product Warranty Accrual, Writeoff, after Recovery Revenue recognized related to prior satisfaction of performance obligations Contract with Customer, Performance Obligation Satisfied in Previous Period Corporate and Other Corporate & Other Corporate Segment and Other Operating Segment [Member] Adjustments to reconcile net earnings to net cash provided by operating activities: Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract] Statistical Measurement [Domain] Statistical Measurement [Domain] Contract assets Contract with Customer, Asset, after Allowance for Credit Loss, Current Derivatives, Fair Value [Line Items] Derivatives, Fair Value [Line Items] Cover [Abstract] Cover [Abstract] Increase (decrease) in cash and cash equivalents Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect Other current liabilities Other Liabilities, Current Trading Symbol Trading Symbol Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] All Trading Arrangements All Trading Arrangements [Member] Companies backlog related to sales Companies Backlog Related to Sales Companies backlog related to sales. Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Non-NEOs Non-NEOs [Member] Minimum ratio of EBITDA-to-interest expense Debt Instrument, Covenant, EBITDA To Interest Expense Ratio, Minimum Debt Instrument, Covenant, EBITDA To Interest Expense Ratio, Minimum Schedule of Basic and Diluted Earnings Per Share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Vesting period Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Gross Unrealized Losses Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Loss Pay vs Performance Disclosure [Line Items] Line of Credit Facility [Table] Line of Credit Facility [Table] Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Debt, Fees Axis [Axis] Debt, Fees Axis [Axis] Debt, Fees Axis Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Unrealized gain (loss) on derivative instruments, tax Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax Income Tax Contingency [Table] Income Tax Contingency [Table] Summary of Significant Accounting Policies Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Operating lease liability Increase (Decrease) in Operating Lease Liability Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Restructuring and Related Activities [Abstract] Award Timing Disclosures [Line Items] Other current assets and liabilities Increase (Decrease) in Other Operating Assets and Liabilities, Net Other Performance Measure, Amount Other Performance Measure, Amount Common stock, outstanding (in shares) Common Stock, Shares, Outstanding Non-current operating lease liabilities Operating Lease, Liability, Noncurrent Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] Contract liabilities Contract with Customer, Liability, Current Other non-current assets Other Assets, Noncurrent Entity Tax Identification Number Entity Tax Identification Number Acquisition Holiday Condition Acquisition Holiday Condition [Member] Acquisition Holiday Condition Operating Segments Operating Segments [Member] Selling, general and administrative expenses Selling, General and Administrative Expenses [Member] Receivable Type [Axis] Receivable Type [Axis] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Operating Activities Net Cash Provided by (Used in) Operating Activities [Abstract] Intersegment eliminations Intersegment Eliminations [Member] Net benefit New Markets Tax Credit Transaction, Benefit, Net New Markets Tax Credit Transaction, Benefit, Net Equity Components [Axis] Equity Components [Axis] Other current assets Other Assets, Current Award Timing Method Award Timing Method [Text Block] Number of lines of credit Number Of Lines Of Credit Number Of Lines Of Credit Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Restructuring Type [Axis] Restructuring Type [Axis] Estimated Fair Value Total Debt Securities, Available-for-Sale Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Insider Trading Policies and Procedures [Line Items] Business Acquisition, Acquiree [Domain] Business Acquisition, Acquiree [Domain] Receivable [Domain] Receivable [Domain] Face value of performance bonds Guarantees, Fair Value Disclosure Adjustment to Compensation, Amount Adjustment to Compensation Amount Payables and Accruals [Abstract] Compensation Amount Outstanding Recovery Compensation Amount Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member] Entity Small Business Entity Small Business Company Selected Measure Amount Company Selected Measure Amount Schedule of Restructuring Restructuring and Related Costs [Table Text Block] Payments of debt issuance costs Payments of Debt Issuance Costs Tabular List, Table Tabular List [Table Text Block] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Receivables, net Receivables, Net, Current Share repurchases, value Stock Repurchased During Period, Value Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member] Schedule of Allowance for Credit Losses Accounts Receivable, Allowance for Credit Loss [Table Text Block] Debt Securities, Available-for-sale [Line Items] Debt Securities, Available-for-Sale [Line Items] Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares) Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount Payments Payments for Restructuring Schedule of Performance Obligations Expected to be Satisfied Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] Credit Facility [Domain] Credit Facility [Domain] Cash and cash equivalents at beginning of period Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Accounts and Financing Receivables [Table] Balance at beginning of period Balance at end of period Extended Product Warranty Accrual Current assets Assets, Current [Abstract] Goodwill Goodwill Consolidation Items [Axis] Consolidation Items [Axis] Less: allowance for credit losses Beginning balance Ending balance Accounts Receivable, Allowance for Credit Loss Number of quarters separating acquisition holidays Number of Quarters Separating Acquisition Holidays Number of Quarters Separating Acquisition Holidays Recognized over time (input method) Transferred over Time - Input Method [Member] Transferred over Time - Input Method Inventories Inventory Disclosure [Text Block] Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Interest payments Interest Paid, Including Capitalized Interest, Operating and Investing Activities Employee Stock Option Share-Based Payment Arrangement, Option [Member] Debt Securities, Available-for-Sale [Table] Debt Securities, Available-for-Sale [Table] Foreign currency forward/option contract Foreign Exchange Forward [Member] Other, net Proceeds from (Payments for) Other Financing Activities Total comprehensive earnings Comprehensive Income (Loss), Net of Tax, Attributable to Parent Junior preferred stock outstanding (in shares) Preferred Stock, Shares Outstanding Unsecured Senior Credit Facility Unsecured Senior Credit Facility [Member] Unsecured Senior Credit Facility Security Exchange Name Security Exchange Name Basis spread Debt Instrument, Basis Spread on Variable Rate Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity Investments Classified by Contractual Maturity Date [Table Text Block] Award Type [Axis] Award Type [Axis] Gross Unrealized Gains Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Gain Work-in-process Inventory, Work in Process, Net of Reserves Property, plant and equipment, net of accumulated depreciation of $460,167 and $445,017 Property, Plant and Equipment, Net Dividends paid (in usd per share) Common Stock, Dividends, Per Share, Cash Paid Common stock, par value (in usd per share) Common Stock, Par or Stated Value Per Share Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Revolving credit facility Revolving Credit Facility [Member] Expiration Date Trading Arrangement Expiration Date Investing Activities Net Cash Provided by (Used in) Investing Activities [Abstract] Target number of performance shares Target Number of Performance Shares Target Number of Performance Shares Operating lease liabilities Operating Lease, Liability, Current Total Shareholder Return Amount Total Shareholder Return Amount Common stock, issued (in shares) Common Stock, Shares, Issued Accrued income taxes Increase (Decrease) in Income Taxes Payable Equity Awards Adjustments, Footnote Equity Awards Adjustments, Footnote [Text Block] Maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions New Market Tax Credit Transactions Summary [Table Text Block] New Market Tax Credit Transactions Summary Aluminum hedging contract Derivative Liability Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Accumulated depreciation property, plant, and equipment Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Subsequent Event [Line Items] Subsequent Event [Line Items] Receivables, net Accounts Receivable, after Allowance for Credit Loss Exercise of stock options (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Common stock, authorized (in shares) Common Stock, Shares Authorized Basis of presentation Basis of Accounting, Policy [Policy Text Block] Unrealized gain (loss) on marketable securities, net of $30, $(8), $29 and $25 of tax expense (benefit), respectively OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax Weighted average diluted shares outstanding (in shares) Diluted earnings per share – weighted average common shares and potential common shares outstanding Weighted Average Number of Shares Outstanding, Diluted Expected restructuring cost Restructuring and Related Cost, Expected Cost Other comprehensive earnings (loss): Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Total restructuring charges Restructuring Costs MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] Long-term Debt, Type [Axis] Long-Term Debt, Type [Axis] Total shareholders’ equity Beginning balance Ending balance Equity, Attributable to Parent Municipal and Corporate Bonds Municipal and Corporate Bonds [Member] Municipal and Corporate Bonds [Member] Due within one year Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One Hedging Designation [Domain] Hedging Designation [Domain] Interest expense, net Interest Expense, Nonoperating Deferred income taxes Deferred Income Tax Expense (Benefit) Letters of credit outstanding, amount Letters of Credit Outstanding, Amount Selling, general and administrative expenses Selling, General and Administrative Expense Other comprehensive (loss) earnings Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Income Tax Contingency [Line Items] Income Tax Contingency [Line Items] Cost of Sales Cost of Sales [Member] Debt Long-Term Debt Pension Adjustments Prior Service Cost Pension Adjustments Prior Service Cost [Member] Schedule of Fair Value Measurements Fair Value Measurements, Recurring and Nonrecurring [Table Text Block] Document Fiscal Period Focus Document Fiscal Period Focus Obligations added to the program Supplier Finance Program, Obligation, Addition All Executive Categories All Executive Categories [Member] Weighted average effect of nonvested share grants and assumed exercise of stock options Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements Maximum number of acquisition holidays Maximum Number of Acquisition Holidays Maximum Number of Acquisition Holidays Schedule of Restructuring Reserve Schedule of Restructuring Reserve by Type of Cost [Table Text Block] Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Assets Assets [Abstract] Other comprehensive income (loss), net of tax Other Comprehensive Income (Loss), Net of Tax Document Type Document Type Derivative Contract [Domain] Derivative Contract [Domain] Schedule Of Interest Expense Schedule Of Interest Expense [Table Text Block] Schedule Of Interest Expense Settlement of New Markets Tax Credit transaction Settlement of New Markets Tax Credit Transaction Settlement of New Markets Tax Credit Transaction Pension Benefits Adjustments, Footnote Pension Benefits Adjustments, Footnote [Text Block] Schedule of Sales and Operating Income (Loss) Schedule of Segment Reporting Information, by Segment [Table Text Block] Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Purchases of marketable securities Payments to Acquire Marketable Securities Annualized cost savings Restructuring and Related Cost, Annualized Cost Savings Restructuring and Related Cost, Annualized Cost Savings Amortized Cost Total Debt Securities, Available-for-Sale, Amortized Cost Number of new markets tax credit agreements Number of New Markets Tax Credit Agreements Number of New Markets Tax Credit Agreements Schedule of Other Contract-Related Disclosures Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block] Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block] Subsequent Event [Table] Subsequent Event [Table] Maximum Maximum [Member] Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] Accounts payable Accounts Payable, Current Termination Date [Axis] Termination Date [Axis] Termination Date [Axis] Accounting Policies [Abstract] Industrial Revenue Bonds Industrial Revenue Bonds [Member] Industrial Revenue Bonds Revolving Credit Facility - CAD Revolving Credit Facility - CAD [Member] Revolving Credit Facility - CAD Current Fiscal Year End Date Current Fiscal Year End Date Statistical Measurement [Axis] Statistical Measurement [Axis] PEO Name PEO Name Balance at beginning of period Balance at end of period Supplier Finance Program, Obligation Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Earnings before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Award Type [Domain] Award Type [Domain] Term SOFR and CORRA Term SOFR and CORRA [Member] Term SOFR and CORRA Name Outstanding Recovery, Individual Name Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Issuance of stock, net of cancellations (in shares) Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Lender Fees Lender Fees [Member] Lender Fees Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Money market funds Money Market Funds, at Carrying Value Non-PEO NEO Non-PEO NEO [Member] Additional Paid-In Capital Additional Paid-in Capital [Member] Schedule of Receivables Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Award Timing Predetermined Award Timing Predetermined [Flag] Contract assets Increase (Decrease) in Contract with Customer, Asset Subsequent Event Type [Domain] Subsequent Event Type [Domain] Dividends paid Dividends paid Payments of Ordinary Dividends, Common Stock Class of Stock [Line Items] Class of Stock [Line Items] Maximum debt-to-EBITDA ratio Debt Instrument, Covenant, Net Debt To EBITDA Ratio, Maximum Debt Instrument, Covenant, Net Debt To EBITDA Ratio, Maximum New accounting standards New Accounting Pronouncements, Policy [Policy Text Block] Diluted earnings per share (in usd per share) Earnings Per Share, Diluted Non-cash lease expense Operating Lease, Right-of-Use Asset, Periodic Reduction Name Measure Name Entity Interactive Data Current Entity Interactive Data Current Type of Restructuring [Domain] Type of Restructuring [Domain] Contract liabilities Increase (Decrease) in Contract with Customer, Liability Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] UW Interco, LLC UW Interco, LLC [Member] UW Interco, LLC Junior preferred stock issued (in shares) Preferred Stock, Shares Issued Remaining shares authorized to be repurchased (in shares) Share Repurchase Program, Remaining Authorized, Number of Shares Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Termination benefits Employee Severance [Member] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Restructuring Restructuring and Related Activities Disclosure [Text Block] Receivables Increase (Decrease) in Receivables Share-based compensation Share-based compensation expense Share-Based Payment Arrangement, Noncash Expense Total fair value of shares vested Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value Other share retirements Stock Redeemed or Called During Period, Value Proceeds from sales of property, plant and equipment Proceeds from Sale of Property, Plant, and Equipment Construction contracts Accounts Receivable, Construction Contracts [Member] Accounts Receivable, Construction Contracts [Member] Income tax expense Income Tax Expense (Benefit) Notional value Derivative, Notional Amount Derivative asset Derivative Asset Accounts Receivable, Allowance for Credit Loss [Roll Forward] Accounts Receivable, Allowance for Credit Loss [Roll Forward] Weighted average period Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Net sales Total Segment net sales Revenue from Contract with Customer, Excluding Assessed Tax Other income, net Nonoperating Income (Expense) Statement of Comprehensive Income [Abstract] Statement of Comprehensive Income [Abstract] Capitalized fees Interest Costs Capitalized Net cash used by investing activities Net Cash Provided by (Used in) Investing Activities Operating income Segment operating income (loss) Operating Income (Loss) Interest expense, net Interest Expense, Operating and Nonoperating Variable Rate [Domain] Variable Rate [Domain] Number of reportable segments Number of Reportable Segments Total liabilities and shareholders’ equity Liabilities and Equity Subsequent Events Subsequent Events [Text Block] Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] All Adjustments to Compensation All Adjustments to Compensation [Member] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Accrued compensation and benefits Employee-related Liabilities, Current Additional paid-in capital Additional Paid in Capital Hedging Designation [Axis] Hedging Designation [Axis] Restructuring expense Restructuring Charges Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Underlying Security Market Price Change Underlying Security Market Price Change, Percent Individual: Individual [Axis] Accumulated Other Comprehensive (Loss) Income AOCI Attributable to Parent [Member] Expected timing of satisfaction Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Inventories, net Total inventories, net Inventory, Net Long-term Debt, Type [Domain] Long-Term Debt, Type [Domain] Entity Address, State or Province Entity Address, State or Province Statement [Line Items] Statement [Line Items] Number of drawdowns Number Of Drawdowns Number Of Drawdowns Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Additions charged to costs and expenses Extended Product Warranty Accrual, Additions Charged To Costs And Expenses Extended Product Warranty Accrual, Additions Charged To Costs And Expenses Deductions from allowance, net of recoveries Accounts Receivable, Allowance for Credit Loss, Writeoff, after Recovery Accounts Receivable, Allowance for Credit Loss, Writeoff, after Recovery Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] Financial Instruments [Domain] Financial Instruments [Domain] Accounts, Notes, Loans and Financing Receivable [Line Items] Accounts, Notes, Loans and Financing Receivable [Line Items] Initial purchase price Business Combination, Consideration Transferred Architectural Framing Systems Architectural Framing Segment [Member] Architectural Framing Segment [Member] Termination Date [Domain] Termination Date [Domain] [Domain] for Termination Date [Axis] Liabilities and Shareholders’ Equity Liabilities and Equity [Abstract] Minimum Minimum [Member] Restatement Determination Date Restatement Determination Date Adoption Date Trading Arrangement Adoption Date Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Schedule of Available-for-Sale Marketable Securities Schedule of Available-for-Sale Securities Reconciliation [Table Text Block] Debt Covenant [Axis] Debt Covenant [Axis] Debt Covenant Operating lease right-of-use assets Operating Lease, Right-of-Use Asset Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Credits charged to costs and expenses Accounts Receivable, Credit Loss Expense (Reversal) Statement Business Segments [Axis] Segments [Axis] Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member] Derivative Instrument [Axis] Derivative Instrument [Axis] Exercise Price Award Exercise Price Other interest expense Interest Expense, Other Earnings Per Share Earnings Per Share [Text Block] Accrued compensation and benefits Increase (Decrease) in Employee Related Liabilities Arrangement Duration Trading Arrangement Duration Subsequent Event Subsequent Event [Member] Trade accounts Trade Accounts Receivable [Member] Exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Shareholders’ equity Equity, Attributable to Parent [Abstract] Weighted Average Grant Date Fair Value (in usd per share) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Incremental Term SOFR and CORRA Adjustment Incremental Term SOFR and CORRA Adjustment [Member] Incremental Term SOFR and CORRA Adjustment Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] Restructuring Plan [Axis] Restructuring Plan [Axis] Segment [Domain] Segments [Domain] Sales and operating income data Segment Reporting Information, Profit (Loss) [Abstract] Debt Covenant [Domain] Debt Covenant [Domain] Debt Covenant [Domain] Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] Debt instrument term Debt Instrument, Term All Individuals All Individuals [Member] Proceeds from revolving credit facilities Proceeds from Lines of Credit PEO PEO [Member] Obligations settled Supplier Finance Program, Obligation, Settlement Variable Rate [Axis] Variable Rate [Axis] Income Tax Disclosure [Abstract] Income Tax Disclosure [Abstract] Name Trading Arrangement, Individual Name Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Intangible assets, net Intangible Assets, Net (Excluding Goodwill) Architectural Services Architectural Services Segment [Member] Architectural Services segment [Member] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Bank of Montreal Bank of Montreal [Member] Bank of Montreal Total unrecognized compensation cost related to nonvested share Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount Other adjustments Restructuring Reserve, Translation and Other Adjustment Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] Lender Name [Axis] Lender Name [Axis] Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member] Other share retirements (in shares) Stock Redeemed or Called During Period, Shares Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Restructuring Cost and Reserve [Line Items] Restructuring Cost and Reserve [Line Items] Local Phone Number Local Phone Number Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Other restructuring charges Other Restructuring [Member] Share repurchases (in shares) Stock Repurchased During Period, Shares Third-Party Fees Third-Party Fees [Member] Third-Party Fees Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Architectural Glass Architectural Glass [Member] Architectural Glass PEO Total Compensation Amount PEO Total Compensation Amount Income Statement Location [Axis] Statement of Income Location, Balance [Axis] Interest rate swap gain Interest Expense (Income), Derivatives Interest Expense (Income), Derivatives Share Repurchase Program [Domain] Share Repurchase Program [Domain] Sales/maturities of marketable securities Proceeds from Sale and Maturity of Debt Securities, Available-for-Sale Commitments and Contingent Liabilities Commitments and Contingencies Disclosure [Text Block] Debt Disclosure [Abstract] Debt Disclosure [Abstract] Common Stock at Par Value Common Stock [Member] Measure: Measure [Axis] Issuance of stock, net of cancellations Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Recognized over time (output method) Transferred over Time - Output Method [Member] Transferred over Time - Output Method Junior preferred stock authorized (in shares) Preferred Stock, Shares Authorized Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Line of Credit Line of Credit [Member] Entity Emerging Growth Company Entity Emerging Growth Company Proceeds received Gross Proceeds From New Markets Tax Credit Transaction Gross Proceeds From New Markets Tax Credit Transaction Aluminum hedging contract Commodity Option [Member] Segment Reporting [Abstract] Segment Reporting [Abstract] Entity Central Index Key Entity Central Index Key Schedule of Inventories Schedule of Inventory, Current [Table Text Block] Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Stockholders' Equity Equity [Text Block] Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Wells Fargo Bank, N.A. Wells Fargo Bank, N.A. [Member] Wells Fargo Bank, N.A. Equity Component [Domain] Equity Component [Domain] Junior preferred stock par value (in usd per share) Preferred Stock, Par or Stated Value Per Share Financial Instrument [Axis] Financial Instrument [Axis] Business Segment Data Segment Reporting Disclosure [Text Block] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Share-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Restricted stock awards and restricted stock units Restricted Stock Restricted Stock [Member] Entity Shell Company Entity Shell Company Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Title Trading Arrangement, Individual Title Statement [Table] Statement [Table] Interest on debt Interest Expense, Debt Unrecognized tax benefits Unrecognized Tax Benefits Consolidation Items [Domain] Consolidation Items [Domain] City Area Code City Area Code Term Loan Facility Term Loan Facility [Member] Term Loan Facility Current liabilities Liabilities, Current [Abstract] Contract termination costs Contract Termination [Member] Deferred costs Deferred Costs Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] Quoted Prices in Active Markets (Level 1) Fair Value, Inputs, Level 1 [Member] Total current assets Assets, Current Total receivables Accounts Receivable, before Allowance for Credit Loss Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Non-cash Activity Noncash Investing and Financing Items [Abstract] Amount of available commitment Line of Credit Facility, Remaining Borrowing Capacity Repurchase of common stock Payments for Repurchase of Common Stock Long-term debt Long-Term Debt, Excluding Current Maturities Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Subsequent Event Type [Axis] Subsequent Event Type [Axis] Income Taxes Income Tax Disclosure [Text Block] Share repurchases Stock Repurchased and Retired During Period, Value Income tax expense as a percentage of earnings before income taxes Income Tax Expense As Percentage Of Earnings Before Income Taxes, Percent Income Tax Expense As Percentage Of Earnings Before Income Taxes, Percent Earnings Per Share [Abstract] Earnings Per Share [Abstract] Equity [Abstract] Raw materials Inventory, Raw Materials, Net of Reserves Estimated Fair Value Debt Securities, Available-for-Sale, Fair Value, Fiscal Year Maturity [Abstract] Retained earnings Retained Earnings (Accumulated Deficit) Share repurchases (in shares) Stock Repurchased and Retired During Period, Shares Inventories Increase (Decrease) in Inventories Schedule of Obligation Activity and Outstanding Balances Supplier Finance Program [Table Text Block] Repayments on revolving credit facilities Repayments of Long-Term Lines of Credit Non-current self-insurance reserves Self Insurance Reserve, Noncurrent Amount awarded to other party Litigation Settlement, Amount Awarded to Other Party Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Equity Awards Adjustments Equity Awards Adjustments [Member] Net cash used by financing activities Net Cash Provided by (Used in) Financing Activities Underlying Securities Award Underlying Securities Amount Performance share units Performance Shares [Member] Credit Facility [Axis] Credit Facility [Axis] Interest income Interest Income, Other Cash dividends Dividends, Common Stock, Cash Amendment Flag Amendment Flag Entity Registrant Name Entity Registrant Name Canadian Credit Facilities Canadian Credit Facilities [Member] Canadian Credit Facilities Loss (gain) on disposal of property, plant and equipment Gain (Loss) on Disposition of Property Plant Equipment Recognized at shipment Transferred at Point in Time [Member] Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Depreciation and amortization Depreciation, Depletion and Amortization Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Gross profit Gross Profit Schedule of Guarantees and warranties Schedule of Product Warranty Liability [Table Text Block] Fair Value as of Grant Date Award Grant Date Fair Value Subsequent Events [Abstract] Other Observable Inputs (Level 2) Fair Value, Inputs, Level 2 [Member] Due within one year Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One Debt Debt Disclosure [Text Block] Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Recovery of Erroneously Awarded Compensation Disclosure [Line Items] Schedule of Disaggregates Total Revenue by Timing of Recognition Disaggregation of Revenue [Table Text Block] Entity Address, Postal Zip Code Entity Address, Postal Zip Code Schedule of Restructuring and Related Costs [Table] Restructuring Cost [Table] Interest rate swap contract Interest Rate Swap [Member] Restatement Determination Date: Restatement Determination Date [Axis] Title of 12(b) Security Title of 12(b) Security Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 21,945,986 and 22,089,265, respectively Common Stock, Value, Issued Share Repurchase Program Share Repurchase Program [Member] Share Repurchase Program [Member] Share-based Payment Arrangement [Abstract] Share-Based Payment Arrangement [Abstract] Large-Scale Optical Large Scale Optical [Member] Large scale optical. Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member] Loss on extinguishment of debt Gain (Loss) on Extinguishment of Debt Debt, Fees Axis [Domain] Debt, Fees Axis [Domain] Debt, Fees Axis [Domain] Financing Activities Net Cash Provided by (Used in) Financing Activities [Abstract] Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member] Junior preferred stock of $1.00 par value; authorized 200,000 shares; zero issued and outstanding Preferred Stock, Value, Issued Guarantees and warranties Movement in Extended Product Warranty Accrual [Roll Forward] Basic earnings per share (in usd per share) Earnings Per Share, Basic Accounts payable Increase (Decrease) in Accounts Payable Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Capital expenditures in accounts payable Capital Expenditures Incurred but Not yet Paid Aggregate Pension Adjustments Service Cost Aggregate Pension Adjustments Service Cost [Member] Designated as Hedging Instrument Designated as Hedging Instrument [Member] Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Schedule of Stock by Class [Table] Stock, Class of Stock [Table] Total current liabilities Liabilities, Current Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member] Share Repurchase Program [Axis] Share Repurchase Program [Axis] Total assets Assets Cost of sales Cost of Goods and Services Sold Outstanding borrowings Long-Term Line of Credit Supplier Finance Program Obligations Supplier Finance Program [Text Block] Number of Awards (in shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Capital expenditures Payments to Acquire Property, Plant, and Equipment Other non-current liabilities Other Liabilities, Noncurrent Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Commitments and contingent liabilities (Note 6) Commitments and Contingencies Termination Date Trading Arrangement Termination Date Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items] Share-Based Compensation Share-Based Payment Arrangement [Text Block] August 2025 August 2025 [Member] August 2025 [Member] Marketable Securities [Abstract] Marketable Securities [Abstract] Entity Address, City or Town Entity Address, City or Town Due after one year through five years Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five Debt Instrument [Axis] Debt Instrument [Axis] Net earnings Net earnings Net earnings Net Income (Loss) Attributable to Parent Trading Arrangement: Trading Arrangement [Axis] Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Business Acquisition [Axis] Business Acquisition [Axis] Equity Awards Adjustments, Excluding Value Reported in Compensation Table Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member] Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member] Entity File Number Entity File Number Unrealized (loss) gain on derivative instruments, net of $(257), $66, $107 and $(55) of tax (benefit) expense, respectively Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax Revenue, Receivables and Contract Assets and Liabilities Revenue from Contract with Customer [Text Block] Document Fiscal Year Focus Document Fiscal Year Focus Income Statement [Abstract] Income Statement [Abstract] Entity Address, Address Line One Entity Address, Address Line One Other adjustments Accounts Receivable, Allowance for Credit Loss, Other Adjustments Accounts Receivable, Allowance for Credit Loss, Other Adjustments Debt Instrument, Name [Domain] Debt Instrument, Name [Domain] Effect of exchange rates on cash Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations Restructuring Plan [Domain] Restructuring Plan [Domain] Name Forgone Recovery, Individual Name Document Period End Date Document Period End Date Finished goods Inventory, Finished Goods, Net of Reserves Other, net Other Noncash Income (Expense) Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Base Rate Base Rate [Member] September 2025 September 2025 [Member] September 2025 [Member] Line of Credit Facility, Lender [Domain] Line of Credit Facility, Lender [Domain] Insider Trading Arrangements [Line Items] Line of Credit Facility [Line Items] Line of Credit Facility [Line Items] Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Inventory Disclosure [Abstract] Inventory Disclosure [Abstract] Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost, Fiscal Year Maturity [Abstract] Financial Instruments Marketable Securities [Table Text Block] Revenue recognized related to contract liabilities from prior year-end Contract with Customer, Liability, Revenue Recognized Adjustment to Compensation: Adjustment to Compensation [Axis] Document Transition Report Document Transition Report Document Quarterly Report Document Quarterly Report Purchase obligations Purchase Obligation Due after one year through five years Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year One Through Five Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Entity Current Reporting Status Entity Current Reporting Status Retained Earnings Retained Earnings [Member] Pension Adjustments Service Cost Pension Adjustments Service Cost [Member] Acquisition holiday Debt Instrument, Covenant, Acquisition Holiday Debt Instrument, Covenant, Acquisition Holiday Weighted average basic shares outstanding (in shares) Basic earnings per share – weighted average common shares outstanding Weighted Average Number of Shares Outstanding, Basic Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Unrealized (loss) gain on marketable securities, tax OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax Municipal and corporate bonds Long-term Investments, Municipal And Corporate Bonds Long-term Investments, Municipal And Corporate Bonds Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Foreign currency translation adjustments Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, before Tax Supplier Finance Program, Obligation [Roll Forward] Supplier Finance Program, Obligation [Roll Forward] Executive Category: Executive Category [Axis] Project Fortify Project Fortify [Member] Project Fortify Name Awards Close in Time to MNPI Disclosures, Individual Name Entity Filer Category Entity Filer Category Beginning balance Ending Balance Restructuring Reserve Revenue to be recognized Revenue, Remaining Performance Obligation, Amount Income Statement Location [Domain] Statement of Income Location, Balance [Domain] Company Selected Measure Name Company Selected Measure Name EX-101.PRE 10 apog-20240831_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 12 R1.htm IDEA: XBRL DOCUMENT v3.24.3
Cover Page - shares
6 Months Ended
Aug. 31, 2024
Oct. 01, 2024
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Aug. 31, 2024  
Document Transition Report false  
Entity File Number 0-6365  
Entity Registrant Name APOGEE ENTERPRISES, INC.  
Entity Incorporation, State or Country Code MN  
Entity Tax Identification Number 41-0919654  
Entity Address, Address Line One 4400 West 78th Street, Suite 520  
Entity Address, City or Town Minneapolis  
Entity Address, State or Province MN  
Entity Address, Postal Zip Code 55435  
City Area Code 952  
Local Phone Number 835-1874  
Title of 12(b) Security Common stock, par value $0.33 1/3 per share  
Trading Symbol APOG  
Security Exchange Name NASDAQ  
Entity Current Reporting Status Yes  
Entity Interactive Data Current Yes  
Entity Filer Category Large Accelerated Filer  
Entity Small Business false  
Entity Emerging Growth Company false  
Entity Shell Company false  
Entity Common Stock, Shares Outstanding   21,943,016
Entity Central Index Key 0000006845  
Amendment Flag false  
Document Fiscal Year Focus 2025  
Document Fiscal Period Focus Q2  
Current Fiscal Year End Date --03-01  
XML 13 R2.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED BALANCE SHEETS (Unaudited) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Current assets    
Cash and cash equivalents $ 51,024 $ 37,216
Receivables, net 177,146 173,557
Inventories, net 79,591 69,240
Contract assets 49,285 49,502
Other current assets 36,742 29,124
Total current assets 393,788 358,639
Property, plant and equipment, net of accumulated depreciation of $460,167 and $445,017 240,627 244,216
Operating lease right-of-use assets 41,886 40,221
Goodwill 129,119 129,182
Intangible assets, net 64,547 66,114
Other non-current assets 47,125 45,692
Total assets 917,092 884,064
Current liabilities    
Accounts payable 86,035 84,755
Accrued compensation and benefits 40,901 53,801
Contract liabilities 41,655 34,755
Operating lease liabilities 12,661 12,286
Other current liabilities 57,597 59,108
Total current liabilities 238,849 244,705
Long-term debt 62,000 62,000
Non-current operating lease liabilities 33,323 31,907
Non-current self-insurance reserves 32,055 30,552
Other non-current liabilities 44,443 43,875
Commitments and contingent liabilities (Note 6)
Shareholders’ equity    
Junior preferred stock of $1.00 par value; authorized 200,000 shares; zero issued and outstanding 0 0
Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 21,945,986 and 22,089,265, respectively 7,315 7,363
Additional paid-in capital 155,883 152,818
Retained earnings 373,458 340,375
Accumulated other comprehensive loss (30,234) (29,531)
Total shareholders’ equity 506,422 471,025
Total liabilities and shareholders’ equity $ 917,092 $ 884,064
XML 14 R3.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Statement of Financial Position [Abstract]    
Accumulated depreciation property, plant, and equipment $ 460,167 $ 445,017
Junior preferred stock par value (in usd per share) $ 1.00 $ 1.00
Junior preferred stock authorized (in shares) 200,000 200,000
Junior preferred stock issued (in shares) 0 0
Junior preferred stock outstanding (in shares) 0 0
Common stock, par value (in usd per share) $ 0.33 $ 0.33
Common stock, authorized (in shares) 50,000,000 50,000,000
Common stock, issued (in shares) 21,945,986 22,089,265
Common stock, outstanding (in shares) 21,945,986 22,089,265
XML 15 R4.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED RESULTS OF OPERATIONS (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Income Statement [Abstract]        
Net sales $ 342,440 $ 353,675 $ 673,956 $ 715,388
Cost of sales 245,119 258,304 477,780 527,031
Gross profit 97,321 95,371 196,176 188,357
Selling, general and administrative expenses 55,356 54,818 112,830 114,037
Operating income 41,965 40,553 83,346 74,320
Interest expense, net 1,140 2,230 1,590 4,266
Other income, net 290 4,900 433 4,612
Earnings before income taxes 41,115 43,223 82,189 74,666
Income tax expense 10,549 9,896 20,612 17,763
Net earnings $ 30,566 $ 33,327 $ 61,577 $ 56,903
Basic earnings per share (in usd per share) $ 1.40 $ 1.54 $ 2.83 $ 2.61
Diluted earnings per share (in usd per share) $ 1.40 $ 1.52 $ 2.80 $ 2.57
Weighted average basic shares outstanding (in shares) 21,762 21,708 21,793 21,813
Weighted average diluted shares outstanding (in shares) 21,875 21,962 21,985 22,105
XML 16 R5.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Statement of Comprehensive Income [Abstract]        
Net earnings $ 30,566 $ 33,327 $ 61,577 $ 56,903
Other comprehensive earnings (loss):        
Unrealized gain (loss) on marketable securities, net of $30, $(8), $29 and $25 of tax expense (benefit), respectively 114 (28) 108 93
Unrealized (loss) gain on derivative instruments, net of $(257), $66, $107 and $(55) of tax (benefit) expense, respectively (846) 217 350 (180)
Foreign currency translation adjustments (492) 508 (1,161) 943
Other comprehensive (loss) earnings (1,224) 697 (703) 856
Total comprehensive earnings $ 29,342 $ 34,024 $ 60,874 $ 57,759
XML 17 R6.htm IDEA: XBRL DOCUMENT v3.24.3
Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Statement of Comprehensive Income [Abstract]        
Unrealized (loss) gain on marketable securities, tax $ 30 $ (8) $ 29 $ 25
Unrealized gain (loss) on derivative instruments, tax $ (257) $ 66 $ 107 $ (55)
XML 18 R7.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) - USD ($)
$ in Thousands
6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Operating Activities    
Net earnings $ 61,577 $ 56,903
Adjustments to reconcile net earnings to net cash provided by operating activities:    
Depreciation and amortization 19,664 20,661
Share-based compensation 5,642 4,483
Deferred income taxes 2,016 (4,281)
Loss (gain) on disposal of property, plant and equipment 291 (62)
Settlement of New Markets Tax Credit transaction 0 (4,687)
Non-cash lease expense 5,844 6,153
Other, net 1,002 (1,121)
Changes in operating assets and liabilities:    
Receivables (3,698) (8,238)
Inventories (10,509) 5,841
Contract assets 238 8,992
Accounts payable 1,335 (3,529)
Accrued compensation and benefits (12,823) (17,567)
Contract liabilities 6,987 4,244
Operating lease liability (5,748) (6,608)
Accrued income taxes (224) 4,292
Other current assets and liabilities (7,462) (2,912)
Net cash provided by operating activities 64,132 62,564
Investing Activities    
Capital expenditures (15,662) (15,018)
Proceeds from sales of property, plant and equipment 608 143
Purchases of marketable securities (2,246) (969)
Sales/maturities of marketable securities 1,850 775
Net cash used by investing activities (15,450) (15,069)
Financing Activities    
Proceeds from revolving credit facilities 95,201 174,853
Repayments on revolving credit facilities (95,201) (199,000)
Payments of debt issuance costs (3,485) 0
Repurchase of common stock (15,061) (11,821)
Dividends paid (10,821) (10,467)
Other, net (5,266) (3,705)
Net cash used by financing activities (34,633) (50,140)
Effect of exchange rates on cash (241) (405)
Increase (decrease) in cash and cash equivalents 13,808 (3,050)
Cash and cash equivalents at beginning of period 37,216 21,473
Cash and cash equivalents at end of period 51,024 18,423
Non-cash Activity    
Capital expenditures in accounts payable $ 1,426 $ 2,493
XML 19 R8.htm IDEA: XBRL DOCUMENT v3.24.3
CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock at Par Value
Additional Paid-In Capital
Retained Earnings
Accumulated Other Comprehensive (Loss) Income
Beginning balance (in shares) at Feb. 25, 2023   22,224      
Beginning balance at Feb. 25, 2023 $ 396,408 $ 7,408 $ 146,816 $ 273,740 $ (31,556)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 23,576     23,576  
Other comprehensive income (loss), net of tax 159       159
Issuance of stock, net of cancellations (in shares)   155      
Issuance of stock, net of cancellations 56 $ 52 13 (9)  
Share-based compensation 2,178   2,178    
Share repurchases (in shares)   (120)      
Share repurchases (5,193) $ (40) (829) (4,324)  
Other share retirements (in shares)   (40)      
Other share retirements (1,733) $ (14) (281) (1,438)  
Cash dividends (5,245)     (5,245)  
Ending balance (in shares) at May. 27, 2023   22,219      
Ending balance at May. 27, 2023 410,206 $ 7,406 147,897 286,300 (31,397)
Beginning balance (in shares) at Feb. 25, 2023   22,224      
Beginning balance at Feb. 25, 2023 396,408 $ 7,408 146,816 273,740 (31,556)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings $ 56,903        
Ending balance (in shares) at Aug. 26, 2023 22,072        
Ending balance at Aug. 26, 2023 $ 432,318 $ 7,357 147,413 308,248 (30,700)
Beginning balance (in shares) at May. 27, 2023   22,219      
Beginning balance at May. 27, 2023 410,206 $ 7,406 147,897 286,300 (31,397)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 33,327     33,327  
Other comprehensive income (loss), net of tax $ 697       697
Issuance of stock, net of cancellations (in shares) (3)        
Issuance of stock, net of cancellations $ (189) (1) 7 (195)  
Share-based compensation $ 2,305   2,305    
Exercise of stock options (in shares) 25        
Exercise of stock options $ (1,184) $ 8 (1,192)    
Share repurchases (in shares)   (160)      
Share repurchases $ (6,628) $ (53) (1,160) (5,415)  
Other share retirements (in shares) (9)        
Other share retirements $ (994) (3) (444) (547)  
Cash dividends $ (5,222)     (5,222)  
Ending balance (in shares) at Aug. 26, 2023 22,072        
Ending balance at Aug. 26, 2023 $ 432,318 $ 7,357 147,413 308,248 (30,700)
Beginning balance (in shares) at Mar. 02, 2024   22,089      
Beginning balance at Mar. 02, 2024 471,025 $ 7,363 152,818 340,375 (29,531)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 31,011     31,011  
Other comprehensive income (loss), net of tax 521       521
Issuance of stock, net of cancellations (in shares)   170      
Issuance of stock, net of cancellations 0 $ 57 (57)    
Share-based compensation 2,704   2,704    
Share repurchases (in shares)   (242)      
Share repurchases (15,061) $ (81) (1,860) (13,120)  
Other share retirements (in shares)   (80)      
Other share retirements (4,836) $ (27) (603) (4,206)  
Cash dividends (5,409)     (5,409)  
Ending balance (in shares) at Jun. 01, 2024   21,937      
Ending balance at Jun. 01, 2024 479,955 $ 7,312 153,002 348,651 (29,010)
Beginning balance (in shares) at Mar. 02, 2024   22,089      
Beginning balance at Mar. 02, 2024 471,025 $ 7,363 152,818 340,375 (29,531)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings $ 61,577        
Ending balance (in shares) at Aug. 31, 2024 21,946        
Ending balance at Aug. 31, 2024 $ 506,422 $ 7,315 155,883 373,458 (30,234)
Beginning balance (in shares) at Jun. 01, 2024   21,937      
Beginning balance at Jun. 01, 2024 479,955 $ 7,312 153,002 348,651 (29,010)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 30,566     30,566  
Other comprehensive income (loss), net of tax (1,224)       (1,224)
Issuance of stock, net of cancellations (in shares)   16      
Issuance of stock, net of cancellations 0 $ 5 (5)    
Share-based compensation 2,938   2,938    
Other share retirements (in shares)   (7)      
Other share retirements (401) $ (2) (52) (347)  
Cash dividends $ (5,412)     (5,412)  
Ending balance (in shares) at Aug. 31, 2024 21,946        
Ending balance at Aug. 31, 2024 $ 506,422 $ 7,315 $ 155,883 $ 373,458 $ (30,234)
XML 20 R9.htm IDEA: XBRL DOCUMENT v3.24.3
Summary of Significant Accounting Policies
6 Months Ended
Aug. 31, 2024
Accounting Policies [Abstract]  
Summary of Significant Accounting Policies Summary of Significant Accounting Policies
Basis of presentation
The consolidated financial statements of Apogee Enterprises, Inc. (we, us, our or the Company) have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP). The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024. We use the same accounting policies in preparing quarterly and annual financial statements. All adjustments necessary for a fair presentation of quarterly and year to date operating results are reflected herein and are of a normal, recurring nature. The results of operations for the three- and six-month periods ended August 31, 2024 are not necessarily indicative of the results to be expected for the full year.

New accounting standards
In November 2023, the Financial Accounting Standards Board (FASB) issued ASU 2023-07, Improvements to Reportable Segment Disclosures, which expands the required disclosure for reportable segments. This guidance requires entities to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all segment disclosures which are currently required annually. This ASU additionally requires entities to disclose the title and position of the individual or the name of the group or committee identified as its chief operating decision-maker. Such guidance, which is required to be applied retrospectively, is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, although early adoption is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact to our segment disclosures for the year ended March 1, 2025 and future interim periods.

In December 2023, the FASB issued ASU 2023-09, Improvements to Income Tax Disclosures, intended to enhance the transparency and decision-usefulness of income tax disclosures. Such guidance requires entities to provide additional information within their income tax rate reconciliation, including further disclosure of federal, state, and foreign income taxes and to provide more details about these reconciling items if a quantitative threshold is met. This guidance additionally requires expanded disclosure of income taxes paid, including amounts paid for federal, state, and foreign taxes. This ASU, which is required to be applied prospectively, is effective for fiscal years beginning after December 15, 2024, although early adoption and retrospective application is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact on our income tax disclosures, including the processes and controls around the collection of this information.
XML 21 R10.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities
6 Months Ended
Aug. 31, 2024
Revenue from Contract with Customer [Abstract]  
Revenue, Receivables and Contract Assets and Liabilities Revenue, Receivables and Contract Assets and Liabilities
Revenue
The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Recognized at shipment$140,518 $152,241 $277,240 $304,895 
Recognized over time (input method)118,683 118,270 235,364 241,651 
Recognized over time (output method)83,239 83,164 161,352 168,842 
Total$342,440 $353,675 $673,956 $715,388 

Receivables
Receivables reflected in the financial statements represent the net amount expected to be collected. An allowance for credit losses is established based on expected losses. Expected losses are estimated by reviewing individual accounts, considering aging, financial condition of the debtor, recent payment history, current and forecasted economic conditions and other relevant factors. Upon billing, aging of receivables is monitored until collection. An account is considered current when it is within agreed upon payment terms. An account is written off when it is determined that the asset is no longer collectible.
(In thousands)August 31, 2024March 2, 2024
Trade accounts$108,449 $115,061 
Construction contracts70,672 61,879 
Total receivables179,121 176,940 
Less: allowance for credit losses1,975 3,383 
Receivables, net$177,146 $173,557 

The following table summarizes the activity in the allowance for credit losses for the six-month period ended:
(In thousands)August 31, 2024
Beginning balance$3,383 
Credits charged to costs and expenses(1,414)
Deductions from allowance, net of recoveries13 
Other adjustments(7)
Ending balance$1,975 

Contract assets and liabilities
Contract assets consist of retainage, costs and earnings in excess of billings and other unbilled amounts typically generated when revenue recognized exceeds the amount billed to the customer. Retainage on construction contracts represents amounts withheld by our customers on long-term projects until the project reaches a level of completion where amounts are released to us from the customer. Contract liabilities consist of billings in excess of costs and earnings and other deferred revenue on contracts.

The time period between when performance obligations are complete and payment is due is not significant. In certain parts of our business that recognize revenue over time, progress billings follow an agreed-upon schedule of values.

The changes in contract assets and contract liabilities were mainly due to timing of project activity within our businesses that operate under long-term contracts.
Other contract-related disclosuresThree Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Revenue recognized related to contract liabilities from prior year-end$3,451 $2,249 $30,361 $24,956 
Revenue recognized related to prior satisfaction of performance obligations4,867 4,477 8,166 4,904 

Some of our contracts have an expected duration of longer than a year, with performance obligations extending over that time frame. Generally, these contracts are found in our businesses that typically operate with long-term contracts, which recognize revenue over time. The transaction prices associated with unsatisfied performance obligations at August 31, 2024 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)August 31, 2024
Within one year
$535,538 
Between one and two years
305,493 
Beyond two years
111,600 
Total$952,631 
XML 22 R11.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories
6 Months Ended
Aug. 31, 2024
Inventory Disclosure [Abstract]  
Inventories Inventories
Inventories
(In thousands)August 31, 2024March 2, 2024
Raw materials$31,952 $31,363 
Work-in-process16,656 12,291 
Finished goods30,983 25,586 
Total inventories, net$79,591 $69,240 
XML 23 R12.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments
6 Months Ended
Aug. 31, 2024
Marketable Securities [Abstract]  
Financial Instruments Financial Instruments
Marketable securities
Through our wholly-owned insurance subsidiary, Prism Assurance, Ltd. (Prism), we hold the following available-for-sale marketable securities, made up of fixed-maturity investments: 
(In thousands)Amortized CostGross Unrealized GainsGross Unrealized LossesEstimated
Fair Value
August 31, 2024$11,708 $37 $323 $11,422 
March 2, 202411,327 15 437 10,905 

Prism insures a portion of our general liability, workers’ compensation and automobile liability risks using reinsurance agreements to meet statutory requirements. The reinsurance carrier requires Prism to maintain fixed-maturity investments for the purpose of providing collateral for Prism’s obligations under the reinsurance agreements.

The amortized cost and estimated fair values of these investments at August 31, 2024, by contractual maturity, are shown below. Expected maturities may differ from contractual maturities, as borrowers may have the right to call or prepay obligations with or without penalty.
(In thousands)Amortized CostEstimated Fair Value
Due within one year$3,119 $3,092 
Due after one year through five years8,589 8,330 
Total$11,708 $11,422 

Derivative instruments
We periodically use interest rate swaps, currency put options, and forward purchase contracts to manage risks generally associated with foreign exchange rate, interest rate and commodity price fluctuations. The information that follows explains the various types of derivatives and financial instruments we use, how such instruments are accounted for, and how such instruments impact our financial position and performance.

In fiscal 2020, we entered into an interest rate swap to hedge exposure to variability in cash flows from interest payments on floating-rate borrowings under our credit facility. As of August 31, 2024, the interest rate swap contract had a notional value of $30.0 million and has a maturity date of February 5, 2026.

We periodically enter into forward purchase contracts and/or fixed/floating swaps to manage the risk associated with fluctuations in aluminum prices and fluctuations in foreign exchange rates. These contracts generally have an original maturity date of less than one year. As of August 31, 2024, we held aluminum purchase contracts and foreign exchange option contracts with U.S. dollar notional values of $2.0 million and $1.5 million, respectively.

The mark to market adjustments on these derivative instruments are recorded within our consolidated balance sheets within other current assets and other current liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive loss until which time the hedged transaction is settled and gains or losses are reclassified to net earnings.
Fair value measurements
Financial assets and liabilities are classified in the fair value hierarchy based on the lowest level input that is significant to the fair value measurement: Level 1 (unadjusted quoted prices in active markets for identical assets or liabilities); Level 2 (observable market inputs, other than quoted prices included in Level 1); and Level 3 (unobservable inputs that cannot be corroborated by observable market data). We do not have any Level 3 financial assets or liabilities.
(In thousands)Quoted Prices in
Active Markets
(Level 1)
Other Observable Inputs (Level 2)Total Fair Value
August 31, 2024
Assets:
Money market funds$42,400 $— $42,400 
Municipal and corporate bonds— 11,422 11,422 
Foreign currency option contract— 28 28 
Interest rate swap contract— 781 781 
Liabilities:
Aluminum hedging contract— 20 20 
March 2, 2024
Assets:
Money market funds$26,529 $— $26,529 
Municipal and corporate bonds— 10,905 10,905 
Foreign currency forward/option contract— 
Interest rate swap contract— 1,292 1,292 
Liabilities:
Aluminum hedging contract— 529 529 
XML 24 R13.htm IDEA: XBRL DOCUMENT v3.24.3
Debt
6 Months Ended
Aug. 31, 2024
Debt Disclosure [Abstract]  
Debt Debt
On July 19, 2024, we entered into a Credit Agreement (the Credit Agreement) with Bank of America, N.A., as administrative agent, and other lenders. The Credit Agreement provides for an unsecured senior credit facility in an aggregate principal amount of up to $700.0 million, in which commitments are available through a $450.0 million, five-year revolving credit facility and a committed $250.0 million delayed draw term loan facility. Borrowings under the revolving credit facility can be in Canadian dollars (CAD) limited to $25.0 million USD. The term loan facility may be borrowed in up to two drawdowns, which are available to be made within one year after the closing date. The senior credit facility has a term of five years with a maturity date of July 19, 2029. Outstanding borrowings under the revolving credit facility were $50.0 million as of August 31, 2024. As of August 31, 2024, the term loan facility had not been drawn.

The Credit Agreement replaces the previous revolving credit facility with Wells Fargo Bank, N.A., as administrative agent, and other lenders, with maximum borrowings up to $385.0 million, and the two Canadian credit facilities with Bank of Montreal totaling $25.0 million USD. Outstanding borrowings under the previous revolving credit facility were $50.0 million as of March 2, 2024. We had no outstanding borrowings under the Canadian facilities as of March 2, 2024.

As a result of the transaction, in the second quarter of fiscal 2025, we recognized a loss on extinguishment of debt within interest expense of $0.5 million for the write-off of unamortized financing fees related to the previous revolving credit facility. Additionally, we capitalized $3.0 million of lender fees and $0.6 million of third-party fees incurred in connection with the Credit Agreement, which were recorded as other non-current assets and will be amortized over the term of the credit facility as interest expense.

The Credit Agreement contains two maintenance financial covenants that require our Consolidated Leverage Ratio (as defined in the Credit Agreement) to be less than 3.50 and our Consolidated Interest Coverage Ratio (as defined in the Credit Agreement) to exceed 3.00. At August 31, 2024, we were in compliance with all covenants as defined under the terms of the Credit Agreement.

The Credit Agreement also contains an acquisition “holiday.” In the event we make an acquisition for which the purchase price is greater than $75 million, we can elect to increase the maximum Consolidated Leverage Ratio (as defined in the Credit Agreement) to 4.00 for a period of four consecutive fiscal quarters, commencing with the fiscal quarter in which a qualifying acquisition occurs. No more than two acquisition holidays can occur during the term of the Credit Agreement, and at least two fiscal quarters must separate qualifying acquisitions.
Borrowings under the Credit Agreement bear floating interest at either the Base Rate or Term Secured Overnight Financing Rate (SOFR), or, for CAD borrowings, Canadian Overnight Repo Rate Average (CORRA) plus, in each a margin based on the Consolidated Leverage Ratio (as defined in the Credit Agreement). For Base Rate borrowings, the margin ranges from 0.25% to 0.75%. For Term SOFR and CORRA borrowings, the margin ranges from 1.25% to 1.75%, with an incremental Term SOFR and CORRA adjustment of 0.10% and 0.29547% respectively.

The Credit Agreement also contains an “accordion” provision. Under this provision, we can request that the senior credit facility be increased by unlimited additional amounts. Any lender may elect or decline to participate in the requested increase at their sole discretion.

At August 31, 2024, we had a total of $42.5 million of ongoing letters of credit related to the senior credit facility and industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal years 2026 through 2032 and reduce borrowing capacity under the revolving credit facility. As of August 31, 2024, the amount available for revolving borrowings was $357.5 million.

At August 31, 2024, debt included $12.0 million of industrial revenue bonds that mature in fiscal years 2036 through 2043.

The fair value of our senior credit facility and industrial revenue bonds approximated carrying values at August 31, 2024, and would be classified as Level 2 within the fair value hierarchy described in Note 4, due to the variable interest rates on these instruments.

Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Interest on debt$1,339 $2,661 $2,513 $5,171 
Interest rate swap gain(236)(153)(472)(420)
Other interest expense594 50 615 78 
Interest income$(557)$(328)$(1,066)$(563)
Interest expense, net
$1,140 $2,230 $1,590 $4,266 

Interest payments under the credit facilities were $2.6 million and $5.4 million for the six months ended August 31, 2024 and August 26, 2023, respectively.
XML 25 R14.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingent Liabilities
6 Months Ended
Aug. 31, 2024
Commitments and Contingencies Disclosure [Abstract]  
Commitments and Contingent Liabilities Commitments and Contingent Liabilities
Bond commitments
In the ordinary course of business, predominantly in our Architectural Services and Architectural Framing Systems Segments, we are required to provide surety or performance bonds that commit payments to our customers for any non-performance. At August 31, 2024, $1.2 billion of these types of bonds were outstanding, of which $366.0 million is in our backlog. These bonds have expiration dates that align with completion of the sales order or contract. We have never been required to make payments under surety or performance bonds with respect to our existing businesses.

Warranty and project-related contingencies
We reserve estimated exposures on known claims, as well as on a portion of anticipated claims, for product warranty and rework cost, based on historical product liability claims as a ratio of sales. Claim costs are deducted from the accrual when paid. Factors that could have an impact on these accruals in any given period include changes in manufacturing quality, changes in product mix, and any significant changes in sales volume.
 Six Months Ended
(In thousands)August 31, 2024
Balance at beginning of period$21,362 
Additions charged to costs and expenses5,967 
Deductions from reserve, net of recoveries(6,585)
Balance at end of period$20,744 
Additionally, we are subject to project management and installation-related contingencies as a result of our fixed-price material supply and installation service contracts, primarily in our Architectural Services Segment and in certain parts of our Architectural Framing Systems Segment. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages.

Letters of credit
At August 31, 2024, we had $42.5 million of ongoing letters of credit as discussed in Note 5.

Purchase obligations
Purchase obligations for raw material commitments and capital expenditures totaled $14.2 million as of August 31, 2024.

New Markets Tax Credit (NMTC) transactions
We have two outstanding NMTC arrangements which help to support operational expansion. Proceeds received from investors on these transactions are included within other non-current liabilities in our consolidated balance sheets. The NMTC arrangements are subject to 100 percent tax credit recapture for a period of seven years from the date of each respective transaction. Upon the termination of each arrangement, these proceeds will be recognized in earnings in exchange for the transfer of tax credits. The direct and incremental costs incurred in structuring these arrangements have been deferred and are included in other non-current assets in our consolidated balance sheets. These costs will be recognized in conjunction with the recognition of the related proceeds on each arrangement. During the construction phase or for working capital purposes for each project, we are required to hold cash dedicated to fund each project, which is classified as restricted cash in our consolidated balance sheets. As a result of the structure of these transactions, variable-interest entities were created. As the other investors in these programs do not have a material interest in the entities' underlying economics, we include 100% of the results of the variable-interest entities in our consolidated financial statements.

The table below provides a summary of estimated benefits related to our outstanding NMTC transactions (in thousands):
Inception dateTermination dateDeferred BenefitDeferred costsNet benefit
May 2022(1)
August 2025$6,052 $1,604 $4,448 
September 2018September 2025$3,198 $1,031 $2,167 
Total$9,250 $2,635 $6,615 
(1) Continuation of the August 2018 NMTC financing transaction

Litigation
The Company is a party to various legal proceedings incidental to its normal operating activities. In particular, like others in the construction supply and services industry, the Company is routinely involved in various disputes and claims arising out of construction projects, sometimes involving significant monetary damages or product replacement. We have in the past and are currently subject to product liability and warranty claims, including certain legal claims related to a commercial sealant product formerly incorporated into our products. In December 2022, the claimant in an arbitration of one such claim was awarded $20 million. The Company has appealed the award and believes, after taking into account all currently available information, including the advice of counsel and the likelihood of available insurance coverage, that this award will not have a material adverse effect on the Company's business, financial condition, results of operations or cash flows. The Company is also subject to litigation arising out of areas such as employment practices, workers compensation and general liability matters. Although it is very difficult to accurately predict the outcome of any such proceedings, facts currently available indicate that no matters will result in losses that would have a material adverse effect on the results of operations, cash flows or financial condition of the Company.
XML 26 R15.htm IDEA: XBRL DOCUMENT v3.24.3
Supplier Finance Program Obligations
6 Months Ended
Aug. 31, 2024
Payables and Accruals [Abstract]  
Supplier Finance Program Obligations Supplier Finance Program Obligations
In the first quarter of fiscal 2024, we implemented a supplier financing arrangement that enables select suppliers, at their sole discretion, to sell our receivables (i.e., our payment obligations to the suppliers) on a non-recourse basis in order to be paid earlier than our payment terms provide. These suppliers’ voluntary inclusion of invoices in the supplier financing arrangement has no bearing on our payment terms, the amounts we pay, or our liquidity. We have no economic interest in the supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. The balances owed are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided by operating activities in our consolidated statements of cash flows when settled.
The following table summarizes the obligation activity and outstanding balance as of August 31, 2024 that we have confirmed as valid to the administrators of our program:

(In thousands)August 31, 2024
Balance at beginning of period$6,527 
Obligations added to the program22,411 
Obligations settled(20,503)
Balance at end of period$8,435 
XML 27 R16.htm IDEA: XBRL DOCUMENT v3.24.3
Shareholders' Equity
6 Months Ended
Aug. 31, 2024
Equity [Abstract]  
Stockholders' Equity Shareholders' Equity
We paid dividends totaling $10.8 million ($0.50 per share) in the first six months of fiscal 2025, compared to dividends paid of $10.5 million ($0.48 per share) in the comparable prior year period.

During fiscal 2004, the Board of Directors authorized a share repurchase program allowing us to repurchase shares of our outstanding common stock, with subsequent increases in authorization. During the six-months ended August 31, 2024, we repurchased 241,573 shares under the program, for a total cost of $15.1 million, inclusive of the applicable excise tax. During the six-months ended August 26, 2023, we repurchased 279,916 shares under the program, for a total cost of $11.8 million. We have repurchased a total of 11,518,090 shares, at a total cost of $408.5 million, since the inception of this program in fiscal 2004. We have remaining authority to repurchase 2,731,910 shares under this program, which has no expiration date. We may also elect to repurchase additional shares of common stock under our authorization, subject to limitations contained in our debt agreements and based upon our assessment of a number of factors, including share price, trading volume and general market conditions, working capital requirements, general business conditions, financial conditions, any applicable contractual limitations, and other factors, including alternative investment opportunities. We may finance share repurchases with available cash, additional debt or other sources of financing.
Additionally, shares withheld from the vesting of restricted awards, or the settlement of performance-based awards, are treated as purchases and retirements, and are included within other, net in the financing activities section in the consolidated statement of cash flows.
XML 28 R17.htm IDEA: XBRL DOCUMENT v3.24.3
Share-Based Compensation
6 Months Ended
Aug. 31, 2024
Share-Based Payment Arrangement [Abstract]  
Share-Based Compensation Share-Based Compensation
As part of our compensation structure, we grant stock-based compensation awards to certain employees and non-employee directors during the fiscal year. These awards may be in the form of incentive stock options (to employees only), nonstatutory options, or nonvested share awards and units, all of which are granted at a price or with an exercise price equal to the fair market value of the Company’s stock at the date of award, unless the date of the award is on a day the Nasdaq Stock Market is not open for trading, then the exercise price shall equal the fair market value on the most recent preceding date when such market is open.

The table below sets forth the number of stock-based compensation awards granted during the six-months ended August 31, 2024, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Grant Date Fair Value
Restricted stock awards and restricted stock units(1)
118,092 $62.54 
Performance share units (2)
37,151 $62.78 
(1) Represent service condition awards which generally vest over a two- or three-year period.
(2) Represent performance condition awards with the grant equal to the target number of performance shares based on the share price at grant date. These grants allow for the right to receive a variable number of shares, between 0% and 200% of target, dependent on being employed at the end of the performance period and achieving defined performance goals for average return on invested capital and cumulative earnings per share.

Total share-based compensation expense included in the results of operations was $2.9 million and $2.3 million for the three-month periods ended August 31, 2024 and August 26, 2023, respectively and $5.6 million and $4.5 million for the six-month periods ended August 31, 2024 and August 26, 2023, respectively.
At August 31, 2024, there was $17.3 million of total unrecognized compensation cost related to nonvested share and nonvested share unit awards, which is expected to be recognized over a weighted average period of approximately 24 months. The total fair value of shares vested during the six-months ended August 31, 2024 was $8.6 million.
XML 29 R18.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes
6 Months Ended
Aug. 31, 2024
Income Tax Disclosure [Abstract]  
Income Taxes Income Taxes
We file income tax returns in the U.S. federal jurisdiction, various U.S. state and local jurisdictions, Canada, Brazil and other international jurisdictions. We are not subject to U.S. federal tax examinations for years prior to fiscal 2021, or state and local income tax examinations for years prior to fiscal 2015. We are not currently under U.S. federal examination for years subsequent to fiscal 2020, and there is very limited audit activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.

For interim periods, our income tax expense and resulting effective tax rate are based upon an estimated annual effective tax rate adjusted for the effects of items required to be treated as discrete to the period, including changes in tax laws, changes in estimated exposures for uncertain tax positions and other items. For the three-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.7%, compared to 22.9% for the same period last year. For the six-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.1%, compared to 23.8% for the same period last year. The change in the effective tax rate for both the three- and six-month periods was primarily due to an increase in tax expense on discrete items.
The total liability for unrecognized tax benefits was $5.6 million at August 31, 2024 compared to $5.1 million at March 2, 2024, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense.
XML 30 R19.htm IDEA: XBRL DOCUMENT v3.24.3
Earnings per Share
6 Months Ended
Aug. 31, 2024
Earnings Per Share [Abstract]  
Earnings Per Share Earnings per Share
The following table presents a reconciliation of the share amounts used in the computation of basic and diluted earnings per share (diluted EPS):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Basic earnings per share – weighted average common shares outstanding
21,762 21,708 21,793 21,813 
Weighted average effect of nonvested share grants and assumed exercise of stock options
113 254 192 292 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
21,875 21,962 21,985 22,105 
Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)
11 51 65 73 
XML 31 R20.htm IDEA: XBRL DOCUMENT v3.24.3
Business Segment Data
6 Months Ended
Aug. 31, 2024
Segment Reporting [Abstract]  
Business Segment Data Business Segment Data
We have four reporting segments:
The Architectural Framing Systems Segment designs, engineers, fabricates and finishes aluminum window, curtainwall, storefront and entrance systems for the exterior of buildings.
The Architectural Glass Segment coats and fabricates, high-performance glass used in custom window and wall systems on non-residential buildings.
The Architectural Services Segment integrates technical services, project management, and field installation services to design, engineer, fabricate, and install building glass and curtainwall systems.
The Large-Scale Optical (LSO) Segment manufactures high-performance glass and acrylic products for the custom framing, fine art, and engineered optics markets.

Segment net sales is defined as net sales for a certain segment and includes revenue related to intersegment transactions. We report net sales intersegment eliminations separately to exclude these sales from our consolidated total. Segment operating income is equal to net sales, less cost of goods sold, selling, general and administrative expenses, and any asset impairment charges associated with the segment. Segment operating income includes operating income related to intersegment sales transactions and excludes certain corporate costs that are not allocated at a segment level. We report these unallocated corporate costs in Corporate and Other. Operating income does not include other income or expense, interest expense or income tax expense.
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Segment net sales
Architectural Framing Systems$141,350 $158,801 $274,522 $322,963 
Architectural Glass90,101 94,096 176,804 191,298 
Architectural Services98,018 88,064 197,045 177,482 
Large-Scale Optical19,832 23,645 41,036 46,101 
Intersegment eliminations(6,861)(10,931)(15,451)(22,456)
Net sales$342,440 $353,675 $673,956 $715,388 
Segment operating income (loss)
Architectural Framing Systems$17,141 $21,060 $35,477 $41,005 
Architectural Glass21,068 17,434 38,159 33,955 
Architectural Services6,130 3,519 11,753 2,923 
Large-Scale Optical3,793 4,663 8,639 10,188 
Corporate and Other(6,167)(6,123)(10,682)(13,751)
Operating income$41,965 $40,553 $83,346 $74,320 

Due to the varying combinations and integration of individual window, storefront and curtainwall systems, it is impractical to report product revenues generated by class of product, beyond the segment revenues currently reported.
XML 32 R21.htm IDEA: XBRL DOCUMENT v3.24.3
Restructuring
6 Months Ended
Aug. 31, 2024
Restructuring and Related Activities [Abstract]  
Restructuring Restructuring
During the fourth quarter of fiscal 2024, we announced strategic actions to further streamline our business operations, enable a more efficient cost model, and better position the Company for profitable growth (referred to as “Project Fortify”). Project Fortify primarily impacts the Architectural Framing Systems Segment and includes:
Eliminating certain lower-margin product and service offerings, enabling consolidation into a single operating entity.
Transferring production operations from the Company’s facility in Walker, Michigan, to the Company’s facilities in Monett, Missouri and Wausau, Wisconsin.
Simplifying the segment’s brand portfolio and commercial model to improve flexibility, better leverage the Company’s capabilities, and enhance customer service.
Additionally, the Company has implemented actions to optimize processes and streamline resources in its Architectural Services Segment and Corporate.

During the second quarter of fiscal 2025, we incurred $1.2 million of pre-tax costs associated with Project Fortify, of which $0.9 million was included within cost of sales and $0.3 million was included within selling, general and administrative expenses. During the first six-months of fiscal 2025, we incurred $2.3 million of pre-tax costs associated with Project Fortify, of which $1.5 million was included within cost of sales and $0.8 million was included within selling, general and administrative expenses. Since announcing Project Fortify, we have incurred $14.7 million of pre-tax costs. The Company expects these restructuring actions to be substantially complete by the end of the third quarter of fiscal 2025 and expects to incur total pre-tax charges of approximately $15.0 million to $16.0 million. Total Project Fortify restructuring charges are expected to include:
$6.5 million to $7.0 million of severance and employee related costs;
Approximately $1.7 million of contract termination costs; and
$6.5 million to $7.5 million of other expenses.

The Company expects that these actions will lead to annualized cost savings of $13 million to $14 million.

Three Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $271 $172 $$448 
Contract termination costs
108 — — 108 
Other restructuring charges537 86 — 623 
Total restructuring charges$916 $258 $$1,179 
Six Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $573 $172 $129 $874 
Contract termination costs108 — — 108 
Other restructuring charges1,233 86 — 1,319 
Total restructuring charges$1,914 $258 $129 $2,301 

The following table summarizes our restructuring related accrual balances included within accrued payroll and related benefits and other current liabilities in the consolidated balance sheets. All remaining accrual balances are expected to be paid within fiscal 2025.

(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Balance at March 2, 2024$2,814 $2,067 $56 $4,937 
Restructuring expense736 — 124 860 
Payments(3,195)(348)(117)(3,660)
Other adjustments778 — — 778 
Balance at August 31, 2024$1,133 $1,719 $63 $2,915 

The charges presented in the rollforward of our restructuring accruals do not include items charged directly to expense as incurred, as those items are not reflected in accrued payroll and related benefits and other current liabilities in the consolidated balance sheets.
XML 33 R22.htm IDEA: XBRL DOCUMENT v3.24.3
Subsequent Events
6 Months Ended
Aug. 31, 2024
Subsequent Events [Abstract]  
Subsequent Events Subsequent EventsOn September 23, 2024, we entered into a purchase agreement for the acquisition of UW Interco, LLC (UW Solutions), a leading developer and manufacturer of high-performance coated materials. The total initial purchase price was $240.0 million, which is subject to customary closing adjustments. We intend to fund the acquisition with cash on hand and borrowings under our existing credit facility.
XML 34 R23.htm IDEA: XBRL DOCUMENT v3.24.3
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Jun. 01, 2024
Aug. 26, 2023
May 27, 2023
Aug. 31, 2024
Aug. 26, 2023
Pay vs Performance Disclosure            
Net earnings $ 30,566 $ 31,011 $ 33,327 $ 23,576 $ 61,577 $ 56,903
XML 35 R24.htm IDEA: XBRL DOCUMENT v3.24.3
Insider Trading Arrangements
3 Months Ended
Aug. 31, 2024
Trading Arrangements, by Individual  
Rule 10b5-1 Arrangement Adopted false
Non-Rule 10b5-1 Arrangement Adopted false
Rule 10b5-1 Arrangement Terminated false
Non-Rule 10b5-1 Arrangement Terminated false
XML 36 R25.htm IDEA: XBRL DOCUMENT v3.24.3
Summary of Significant Accounting Policies (Policies)
6 Months Ended
Aug. 31, 2024
Accounting Policies [Abstract]  
Basis of presentation
Basis of presentation
The consolidated financial statements of Apogee Enterprises, Inc. (we, us, our or the Company) have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP). The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024. We use the same accounting policies in preparing quarterly and annual financial statements. All adjustments necessary for a fair presentation of quarterly and year to date operating results are reflected herein and are of a normal, recurring nature. The results of operations for the three- and six-month periods ended August 31, 2024 are not necessarily indicative of the results to be expected for the full year.
New accounting standards
New accounting standards
In November 2023, the Financial Accounting Standards Board (FASB) issued ASU 2023-07, Improvements to Reportable Segment Disclosures, which expands the required disclosure for reportable segments. This guidance requires entities to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all segment disclosures which are currently required annually. This ASU additionally requires entities to disclose the title and position of the individual or the name of the group or committee identified as its chief operating decision-maker. Such guidance, which is required to be applied retrospectively, is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, although early adoption is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact to our segment disclosures for the year ended March 1, 2025 and future interim periods.

In December 2023, the FASB issued ASU 2023-09, Improvements to Income Tax Disclosures, intended to enhance the transparency and decision-usefulness of income tax disclosures. Such guidance requires entities to provide additional information within their income tax rate reconciliation, including further disclosure of federal, state, and foreign income taxes and to provide more details about these reconciling items if a quantitative threshold is met. This guidance additionally requires expanded disclosure of income taxes paid, including amounts paid for federal, state, and foreign taxes. This ASU, which is required to be applied prospectively, is effective for fiscal years beginning after December 15, 2024, although early adoption and retrospective application is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact on our income tax disclosures, including the processes and controls around the collection of this information.
XML 37 R26.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities (Tables)
6 Months Ended
Aug. 31, 2024
Revenue from Contract with Customer [Abstract]  
Schedule of Disaggregates Total Revenue by Timing of Recognition
The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Recognized at shipment$140,518 $152,241 $277,240 $304,895 
Recognized over time (input method)118,683 118,270 235,364 241,651 
Recognized over time (output method)83,239 83,164 161,352 168,842 
Total$342,440 $353,675 $673,956 $715,388 
Schedule of Receivables
(In thousands)August 31, 2024March 2, 2024
Trade accounts$108,449 $115,061 
Construction contracts70,672 61,879 
Total receivables179,121 176,940 
Less: allowance for credit losses1,975 3,383 
Receivables, net$177,146 $173,557 
Schedule of Allowance for Credit Losses
The following table summarizes the activity in the allowance for credit losses for the six-month period ended:
(In thousands)August 31, 2024
Beginning balance$3,383 
Credits charged to costs and expenses(1,414)
Deductions from allowance, net of recoveries13 
Other adjustments(7)
Ending balance$1,975 
Schedule of Other Contract-Related Disclosures
Other contract-related disclosuresThree Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Revenue recognized related to contract liabilities from prior year-end$3,451 $2,249 $30,361 $24,956 
Revenue recognized related to prior satisfaction of performance obligations4,867 4,477 8,166 4,904 
Schedule of Performance Obligations Expected to be Satisfied The transaction prices associated with unsatisfied performance obligations at August 31, 2024 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)August 31, 2024
Within one year
$535,538 
Between one and two years
305,493 
Beyond two years
111,600 
Total$952,631 
XML 38 R27.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories (Tables)
6 Months Ended
Aug. 31, 2024
Inventory Disclosure [Abstract]  
Schedule of Inventories
Inventories
(In thousands)August 31, 2024March 2, 2024
Raw materials$31,952 $31,363 
Work-in-process16,656 12,291 
Finished goods30,983 25,586 
Total inventories, net$79,591 $69,240 
XML 39 R28.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments (Tables)
6 Months Ended
Aug. 31, 2024
Marketable Securities [Abstract]  
Schedule of Available-for-Sale Marketable Securities
Through our wholly-owned insurance subsidiary, Prism Assurance, Ltd. (Prism), we hold the following available-for-sale marketable securities, made up of fixed-maturity investments: 
(In thousands)Amortized CostGross Unrealized GainsGross Unrealized LossesEstimated
Fair Value
August 31, 2024$11,708 $37 $323 $11,422 
March 2, 202411,327 15 437 10,905 
Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity
The amortized cost and estimated fair values of these investments at August 31, 2024, by contractual maturity, are shown below. Expected maturities may differ from contractual maturities, as borrowers may have the right to call or prepay obligations with or without penalty.
(In thousands)Amortized CostEstimated Fair Value
Due within one year$3,119 $3,092 
Due after one year through five years8,589 8,330 
Total$11,708 $11,422 
Schedule of Fair Value Measurements
(In thousands)Quoted Prices in
Active Markets
(Level 1)
Other Observable Inputs (Level 2)Total Fair Value
August 31, 2024
Assets:
Money market funds$42,400 $— $42,400 
Municipal and corporate bonds— 11,422 11,422 
Foreign currency option contract— 28 28 
Interest rate swap contract— 781 781 
Liabilities:
Aluminum hedging contract— 20 20 
March 2, 2024
Assets:
Money market funds$26,529 $— $26,529 
Municipal and corporate bonds— 10,905 10,905 
Foreign currency forward/option contract— 
Interest rate swap contract— 1,292 1,292 
Liabilities:
Aluminum hedging contract— 529 529 
XML 40 R29.htm IDEA: XBRL DOCUMENT v3.24.3
Debt (Tables)
6 Months Ended
Aug. 31, 2024
Debt Disclosure [Abstract]  
Schedule Of Interest Expense
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Interest on debt$1,339 $2,661 $2,513 $5,171 
Interest rate swap gain(236)(153)(472)(420)
Other interest expense594 50 615 78 
Interest income$(557)$(328)$(1,066)$(563)
Interest expense, net
$1,140 $2,230 $1,590 $4,266 
XML 41 R30.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingent Liabilities (Tables)
6 Months Ended
Aug. 31, 2024
Commitments and Contingencies Disclosure [Abstract]  
Schedule of Guarantees and warranties
 Six Months Ended
(In thousands)August 31, 2024
Balance at beginning of period$21,362 
Additions charged to costs and expenses5,967 
Deductions from reserve, net of recoveries(6,585)
Balance at end of period$20,744 
Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions
The table below provides a summary of estimated benefits related to our outstanding NMTC transactions (in thousands):
Inception dateTermination dateDeferred BenefitDeferred costsNet benefit
May 2022(1)
August 2025$6,052 $1,604 $4,448 
September 2018September 2025$3,198 $1,031 $2,167 
Total$9,250 $2,635 $6,615 
(1) Continuation of the August 2018 NMTC financing transaction
XML 42 R31.htm IDEA: XBRL DOCUMENT v3.24.3
Supplier Finance Program Obligations (Tables)
6 Months Ended
Aug. 31, 2024
Payables and Accruals [Abstract]  
Schedule of Obligation Activity and Outstanding Balances
The following table summarizes the obligation activity and outstanding balance as of August 31, 2024 that we have confirmed as valid to the administrators of our program:

(In thousands)August 31, 2024
Balance at beginning of period$6,527 
Obligations added to the program22,411 
Obligations settled(20,503)
Balance at end of period$8,435 
XML 43 R32.htm IDEA: XBRL DOCUMENT v3.24.3
Share-Based Compensation (Tables)
6 Months Ended
Aug. 31, 2024
Share-Based Payment Arrangement [Abstract]  
Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value
The table below sets forth the number of stock-based compensation awards granted during the six-months ended August 31, 2024, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Grant Date Fair Value
Restricted stock awards and restricted stock units(1)
118,092 $62.54 
Performance share units (2)
37,151 $62.78 
(1) Represent service condition awards which generally vest over a two- or three-year period.
(2) Represent performance condition awards with the grant equal to the target number of performance shares based on the share price at grant date. These grants allow for the right to receive a variable number of shares, between 0% and 200% of target, dependent on being employed at the end of the performance period and achieving defined performance goals for average return on invested capital and cumulative earnings per share.
XML 44 R33.htm IDEA: XBRL DOCUMENT v3.24.3
Earnings per Share (Tables)
6 Months Ended
Aug. 31, 2024
Earnings Per Share [Abstract]  
Schedule of Basic and Diluted Earnings Per Share
The following table presents a reconciliation of the share amounts used in the computation of basic and diluted earnings per share (diluted EPS):
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Basic earnings per share – weighted average common shares outstanding
21,762 21,708 21,793 21,813 
Weighted average effect of nonvested share grants and assumed exercise of stock options
113 254 192 292 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
21,875 21,962 21,985 22,105 
Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)
11 51 65 73 
XML 45 R34.htm IDEA: XBRL DOCUMENT v3.24.3
Business Segment Data (Tables)
6 Months Ended
Aug. 31, 2024
Segment Reporting [Abstract]  
Schedule of Sales and Operating Income (Loss)
Three Months EndedSix Months Ended
(In thousands)August 31, 2024August 26, 2023August 31, 2024August 26, 2023
Segment net sales
Architectural Framing Systems$141,350 $158,801 $274,522 $322,963 
Architectural Glass90,101 94,096 176,804 191,298 
Architectural Services98,018 88,064 197,045 177,482 
Large-Scale Optical19,832 23,645 41,036 46,101 
Intersegment eliminations(6,861)(10,931)(15,451)(22,456)
Net sales$342,440 $353,675 $673,956 $715,388 
Segment operating income (loss)
Architectural Framing Systems$17,141 $21,060 $35,477 $41,005 
Architectural Glass21,068 17,434 38,159 33,955 
Architectural Services6,130 3,519 11,753 2,923 
Large-Scale Optical3,793 4,663 8,639 10,188 
Corporate and Other(6,167)(6,123)(10,682)(13,751)
Operating income$41,965 $40,553 $83,346 $74,320 
XML 46 R35.htm IDEA: XBRL DOCUMENT v3.24.3
Restructuring (Tables)
6 Months Ended
Aug. 31, 2024
Restructuring and Related Activities [Abstract]  
Schedule of Restructuring
Three Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $271 $172 $$448 
Contract termination costs
108 — — 108 
Other restructuring charges537 86 — 623 
Total restructuring charges$916 $258 $$1,179 
Six Months Ended August 31, 2024
(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Termination benefits $573 $172 $129 $874 
Contract termination costs108 — — 108 
Other restructuring charges1,233 86 — 1,319 
Total restructuring charges$1,914 $258 $129 $2,301 
Schedule of Restructuring Reserve
The following table summarizes our restructuring related accrual balances included within accrued payroll and related benefits and other current liabilities in the consolidated balance sheets. All remaining accrual balances are expected to be paid within fiscal 2025.

(In thousands)Architectural FramingArchitectural ServicesCorporate & OtherTotal
Balance at March 2, 2024$2,814 $2,067 $56 $4,937 
Restructuring expense736 — 124 860 
Payments(3,195)(348)(117)(3,660)
Other adjustments778 — — 778 
Balance at August 31, 2024$1,133 $1,719 $63 $2,915 
XML 47 R36.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Disaggregation of Revenue [Line Items]        
Total $ 342,440 $ 353,675 $ 673,956 $ 715,388
Recognized at shipment        
Disaggregation of Revenue [Line Items]        
Total 140,518 152,241 277,240 304,895
Recognized over time (input method)        
Disaggregation of Revenue [Line Items]        
Total 118,683 118,270 235,364 241,651
Recognized over time (output method)        
Disaggregation of Revenue [Line Items]        
Total $ 83,239 $ 83,164 $ 161,352 $ 168,842
XML 48 R37.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables $ 179,121 $ 176,940
Less: allowance for credit losses 1,975 3,383
Receivables, net 177,146 173,557
Trade accounts    
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables 108,449 115,061
Construction contracts    
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables $ 70,672 $ 61,879
XML 49 R38.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details)
$ in Thousands
6 Months Ended
Aug. 31, 2024
USD ($)
Accounts Receivable, Allowance for Credit Loss [Roll Forward]  
Beginning balance $ 3,383
Credits charged to costs and expenses (1,414)
Deductions from allowance, net of recoveries 13
Other adjustments (7)
Ending balance $ 1,975
XML 50 R39.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Revenue from Contract with Customer [Abstract]        
Revenue recognized related to contract liabilities from prior year-end $ 3,451 $ 2,249 $ 30,361 $ 24,956
Revenue recognized related to prior satisfaction of performance obligations $ 4,867 $ 4,477 $ 8,166 $ 4,904
XML 51 R40.htm IDEA: XBRL DOCUMENT v3.24.3
Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details)
$ in Thousands
Aug. 31, 2024
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue to be recognized $ 952,631
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-09-01  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction 1 year
Revenue to be recognized $ 535,538
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-08-31  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction 2 years
Revenue to be recognized $ 305,493
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2026-08-30  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Expected timing of satisfaction 2 years
Revenue to be recognized $ 111,600
XML 52 R41.htm IDEA: XBRL DOCUMENT v3.24.3
Inventories (Details) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Inventory Disclosure [Abstract]    
Raw materials $ 31,952 $ 31,363
Work-in-process 16,656 12,291
Finished goods 30,983 25,586
Total inventories, net $ 79,591 $ 69,240
XML 53 R42.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost $ 11,708  
Estimated Fair Value 11,422  
Municipal and Corporate Bonds    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 11,708 $ 11,327
Gross Unrealized Gains 37 15
Gross Unrealized Losses 323 437
Estimated Fair Value $ 11,422 $ 10,905
XML 54 R43.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details)
$ in Thousands
Aug. 31, 2024
USD ($)
Amortized Cost  
Due within one year $ 3,119
Due after one year through five years 8,589
Total 11,708
Estimated Fair Value  
Due within one year 3,092
Due after one year through five years 8,330
Total $ 11,422
XML 55 R44.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments - Additional Information (Details) - Designated as Hedging Instrument
$ in Millions
Aug. 31, 2024
USD ($)
Interest rate swap contract  
Derivatives, Fair Value [Line Items]  
Notional value $ 30.0
Aluminum hedging contract  
Derivatives, Fair Value [Line Items]  
Notional value 2.0
Foreign currency forward/option contract  
Derivatives, Fair Value [Line Items]  
Notional value $ 1.5
XML 56 R45.htm IDEA: XBRL DOCUMENT v3.24.3
Financial Instruments -Schedule of Fair Value Measurements (Details) - USD ($)
$ in Thousands
Aug. 31, 2024
Mar. 02, 2024
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds $ 42,400 $ 26,529
Municipal and corporate bonds 11,422 10,905
Foreign currency forward/option contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 28 3
Interest rate swap contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 781 1,292
Aluminum hedging contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Aluminum hedging contract 20 529
Quoted Prices in Active Markets (Level 1)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds 42,400 26,529
Municipal and corporate bonds 0 0
Quoted Prices in Active Markets (Level 1) | Foreign currency forward/option contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 0 0
Quoted Prices in Active Markets (Level 1) | Interest rate swap contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 0 0
Quoted Prices in Active Markets (Level 1) | Aluminum hedging contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Aluminum hedging contract 0 0
Other Observable Inputs (Level 2)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds 0 0
Municipal and corporate bonds 11,422 10,905
Other Observable Inputs (Level 2) | Foreign currency forward/option contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 28 3
Other Observable Inputs (Level 2) | Interest rate swap contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Derivative asset 781 1,292
Other Observable Inputs (Level 2) | Aluminum hedging contract    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Aluminum hedging contract $ 20 $ 529
XML 57 R46.htm IDEA: XBRL DOCUMENT v3.24.3
Debt - Additional Information (Details)
3 Months Ended 6 Months Ended
Jul. 19, 2024
USD ($)
drawdown
Aug. 31, 2024
USD ($)
quarter
lineOfCredit
acquisitionHoliday
Aug. 31, 2024
USD ($)
quarter
lineOfCredit
acquisitionHoliday
Aug. 26, 2023
USD ($)
Mar. 02, 2024
USD ($)
Line of Credit Facility [Line Items]          
Loss on extinguishment of debt   $ 500,000      
Maximum number of acquisition holidays | acquisitionHoliday   2 2    
Number of quarters separating acquisition holidays | quarter   2 2    
Letters of credit outstanding, amount   $ 42,500,000 $ 42,500,000    
Interest payments     2,600,000 $ 5,400,000  
Lender Fees          
Line of Credit Facility [Line Items]          
Capitalized fees   3,000,000      
Third-Party Fees          
Line of Credit Facility [Line Items]          
Capitalized fees   600,000      
Line of Credit          
Line of Credit Facility [Line Items]          
Acquisition holiday   75,000,000 $ 75,000,000    
Line of Credit | Minimum | Base Rate          
Line of Credit Facility [Line Items]          
Basis spread     0.25%    
Line of Credit | Minimum | Term SOFR and CORRA          
Line of Credit Facility [Line Items]          
Basis spread     1.25%    
Line of Credit | Minimum | Incremental Term SOFR and CORRA Adjustment          
Line of Credit Facility [Line Items]          
Basis spread     0.10%    
Line of Credit | Maximum | Base Rate          
Line of Credit Facility [Line Items]          
Basis spread     0.75%    
Line of Credit | Maximum | Term SOFR and CORRA          
Line of Credit Facility [Line Items]          
Basis spread     1.75%    
Line of Credit | Maximum | Incremental Term SOFR and CORRA Adjustment          
Line of Credit Facility [Line Items]          
Basis spread     0.29547%    
Line of Credit | Revolving credit facility          
Line of Credit Facility [Line Items]          
Outstanding borrowings   $ 50,000,000.0 $ 50,000,000.0    
Maximum debt-to-EBITDA ratio   3.50 3.50    
Minimum ratio of EBITDA-to-interest expense   3.00 3.00    
Amount of available commitment   $ 357,500,000 $ 357,500,000    
Line of Credit | Revolving credit facility | Acquisition Holiday Condition          
Line of Credit Facility [Line Items]          
Maximum debt-to-EBITDA ratio   4.00 4.00    
Line of Credit | Revolving credit facility | Wells Fargo Bank, N.A.          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity   $ 385,000,000 $ 385,000,000    
Outstanding borrowings         $ 50,000,000
Line of Credit | Revolving credit facility | Bank of Montreal          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity   $ 25,000,000 $ 25,000,000    
Number of lines of credit | lineOfCredit   2 2    
Line of Credit | Canadian Credit Facilities | Bank of Montreal          
Line of Credit Facility [Line Items]          
Outstanding borrowings         $ 0
Industrial Revenue Bonds          
Line of Credit Facility [Line Items]          
Debt   $ 12,000,000.0 $ 12,000,000.0    
Unsecured Senior Credit Facility | Line of Credit          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity $ 700,000,000        
Debt instrument term 5 years        
Unsecured Senior Credit Facility | Line of Credit | Revolving credit facility          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity $ 450,000,000        
Debt instrument term 5 years        
Unsecured Senior Credit Facility | Line of Credit | Revolving Credit Facility - CAD          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity $ 25,000,000        
Unsecured Senior Credit Facility | Line of Credit | Term Loan Facility          
Line of Credit Facility [Line Items]          
Maximum borrowing capacity $ 250,000,000 $ 0 $ 0    
Debt instrument term 1 year        
Number of drawdowns | drawdown 2        
XML 58 R47.htm IDEA: XBRL DOCUMENT v3.24.3
Debt - Schedule of Interest Expense (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Debt Disclosure [Abstract]        
Interest on debt $ 1,339 $ 2,661 $ 2,513 $ 5,171
Interest rate swap gain (236) (153) (472) (420)
Other interest expense 594 50 615 78
Interest income (557) (328) (1,066) (563)
Interest expense, net $ 1,140 $ 2,230 $ 1,590 $ 4,266
XML 59 R48.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingent Liabilities - Additional Information (Details)
$ in Millions
1 Months Ended
Dec. 31, 2022
USD ($)
Aug. 31, 2024
USD ($)
arrangement
Commitments and Contingencies Disclosure [Abstract]    
Face value of performance bonds   $ 1,200.0
Companies backlog related to sales   366.0
Letters of credit outstanding, amount   42.5
Purchase obligations   $ 14.2
Number of new markets tax credit agreements | arrangement   2
Amount awarded to other party $ 20.0  
XML 60 R49.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details)
$ in Thousands
6 Months Ended
Aug. 31, 2024
USD ($)
Guarantees and warranties  
Balance at beginning of period $ 21,362
Additions charged to costs and expenses 5,967
Deductions from reserve, net of recoveries (6,585)
Balance at end of period $ 20,744
XML 61 R50.htm IDEA: XBRL DOCUMENT v3.24.3
Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details)
$ in Thousands
6 Months Ended
Aug. 31, 2024
USD ($)
Income Tax Contingency [Line Items]  
Proceeds received $ 9,250
Deferred costs 2,635
Net benefit 6,615
August 2025  
Income Tax Contingency [Line Items]  
Proceeds received 6,052
Deferred costs 1,604
Net benefit 4,448
September 2025  
Income Tax Contingency [Line Items]  
Proceeds received 3,198
Deferred costs 1,031
Net benefit $ 2,167
XML 62 R51.htm IDEA: XBRL DOCUMENT v3.24.3
Supplier Finance Program Obligations (Details)
$ in Thousands
6 Months Ended
Aug. 31, 2024
USD ($)
Supplier Finance Program, Obligation [Roll Forward]  
Balance at beginning of period $ 6,527
Obligations added to the program 22,411
Obligations settled (20,503)
Balance at end of period $ 8,435
XML 63 R52.htm IDEA: XBRL DOCUMENT v3.24.3
Shareholders' Equity (Details) - USD ($)
$ / shares in Units, $ in Thousands
6 Months Ended 15 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Jun. 01, 2024
Class of Stock [Line Items]      
Dividends paid $ 10,821 $ 10,467  
Dividends paid (in usd per share) $ 0.50 $ 0.48  
Share Repurchase Program      
Class of Stock [Line Items]      
Share repurchases (in shares) 241,573 279,916 11,518,090
Share repurchases, value $ 15,100 $ 11,800 $ 408,500
Remaining shares authorized to be repurchased (in shares) 2,731,910,000    
XML 64 R53.htm IDEA: XBRL DOCUMENT v3.24.3
Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details)
6 Months Ended
Aug. 31, 2024
$ / shares
shares
Restricted stock awards and restricted stock units  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Number of Awards (in shares) | shares 118,092
Weighted Average Grant Date Fair Value (in usd per share) | $ / shares $ 62.54
Restricted stock awards and restricted stock units | Minimum  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Vesting period 2 years
Restricted stock awards and restricted stock units | Maximum  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Vesting period 3 years
Performance share units  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Number of Awards (in shares) | shares 37,151
Weighted Average Grant Date Fair Value (in usd per share) | $ / shares $ 62.78
Performance share units | Minimum  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Target number of performance shares 0.00%
Performance share units | Maximum  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Target number of performance shares 200.00%
XML 65 R54.htm IDEA: XBRL DOCUMENT v3.24.3
Share-Based Compensation - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Share-based compensation expense $ 2,900 $ 2,300 $ 5,642 $ 4,483
Total unrecognized compensation cost related to nonvested share $ 17,300   $ 17,300  
Restricted Stock        
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]        
Weighted average period     24 months  
Total fair value of shares vested     $ 8,600  
XML 66 R55.htm IDEA: XBRL DOCUMENT v3.24.3
Income Taxes (Details) - USD ($)
$ in Millions
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Mar. 02, 2024
Income Tax Disclosure [Abstract]          
Income tax expense as a percentage of earnings before income taxes 25.70% 22.90% 25.10% 23.80%  
Unrecognized tax benefits $ 5.6   $ 5.6   $ 5.1
XML 67 R56.htm IDEA: XBRL DOCUMENT v3.24.3
Earnings per Share (Details) - shares
shares in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Earnings Per Share [Abstract]        
Basic earnings per share – weighted average common shares outstanding 21,762 21,708 21,793 21,813
Weighted average effect of nonvested share grants and assumed exercise of stock options 113 254 192 292
Diluted earnings per share – weighted average common shares and potential common shares outstanding 21,875 21,962 21,985 22,105
Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares) 11 51 65 73
XML 68 R57.htm IDEA: XBRL DOCUMENT v3.24.3
Business Segment Data - Additional Information (Details)
6 Months Ended
Aug. 31, 2024
segment
Segment Reporting [Abstract]  
Number of reportable segments 4
XML 69 R58.htm IDEA: XBRL DOCUMENT v3.24.3
Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 26, 2023
Aug. 31, 2024
Aug. 26, 2023
Sales and operating income data        
Segment net sales $ 342,440 $ 353,675 $ 673,956 $ 715,388
Segment operating income (loss) 41,965 40,553 83,346 74,320
Intersegment eliminations        
Sales and operating income data        
Segment net sales (6,861) (10,931) (15,451) (22,456)
Architectural Framing Systems        
Sales and operating income data        
Segment operating income (loss) 17,141 21,060 35,477 41,005
Architectural Framing Systems | Operating Segments        
Sales and operating income data        
Segment net sales 141,350 158,801 274,522 322,963
Architectural Glass        
Sales and operating income data        
Segment operating income (loss) 21,068 17,434 38,159 33,955
Architectural Glass | Operating Segments        
Sales and operating income data        
Segment net sales 90,101 94,096 176,804 191,298
Architectural Services        
Sales and operating income data        
Segment operating income (loss) 6,130 3,519 11,753 2,923
Architectural Services | Operating Segments        
Sales and operating income data        
Segment net sales 98,018 88,064 197,045 177,482
Large-Scale Optical        
Sales and operating income data        
Segment operating income (loss) 3,793 4,663 8,639 10,188
Large-Scale Optical | Operating Segments        
Sales and operating income data        
Segment net sales 19,832 23,645 41,036 46,101
Corporate and Other        
Sales and operating income data        
Segment operating income (loss) $ (6,167) $ (6,123) $ (10,682) $ (13,751)
XML 70 R59.htm IDEA: XBRL DOCUMENT v3.24.3
Restructuring - Additional Information (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended 18 Months Ended
Aug. 31, 2024
Aug. 31, 2024
Aug. 31, 2024
Mar. 02, 2024
Restructuring Cost and Reserve [Line Items]        
Restructuring expense   $ 860    
Project Fortify        
Restructuring Cost and Reserve [Line Items]        
Restructuring expense $ 1,200 2,300 $ 14,700  
Project Fortify | Cost of Sales        
Restructuring Cost and Reserve [Line Items]        
Restructuring expense 900 1,500    
Project Fortify | Selling, general and administrative expenses        
Restructuring Cost and Reserve [Line Items]        
Restructuring expense 300 800    
Project Fortify | Contract termination costs        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 1,700 1,700 1,700  
Project Fortify | Minimum        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 15,000 15,000 15,000  
Annualized cost savings       $ 13,000
Project Fortify | Minimum | Termination benefits        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 6,500 6,500 6,500  
Project Fortify | Minimum | Other restructuring charges        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 6,500 6,500 6,500  
Project Fortify | Maximum        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 16,000 16,000 16,000  
Annualized cost savings       $ 14,000
Project Fortify | Maximum | Termination benefits        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost 7,000 7,000 7,000  
Project Fortify | Maximum | Other restructuring charges        
Restructuring Cost and Reserve [Line Items]        
Expected restructuring cost $ 7,500 $ 7,500 $ 7,500  
XML 71 R60.htm IDEA: XBRL DOCUMENT v3.24.3
Restructuring - Restructuring Costs (Details) - USD ($)
$ in Thousands
3 Months Ended 6 Months Ended
Aug. 31, 2024
Aug. 31, 2024
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges $ 1,179 $ 2,301
Termination benefits    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 448 874
Contract termination costs    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 108 108
Other restructuring charges    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 623 1,319
Architectural Framing Systems    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 916 1,914
Architectural Framing Systems | Termination benefits    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 271 573
Architectural Framing Systems | Contract termination costs    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 108 108
Architectural Framing Systems | Other restructuring charges    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 537 1,233
Architectural Services    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 258 258
Architectural Services | Termination benefits    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 172 172
Architectural Services | Contract termination costs    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 0 0
Architectural Services | Other restructuring charges    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 86 86
Corporate & Other    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 5 129
Corporate & Other | Termination benefits    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 5 129
Corporate & Other | Contract termination costs    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges 0 0
Corporate & Other | Other restructuring charges    
Restructuring Cost and Reserve [Line Items]    
Total restructuring charges $ 0 $ 0
XML 72 R61.htm IDEA: XBRL DOCUMENT v3.24.3
Restructuring - Reserve (Details) - USD ($)
$ in Thousands
6 Months Ended
Aug. 31, 2024
Mar. 02, 2024
Restructuring Cost and Reserve [Line Items]    
Beginning balance $ 2,915 $ 4,937
Restructuring expense 860  
Payments (3,660)  
Other adjustments 778  
Ending Balance 2,915 4,937
Architectural Framing Systems    
Restructuring Cost and Reserve [Line Items]    
Beginning balance 1,133 2,814
Restructuring expense 736  
Payments (3,195)  
Other adjustments 778  
Ending Balance 1,133 2,814
Architectural Services    
Restructuring Cost and Reserve [Line Items]    
Beginning balance 1,719 2,067
Restructuring expense 0  
Payments (348)  
Other adjustments 0  
Ending Balance 1,719 2,067
Corporate & Other    
Restructuring Cost and Reserve [Line Items]    
Beginning balance 63 56
Restructuring expense 124  
Payments (117)  
Other adjustments 0  
Ending Balance $ 63 $ 56
XML 73 R62.htm IDEA: XBRL DOCUMENT v3.24.3
Subsequent Events (Details)
$ in Thousands
Sep. 23, 2024
USD ($)
Subsequent Event | UW Interco, LLC  
Subsequent Event [Line Items]  
Initial purchase price $ 240,000
EXCEL 74 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( AR1%D'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 " (&ULS9+! M:L,P#(9?9?B>R$Y+-TR:RT9/'0Q6V-C-V&IK&L?&UDCZ]DN\-F5L#["CI=^? M/H%J':3V$5^B#QC)8KH;7-LEJ<.:'8F"!$CZB$ZE,&7._$@Q4KR^X_)]8??3=AY8_?V M'QM?!9L:?MU%\P502P,$% @ "')$69E&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" ("4/=#K=MYPY>'EX?D:"?DUW3#N2+/41BG5YV-4LD[RTJ]#8]8 M>BX2'L.;E9 14W KUU::2,[\/"@*+6K; RMB0=P9C_)G"SD>B4R%0)6S-EUS]D2PDW%FEBA]$/$X#$1/)5U>= MB?-NZE(=D'_Q9\!WZ:MKHJT\"?%5W\S]JXZM2\1#[BDMP>!GRZ<\#+42E./? MO6BG_)LZ\/7U0?TF-P]FGEC*IR+\'/AJ<]49=HC/5RP+U8/8_<;WAOI:SQ-A MFO]/=L6WO5Z'>%FJ1+0/AA)$05S\LN=]130)H/L ^B; J0MP]P%N;K0H66[K M/5-L/))B1Z3^&M3T15XW>32X"6*=QJ62\#: .#6>BBV79 $9(UV2;ICDZY+H0H34B W(K8K5)R2SVN?]MO 4%*DM%#Z6ZIJC@)%N?$]F8%W1G?I0GS M^%4'>EO*Y99WQC_]X SL7TWVOI/8-V9[I=D>ICY^+[P,^JDBCR\)-SG%PQV[ M^\ED"8UJ::E?6NHWL_0I8U)Q&;Z0!YX(J4SV<"DE,U.E3-&HEO8&I;U!,WL+ M+@/AZUY(8# P)@]7*OM=;<=#XUOZO"A]7C1LF9+!/))/ _5YQ+56+$R-B43# M6AHL+^PVQ&9G>/LX?%PWPY6YZ1^=WTW.0756KIU[&K>=5N MXG@>>T)"$V6ZM9Z1I8)^280D4Y'%2K[ KV^LAB/JMW[AMIS$T[7OG0N!WWC8(0'M_5+*[^TB=^)[X-Z>G:X(!_A M.W(?F_.*2_9ZMDT^\U21BZ':0'.1 ';0;+( FDV?VL9:0"7;UD+%1@Y*(_^K MA:F^@Q;^*':QL09PN=L@CCE+1!B80'2*1[U=5K!DX,S3]Y> M)[ $KC>&"USVJ='6*5#)J5C)P0'GH_ @7XN-B#&6."(R=/M=9WAA'GQ/04I. MA4H.SCF/@0)*$BOBT)^??B%+[F42,FDTB2M-113!' 5+;>_K&4F8)%L69IS\ M:)^[+G$LER2P^LO7QL9Z. 57.158.3@1 0O[0;PFRY?H281&^\>1RNCK%/Q$ M*WZB..$<$DIFS]Z&Q6M>2XQ'A.XFR_<3XY(4#VSKL,(EV@B7IIF4>E%3K&3R M5,*DDAFW88XH?C%NWDSQJ+8^*TRBC3!I'L/*N]BUTZM3=C!N](DKUOD\!0C1 M"H1H(Q#2JS?@>^""M9#&\>B(SDI^9VB^O4+L;QN+;^*@BBC2!H%G&YUAWS R@ E<.$D;#8G%IT11&5 G@-X]] M_DQ^Y^8T'ME"RO\-ACTCKN/!;7-9\0X]@BL1C_U\%_ F9.:4X0+UC?04P.-6 MP./BG%+N;MX$J4;W+QQ(] 8>&D?4(V+4IL;DX6%M/5;(X^* \M;C?L.ZWB4N M]\FX\,*#VGJL<,?%X>3 WT[R4TNK^KPX_+UE>KY,2_P?4$L#!!0 ( AR1%G\3/9XN08 M )D; 8 >&PO=V]R:W-H965T&ULK5EM<]HX$/XK&B[3 M:6<@Z,6O3<(,37+7WK1I)DGO/BL@P%-C45DF37_]K0S%8,FBF6L_-#9>K9Y= MKYYG)9\_2?6U7 BAT?=E7I07O876J[?#83E9B"4O3^5*%/!D)M62:[A5\V&Y M4H)/ZT'+?$@QCH9+GA6]T7G]VZT:GM'#!I'(Q40;%QS^K,6ER'/C"7!\VSKM[>8T _>O?WK_ MLPX>@GGDI;B4^;_95"\N>DD/3<6,5[F^DT_OQ3:@T/B;R+RL_T=/6UO<0Y.J MU'*Y'0P(EEFQ^>/'Z[&#]=7Z-WXX_CF\AK=O[^^ M?KA'K[\4O)IF6DS?H 'Z&"]2@D=<;7^^'85BRF)-I9'> ,=C@# M+\X[,1$ [3$791\50KO@;3R$>Q.3."9!U,+G,F-A&+L!ACN H1?@AV(-:9,J M\P ,K9GC-$Q)"Y]M%:4TP&YXT0Y>Y'_/LM *^-%3TY$U;Y#2)&RAT!=&VHBG9*],#B,D.8N*%^" USW\!8F)# M3%F<)"V,#K,PB5CJ!IGN0*9>D+<*M%SIYSY:Y=S A(5MUO0*1%;798GD#&1R M4BVKG .)@[H!J4PR7NLG/#L)(MPG45P//0F"L(])[(HSM9, ML!(OZK^DG#YE>>Z$1FQ>@KHE:1N;VR[I6(*D$3WB%1I@,,V+>084NTU@)X]M M'1U05! &[7?O,HL(Z5B(I)$LXM>L#5L4LA@<7XY;5P=O,B:TS6HNLQ!HMP-J MHUK$+UL;UO# L\4H)3%.VY3FL$L26&]=N6Q4BX2_U.KD&7_,\DR#?#EQ>L7O MI0W/[_)V&',CA<2OA>/)1%;0XJ 5?S8=A3-@6^>2"#.K;AQF01R&':^ET4/B M%T2 J"J@YXE1'48A9UE%,MO %.,7M_L)A%K($=Y%;(Y#$KY"[ M%N-8+=G:%Y HM%+KD$A/:AN))'Z-;"O',;2V@A$*--9&ZS*C28?.T4;GZ!&= M.^B,CF"EMFR%<9BV>=EEEA*<=&!MU(WZU>VP13J&U98QRH#3VG+GL@N"&'?4 M =W;X_GE[J,LY@,MU!)ZH$>GS%&'?E&,<1OA,;-#@(W,4;_,W>P)G'Q9T5); MSAACE+61.\Q(BCMV0K11/>I7O7WDI(5WHA5?8#C(":^L!.J#2)*\_0#Z$DRLK2M!NFC&2E2]@( M3*&4G!FT9=DB1)_)8:R-:E._:IMBAQ:HB1"?,C8@0]8195@'>1"H.T9$23^% M;6Z:1/4C2OLX2?LT"ON&K%:B/E/.W=5DBW[,B,57+JN(N3/"FLZ ^3N#\72: MF;80)'?%LREP+)KP5082[#RZLS6?A&&2M,G*:4<3TM$"J@+R[#QAML6,ZV\6-KU7^2(R9+;\A["EI.W-I\,. M]M"8=F6[Z1/8K^R.]\7*K, 7!A%8Q\W.';3#SKF#'NY]-S$?K3YQ-8?V!?JN M&0S$IS&D06V^ VUNM%S5GU(>I=9R65\N! ?PQ@">SR3H[_;&?)W9?8T;_0=0 M2P,$% @ "')$6;^5J_-= P $0L !@ !X;"]W;W)K?J>Q2L;6P$(Q6> B55_Y^AVI#/6T7L13:?[1NHIU M+!054O&L2@:"C++RB']5A=A(?I%9J_N[JZ MGJ.3&X:+F"H2GZ*3&1:$J80H&N'T%+U&-_-+=/+R%+U$E*'KA!<2LUB.; 54 M6MN.*H*+DL![@F!2+#NHZYXAS_'\EO3I[O1/6'20X[6EVU"+NB!>71#/Z'6? MT)LKK CTJ4)\@=Y2AEE$<8IF7%+3=S\FMU()Z+Z?;59+;;]=6T_)L01_4 M],%SZ*F4Q7[RX!'2-O2NB 9OO^;M/X<7%CZIH,,I6^Z#[N^%WA71@![4T(.= MT%.>93 E#>K9T3U=:OB'=7,EV9AA[M#O#0?!%G=;I.<,AE[0>P)\8YEWCP _HJTKW4/H M6R+;Z>V-_8K>+,(:OJ1,HI0L(-7I]$%#E/NO7? MBRTO])>5*'.F]&NY=N2VY"RIC?+,(:X; M.#E+B]%D7+?=E9.QV*DL+?A=B>0NSUGY[S7/Q,OE"(_V#??I>J.J!F4G2G!IR=(4OYCBL#&K$'RE_D4?/J*+R),3?U=+C^*=U.NKZK R/G_?>/];D-9DG)OE49%_3 M1&TN1]$()7S%=IFZ%R^_\Y:07_E;BDS6O^BEQ;HCM-Q))?+66(\@3XOFG[VV M0AP9:#^P 6D-B&G@]1C0UH"^M0>O-?#>VH/?&M34G89[+=R,*389E^(%E15: M>ZL>:O5K:ZU76E2)LE"E_IIJ.S69WGY9W'ZZF5T]S&?H?KYX_/2P0+W= M_/[JX49_1>\?"[9+4L63#^@7]+B8H??O/B"Y8267*"W0PT;L)"L2>8;>G;R/ M':5'6/7C+-O17#>C(3VCH>BS*-1&HGF1\ 2PGPW;!P/VCE:FDX?LY;DF@PZO M=NMS1/$9(B[Q@/%,WV!.@MJ<0G2^K_?Y-_=^(@;MI*JU'/]+RC4C3,/=E8M@!=RRY;\)Y0CWB>.W:>CY4% M8#X-0O\4-K-A04AC/SB%S6U8B'T:11WLA*??\?0'>4Z%5$BL^KDVYOY1M\3S M,8X-K@#,CZCK&5QMF!>&860H-[=A/@E=BF&N0<Y-)J5:D*",1?=44DX9B'MOP^-1-R"J"\"$>&$#8*8Z(SPQ "@GDN M[1$BZH2(!H6XW?**;K'6NV>UPD)D(SLE=:B,23H%4*X6Q2!KHR)*/3/H-BKT M*'%AJG%'-1ZD>E,HKI=!M0_L&2HXF.4QJ+1!UP818L9L!GCR8S.P-L@C00!S MQ>ZAMG*' ZLVO&R#VLNT]7'"PAS?% !YL6M2A5#4B/X< @68]' ]JB/Q(-X3&Z1,[%1T?<_6Z.?Z@]_JXLY/)H>4#J$7C/3R.P;EG*@&!?+,R 5#D/+*F.(0*>NH2 M?"C"\' 5-DNSG3X%?H<0_EN$@$ ^,86P45H(4P<(U%>VX$.!AHX9M[ :>DL52J@&SWUWA!9D0^;)ZY/!F5BQQDA$J M$D81)_.>,;!O(MM2!CGB:T*V8N\9J5"FC+VJE[NX9UC*(Y*2F504&&X;,B1I MJIC CV\EJ5'-J0SWGW?LG_/@(9@I%F3(TC^36"Y[1L= ,9GC=2J?V/8+*0/R M%=^,I2*_HFV)M0PT6PO)LM(8/,@26MSQ6RG$G@'PZ VXW4?CYPEZ^(R&#_>/3]&7:#RY^QJA:/ TOAO_/D&M M%XK7<2))?(D^H9?)"+4N+M$%2BAZ7K*UP#0675.";VH&@80"\(WQ.C_^HL=6+_IA#\GV>B<9-&9 MR Z6R*N6R#O%WA_#ID(PIPE=:'^_PCK(K=7NL>F[EA\$77.SKZT&Y;I.^Q U M:J("VV_74%$3Y0>AY5:H@S#]*DS_9"8^R"7A:':0@KNP42ME0ES>Z,+WSYF! MYR0;G9,L.A/9P=($U=($)S/PA4*GDB;?28P6T*&4JX&@&X 6Y)5(/$T)$F2V MYHE,B+A"E.3UY,*UKM!%JW,)5R=$L'_ W5=?)'Y#Y UZ(D%0:THHF2<24.#Z MBN0-1OJN6^O"37\O\6S;JR5Z$_/)Z=327,-CU3!1$Q,>R?!V)6/[HS*6"N9J M@HPQX4_'EN.WE8@!%/X+VVH74K9\_W(G9B7B3M9_%[/= M%*KCU$6Q3 M5*2XZ%/C?Z#'RG74!=]I^N.%3BWX)LBOI\E(0V3;@5T+OXD*O2/9%%;1AR>C MU]7+,JU.[1:AQE_'J?]$3500UI==P]3>VP2*P)N@CA_H [>MGYVM=3+T9R9Q M>F2KT#:H5F/#'.OP\\(7^1' M*P'!K:DLVKAJM#J^#?)#2VW\UKX9VIKQD3KNY2>*G_3%6?$>\P64&Y22.4QE M7;=AF7AQ_"I>)%OEYXLIDW!:R1^7<&0E7 '@^YPQN7M1$U2'X/X/4$L#!!0 M ( AR1%FWI3L8! , !T) 8 >&PO=V]R:W-H965T&ULK59=3]LP%/TK5H:F(@%)DZ8PUD:B']-X0$(PMH=I#VYRVU@X=F<[+=NO MW[43LGZD"&V\-+9SSKGW'KN^&:RE>M0Y@"%/!1=ZZ.7&+"]]7Z&R&N":YTOZK=&3>AAB8# M)==$632JV8%SW['1+R;L.;DW"M\RY)ED+(66G&740$;N#3[P$!A-Y)R,98%' M+[=G8@5D2I5@8J%)YT'0,F.(/R:=6ZH0GH-A*>7'Y)0\W$](Y^B8'!$FR)=< MEIJ*3 ]\@[G:B'Y:YS6J\@H/Y!61&XG"FDQ%!ED+?_(RO_\"WT>/&J/"9Z-& MX8N"5^7BC$3=$Q(&8:\EG_$KZ&'?T:.VKF38*KX$?;7M?J??:U>W5>*F7-(6AA\(:U J\Y/V[;C_XV&;\ M6XI-WE)L^D9B6UO4:[:H]Y)Z\B"P;7#V&__6'2ZU/B8+[!H$[V;L!X]@Z(P# MT9"6BAD&^H08^M2V5564OHMBF\XJB8*!O]K<@'W(Z<4V9+(/"3]L0Z8MD+B! M;%D0-Q;$K[7 U5[[@!9DH-B*VA:%UQ2>T])=>@<]B/<+#./S'1?V0?W^C@O[ MD&ZP(S-MB17O^N!OW/<%J(5KM)JDLA2F^A,WJTTOOW(M;&=]U+T<=UO6)]C[ MJU;]5[[Z<+BA:H&6$0YS#!6LV,VFP=[EACM\OH"P W\^E M-,\3&Z#Y(DK^ %!+ P04 " (LTM^LN2BITA_%9B)W@M&L7E06$Q1%R:2D M>35:G-?W;L3BG.]5D5?L1@"Y+TLJ'C^Q@M]?C.#HZ<;/?+-5YL9D<;ZC&[9B MZM?N1NA/DTY+EI>LDCFO@&#KB]$E/%L2;!;4$O_.V;T\N@;&E#O.?YL/7[.+ M4600L8*ERJB@^M^!+5E1&$T:Q]^MTE'W3+/P^/I)^Y?:>&W,'95LR8N_\DQM M+T:S$VY28.L-NN**KHX%_P>"".MM9F+VC?U:FU-7IEM M7"FAO\WU.K587O]877_[>G5Y^_D*K&[UO^^??]RNP/47L+Q<_0F^?+O^:P7> M_:KH/LL5R]Z#,?BUN@+O_G@/_@!Y!6ZW?"]IEG\D=3=G%2">J9.+ 1HM_ M_@,FT;]<)KZ1LA.#26:X:07 MYM0"$"<$#5#:0H3,/ $XZT#.GG'HF@FA$>:5QLB H@_N:C!SN @F X2VT)B@ MF<>/\P[B/ CQ&Y<2O-MH[G\/]*YGN=QQ20O UR89= JHQP]@5]!*U1'!_M[G M.Y-1+BOFMA5S.##"EADGR&T"C'H^B\+!P)0JF(%EN ?T3$,EU!>C>OR4S =SX ]F&AF M3I#0#N49&2:<0TK77$\L0]3#1$&8UVK+Q =3+)W0D%T,HFB890ZI,83($\2P M9UT8IMWEEE8;)DUS+:=3P1=(/07", )T$%HV/*>+32;SWV5KF<]&*:]RS3E M>]//[.BCV6 G/IO*(,;Q$* M-<8QFGL0]I0'PYRG$8K]@)3K%+QC%5OG'I,+ZZ$**'&053\DP3EUB21)YLASUG(;"G/84!L]U/LCFJC%"0T9S M2!'DRR;4,QIZ :/IB5OW:)7RT(43M(/%IB09DIU+3'=$/M@]V:$@?]0CUXO& M%2=V;$*+X9Z;$ D2M:G^\@7S,0I2W&L)^:VTG1K=4QX*4]Z2 M[G*EF^JZL].]Z%YXC'9Q7YS8@>64BZ O:WOV0V'VNQ$\92R38"UX"?04U@K'^$@\72KJ&1*%&?)F+]*MKHXU\+(> PQ1 LETGOO#S<&& MN@P-1S"7V#SQ<";J.1.%.7-E'#TIJ6H1O@ZZS8EP%@]G%X?4=!I[@/>TB<*T MV56BO6RJ4-ZE]S-5R#$'PIC8L)URD<_EN.=2' 7KT)>\HE7Z@G.Z("6_^J#N MC;2=&MV3,@Z3\FEZ"W;@Q<&X(&TFY#5- Z2';0Z>QR@:#O@.,:C;#M_XB7NR MQF&R_LETS]L%IY*GCN"=-'"9-JXZON_(8KN/8-462! \'-Y><;EB( M+U![ZL1AZOR\7K.T/O9C#VE]" 1T&\SJ&F$L Y=^K "JO28O\DK\V:E;AR9R+DS'XD]=^(ILLZ\'6((DJF'3$C/A"3, MA$$3="%Y!KSC&!9&UM3J$(,S@GS@>R8D*-B[=.?%;>OBG/])D$U?V[B\E;93 MBWOR)&'R= U0)FOH"X[#6M7'[Q8A05:@V5*(S(=;-3EZZ5XRL:E_BR!!#:)Y M9=W=[7[O<%F_Y1_<_P3/ELVO%GHUS8\HOE.A$TB"@JVURNCC5(>/:'Z7T'Q0 M?%>_VK_C2O&ROMPRFC%A!/3W:\[5TP?S@.[7(8O_ 5!+ P04 " (":1@$DZ>=5VMM/I] ,C,99F)=%+4G'R[TO*BB M5U>B?)O]L+'LBW,)'!+$.1>D+NZ+\H]JFN=U]'TQ7U8OSZ9U???B_+P:3_-% M5CTO[O)E\Y>O1;G(ZN9C>7M>W95Y-EDW6LS/>1PGYXMLMCR[O%C_[E-Y>5&L MZOELF7\JHVJU6&3EC]?YO+A_><;.?O[B:G8[K=M?G%]>W&6W^75>?[[[5#:? MSK79Z_8"Y.*ML$ZXO=9?E_M_!RU7?E2%'^T']Y.7I[% M[1'E\WQ0WD MOD-*-@V2]=@_#-9ZI$=9G5U>E,5]5+;1#5K[PYJN=>MF@&?+]LRZKLOFK[.F M77TY_/CA^N.[MZ-7-WH47=\T_[S7'VZNHX\FNG[SZDJ_^?ANI*^N_Q;I?WY^ M>_/OZ,GG9;::S.I\\C3J19^O1]&3WYY&U30K\RJ:+:.;:;&JLN6D>A;]YGR^ M.*^;PVV3GH\WA_;ZX=#XGD.[*>IL#C0;XLV&Q6+1G++7=3'^(\KJZ%-61K]G M\U4.0(UPJ%>3IJ?-^9_-&Y39I/=V&0VSNQE\6!K'NLKKYCK/)Y'.RN5L>0L- MB#EP../Q:K&:9\W@1Q_K:5Y&35^;^63:7NC?\NC)NZ*JGD9OE^-BX?7VO#DM MMN<&WYX;?)U/[LGW.K^=+=MC;:[=>;8<-QD:1A^X?MH.KA;QF N( M8!2_G31?5'?9.']YUO2BRLMO^=GE7__"DOCO$.T/8&H-UDZ8WRYY\Y^\./^V MRRAE2DT)9HC '"K%EDK1D+BI MC9V;VFQ]-XN>S-M[V[-HV9!4?(WJ[#M$41)TD:F!1Q!Z"%T)H@33E& &'PJ' MGG1+3XK2\[:J5NM[1T- UM9HI:SUHT)@-PMF7I?Y*"DW7=6XZ)J.FS&B( MP!PN6&R5;'R8C:C,[U;E>-IP!/'%: M_6'I5&V&L)Z5^2)?UH.5'&3HNGCNF"HDKI46#G-<#VMEQ/$.WR?_7@>\72_^82C=YZ: M /7+.1OXEP*IXB9%,U1H+IU6FS-$Z^?&^.9Z@\[D?BF3(.2=-JDG1 M#!6:RZB5R@S7RJ?9YRR4KZ!_SD*Q#!CH !KHH -QH(4.Q&$>.K.BF U^H8O. M*!7JD!1M1(JF2=$,%9I;.;1BG.-B_)"9OFGN&$3)(/;7KWB6KGR1HFE2-$.% MYO)EQ3?'Q3>^6'NUNFVFN@0I](8BF?,XY3Z=1")Y0R50%Q/Q.G. MHLX=*:NY>=?*>%>A@B?HO,LAE-F04"%-JDG1#!6:RZBU #AN 8"+M<,LAIH: MU"J;N -:!4 #M0H0!VH5( [3*MR*=*Y^X6*-DVIV4K01*9HF13-4:.Y)8*4] MQZ7]P<5:J)2%$#SU+PW2TCHIFCZN"X8JJ4N$=0XX[AP\>@/$!G]W=DK\26>( M'T1GGDAM U(TPT/G(]D[9UHW@)-4S@_57C@DP'VJB,K;&ZHHT30IFJ%"!R(LU86%8L'<;$-^, M#;A_P9#6XJG0W*'>V3"/^P*==Q/A>%VUCX"J[8F_EX(TIR9%,U1H+G_6!1"X M"W#4;B(1BOE>DO#@ 0<@3 F?"T"BLX R#84IR?P[.-Z[4T?/V@("K]V?N)U( MA%5V?\/F$,_<^69!JNI)T0P5FLNA5?7BF-WT1^TF$F$!OC<8!'<*J&#N7P5 MC)32OPB *"5],8[W[]3QLV)3J?\:1Z6X0*&>B" MH4KJ4F$5M\ 5]R.K4P(HB0/5*?P@.O-$*K9)T0P5FDNG%=L"%]LG5*=$*++! MZA00!U2G1*BBP>H4$ =6IX XK#HEK9*6N)(^HCI5/H]BOAXX"0T8R:H6XQ(7XGNK4(19#%2Y3%@=*7(;[WE.1^#=I (TI MWOD:/JX+ABJI"X1.T_'XY+ZT=4I&6I?Q0.> M2#?>DZ)I4C1S8#AB\YC_/_2_M/I?XOJ_2Q5+ EOLT]@W M4/"$G:>V8W)JTIR&"LVEQ/H $OOU-?4&/M (7; M 2?:\CAJUZM 0^Z]_U[.6E*38IFJ-!<$JT#H' 'H(,OKZ!GS_LB>.<0\+2[ MO[5M!&$E_@,7&LP8[((U>!=/'4+K"RB\#G[8FE= R5K)V"]&X7DZOZZ)5,0? MUP5#E=2EPJISA:MSW)K_QVKY/(K9?F,+1^\\-0&;Y]E !)<"J7@G13-4:"Z= M5N,K7..'UOQA"D,9*]/!P'\-TU"%5?2TN<7ZW(1H3(DX]C>; '%"]A/E>R9 M7(\/8K;'FE<[;XO#=?;CK7D\0>=S'WK"/;3F29-J4C1#A>8R:D6VPD7V:=:\ M AYRAZQY!3SD'EKS !IHS0-QH#4/Q&'6O++J6*6_T)I7I ^\DZ*-2-$T*9JA M0G-/ JO'%:['#[XR,WRR/6$J]1](P+-TYHM4?Y.B&2HTER^KOU6GPCNTCT)@ M=WKHE7(#&<@1TH?L2=$T*9JA0G/?EFKM@ 2W _;LH\ H3(#G[N-$!GN6@+AF ML>:_63,)K0"F5+_OJTH@3J1"*G\?!1#7$S$7$KY;)59S)UVK[EV%"IZ@ZQTJ M 7;5 T*%-*DF13-4:"ZCU@)(NKZ<_B@60TT-:I4$>L@]T"H &JA5@#A0JP!Q MF%9)K$A/Q"]Q)8:9_@TO[08BT!%'6L$O_NCF?I MS!=I??ZX+ABJI"X1UCE(CME<_YC7G /;[%GP0J\A?AB=F2(U#DC1S,$!<9G: M>1\]2=G]4/T%S])YP@0L O_]$Z09-2F:H4)S.;7&14+R%GN0Q[#B[F^E2,)' M H)%,[3EWE\QD+H$5&CNB%N7(#FB:G_D1HH$V*H_\%\R.\03=I[9CLFI27,: M*C27$FL$)+@1<&(A&4?M/)$!1?= 9&J?U(T0X7F?AF'5?_I29L!(-Y20%?+ MV-]0D8::O^=+'@C)_V8'#06)X/$NO'NG#I^U!%+<$CA<0TZ!LKJ2O@H_A;+^7]7U6WLX: M>3#/OS8-X^=I' M]ML^MU\X>_D_4$L#!!0 ( AR1%F4F+R95 8 &40 8 >&PO=V]R M:W-H965T&ULU5A=;]LV%/TKA L4+>#8CI.T79L$<-IU*X86 M6=VL#\,>:.G*8DN1"DG%R;_?N:2DR(F385A?]K#%$LES[[D?YXH]WECWW9=$ M05Q7VOB341E"_7HZ]5E)E?036Y/!2F%=)0,>W7KJ:T'#_G):,8.D:8L M,(+$GRMZ2UHS$-RX;#%'O4D^./S=H;^/W,%E)3V]M?JKRD-Y,GHU$CD5LM'A ML]W\2BV?(\;+K/;Q_V*3]AX>C$36^&"K]C \J)1)?^5U&X?!@5>S!P[,VP/S MZ'O('$>_@(;S[+,6?BY4/#L7RUR[" M">]P-QXWT&M?RXQ.1N@03^Z*1J=/G^R_F+UYQ-O#WMO#Q]#_8ZI^%+8XDUYY MWA@IFB!C=WTI2636>.S*9:!<%,I(DRFIA<<60A^'>&I1VS412B*0JYWRY,?B M@\DFXMF&QJ+!DVVJWA\)H,.:GU#:]3'=)9AK\PBI^6[* 7SRXFRXGX9;$X?SZ)?)1) MHL?\@*:;O#N* + FB/W9WN_"E[;1.;P3K(J\ 8'XUI@D.]&Q 9>G3U[-]U^^ MN07X310MVQN23A#WBO@H75:*>:KTB?A*B S%35Y6M$6TRXOJ8L-O+QOI$&#F M;'+\9QHD8E=*)F*AM9#Y-TA-RI&AC+SG8F"_I"BD3[_L\ M#/IKV1\ZL_@CGKU?+,^>"^5]PPR6%Q%@;_82[5+5CE%CNN#=9ZJM"W*E22QI MS:_%.^4S;3U"B(;:E K%! *PX%MJEXWB)LK[?9&7NT7R"N[->[+*.Y>\A;1KXESMGFLL(J\MQ33_;T34N0(RSS7'%Q1;%XG&BL M/!40*':OMEYUK1&B@KB<=.HHA+!H6 MNKN1G+!T])$:2 =$X;XF_'1?$S!2+2KNB[S>U@*V$SW!'C)E;.E8RTX:SX/5 M9$G3^WK#X('4&0@E1T@EW #< =4[Y;B[=[H&ONVRK0G;U@ZI-)8 M6^$6PP[Y@0,PF51+\>#"'&2&:6[P),+' +X%4)(5A;O2^8"\1%W>UN*M0&-/ M+54^)"TK'AOI?6K>1_A&B%N5^V>MJ'^D4CS2WNSDEBXE#S+YOVG^%GYW4PP3 MQF<05O[<:(L.Y03F7&68!ER$\0-:=[?5CMR@0R:[[A#3P=6O(K>.%UQ,#ZZ/ M= OLW_9WZ$6Z.MYN3Q=P:!-2Z86F D=GDY='(^'2I38]!%O'B^3*!EQ+X\\2 M7[SD> /6"VM#]\ &^G]9./T;4$L#!!0 ( AR1%E<,_+RJ@< #$3 9 M >&PO=V]R:W-H965T M.3/2[5Z;W^R6R(G7JJSMW6CKW.YF/+;YEBIIK_6.:CQ9:U-)AUNS&=N=(5GX M0U4Y3B:3V;B2JA[=W_JU#^;^5C>N5#5],,(V527-X9%*O;\;Q:-NX5EMMHX7 MQO>W.[FAC^1^W'TPN!OW4@I546V5KH6A]=WH(;YYS'B_W_"3HKT=7 OV9*7U M;WSS37$WFK!!5%+N6(+$WPL]45FR()CQ>RMSU*OD@\/K3OH_O._P924M/>GR M9U6X[=UH,1(%K653NF>]_Q>U_DQ97JY+ZW_%/NR=SD+N#(F_E5]+)^UNC]\+P;DCC"^^J/PWC5,U)^>@,GBJ< M<_?/]$)U0Y%XIIS4BUR59(6L"_&D:V<0,_%@+;FP]JV2*U4JI\C>CAVTLXQQ MWFIZ#)J2=S3-Q'<0N;7BZ[J@XNWY,:SN34\ZTQ^3LP(?FLVU2.-()),D.R,O M[4.1>GGI^5"(M='5T?V]LSWKKLW/2_Z>)/*OIM!__K7K11?W3%I'7)4A"U1OA M6( HE)6;C:&-=-CIM),EB"#L7QV$4Q7OU6LLYGI3*U_G%Y9(?*\=B3B!1,-2 M\E+;QE#8VI^WM &]N,L;*#WRYPL+D4<+Z+9(O7_R7PBDG0:I;-,0&8TF\;OR !S M#X4LTBA)E_P7XV@\BZ-TFN!_$2VR1'SR.8%961)EP+%X@XWA-8B861IV*(XQ@*!J6><*HJU#[CDRO,O##4'B+34:EJQT@UMZ MW8733HL5"5!BD'8M'D#[#"D((X^%W%"AG <+/0J*\@RU!0(M/#LCE#41X%A MW[7X^NV"D, 23BIT!3YW8%2A7S :55VH%U4TL%WF.=MG(YB$+E:0X0UR@]]H MX"(>%@&Z@">[5M#*:1,QJMG;G3QX:&P52,@<(*TQAA>XE. 4Y=*R&)4VL4HS9PZL<=5*(.2V^/-ZNMI3XQ"%"E45=04@BXHLHN MNI >PAM\Y)V=D]C:6;C?4BV4?\H\BNQ*E#/+8MV=8XY,9?\L;6^4<\0Q60_% M%,2[P4C(]E8&*$AF%GY8:R2HWL#;SDIXL$*(Q2+E# M5VKG]/,*[['J]:IB+A0[8%@#:LR(-Y\+[",!4S5;LI*E5_%EZ\R35P/(;*79 MA,+-M6V[ U=?S>HOXBB+LTOQ%14AV#;TYM[D$(B6_\%@W$_B5/S@ 2^+7V%- MH(Z+^26S^%M30G3[_B2/_:D<]*<_/_3NQ7 ,XK94BH/44='MJM;TU7*];*CV[Z<;T BV+X2J[XD(4.Z-_)181V(%5 MMTL0*O$* 8D"S$,EAR'7U:XDKQR>&>JU,:$R0WD&A@M-F^JWKO2Y&"9HD) ^ MRF]B?R(WQRQ@@"?#E-4%>1B7:U]0OBVVP%^1VQ/5(2]8\V]%#">-)H(Q)9"N MHA%E@VU?J(8P9T^>/F)HLA/ M!7_/2>1W/Z"676/T]5-9!X2>,/2+6L_PELF(!XS000;X&N0BE'6W< 6X M^!(YCG?V_S/'_:4X.\L\JYT(FD?V#G@RX@!(7H%-/3-F4S_K8=);^DD/PYI? MR/P8=5Y1$&>!0,L-OITFWD,H9LC9'+_9?"X6&.QFN%Y.,O$1==8A[\@.6_G" M.#Z.145C9*>B;;A((E#F_8G".]-[NND5;=U3<<"N[^)<8FLC*W3K?WKR PU& M7/V6!H9P8:U!&'Y./(6B(X5V>/*FG( 3C-PJM/TS%=56OY&U;2.*(.=,:-9J M3&Z>GUE\4X>X*RR\RPGN+TCR0^3;T;67$_F2\^RG04]VIT/(.B/#]B,4HBZ8 MP_Y_G% '%&8_V[9_;JNT)I].('"*%X=IND!##^S'C[Q]>^VW6(!U&F7+%#L. M^LV#.,:[QF32OR@L\4XS2V-QZHUW//B, ;[?^(\U3/!H$>&+1K_:?P]Z")]! MCMO#QR3,=)@]+#K/&DJ39G " !A!0 &0 'AL+W=O M=8EHX+GB0B^] MTICZ(@AT5F)%]9FL4=B=K505-=951:!KA33O0!4/2!@F0469\-)%%[M5Z4(V MAC.!MPIT4U54O:R1RW;I3;Q=X(X5I7&!(%W4M,![-#_K6V6]8&3)685",RE MX7;IK287ZZG+[Q)^,6SUG@VNDHV4C\ZYSI=>Z 0AQ\PX!FJ7)[Q$SAV1E?%W MX/3&(QUPW]ZQ7W6UVUHV5..EY \L-^72FWF0XY8VW-S)]CL.]<2.+Y-<=U]H M^]R(>) UVLAJ %L%%1/]2I^'>]@#S,(W &0 D$YW?U"G\BLU-%THV8)RV9;- M&5VI'=J*8\+]E'NC["ZS.)->BR<41BJ&>A$82^C"03: USV8O %.X$8*4VKX M)G+,_\<'5LBHANS4K,E1PE53G$$T\8&$9'J$+QJKBSJ^Z)WJ7N KTQF7NE$( MOU<;;91]#G\.5=P33@\3NA:YT#7-<.G9'M"HGM!+/WZ8).&7(W*GH]SI,?;W M?L91\&%I>XRP;W^Z%F!*V6@J/-Q0E95 !N^.MO;)&52,<@TG M+FT>D]Z(D@@>;-^=,G%:*YFAUC!)_"1.8$)\,I_ %1/,OL\<"BES#5'HSV<1 MD-B/9PG\D(9R8*_*?!!V$IW ^=R/+?@$DKE/IB$&ULE5AK;^.V$OTKA+LH$D#Q0W:>FP3( M/M(&V$73;K?]<-$/M$1;;"A22U)VW%_?,Z0D*XZ3[D5BR^)C.'-FYLQ(EVMC M'UPAA&>/I=+N:E!X7UV,1BXK1,G=T%1"8V9A;,D];NURY"HK>!XVE6J4CLXM&_6GS'UQ-3@; ML%PL>*W\;V;]LVCL.29YF5$N?+-U7#N=#EA6.V_*9C,T**6.5_[8X-#;<#9^ M84/:;$B#WO&@H.4'[OGUI35K9FDUI-&/8&K8#>6D)J=\\1:S$OO\]:W47&>2 M*W:GG;[ M]%6!-_5RR*:3A*7C=/:*O&EGYS3(F[X@[S.W#\+SN1+LB\AJ*[T4COWO9@ZC M$1E_[3,Y2ISMETC9NYD+I'2";NW MTI7LQC5S"?OD\R$[",.'"5L+!ADY\X5@"P@S:ZF7C*^X5'3P$4CFR'%H4.Y3 M)L%P+EA=,;-@"_DH\B.D)4UNH,Y*.!\LN6 '=QI'F-IQG;M#=E,:Z^4_4/J] M<9[]9(US[*L&AZDP^A.XRST?_H1[(/#1>8EC,("81$)V4L,DD.1V?XLLDQFV'I9)RSBM0$4\$Z@GLI MM+!PDI)\+A6,3 +#">M^_.$LG9R^99DI0,U^,)@M=CN8CCEP;': M$=16;/W&EU:(Z'MO6$D5P'G@Z8W%)O&MEC9.#Q$%XLG6C%LKA6U7N<84$@,L M/3ZO^ >>MR$"JMI6Q@FRM[)FA1B"AB T!;3)<%H7!#?V.F;F2BZ#N3 (3!/E M[#P))= Y=<&G9BJL:%D )R((V?4VYWW5ZPN8;B-*!-6HHV5J8 M,&X1K 6R@\VIU@W9Q\<*M0?G-&LHGTJ^8;E<+*#ZPIIRGZ@0Z=RQN;$@#;@[ M;"KX2D1KJVR[Q#7$L4'3#B&-GR?'9.;ZG MTS'[W7A8W,N@)FT^""M7G"HU)49'3G\B6C!C3,?# M,3HUI5J $&Q8V3%A3K*P\%;,;8VBR8[#D2?#9T$>D(NXO1*\.&)D;.3;40M M3(=>8$?F< _/([H7F(0S[$";69+YEF1==0UV$0!>Q574O*L_5C'S06Q40^#K\,F0YE1V[X\]P_)MT MQY]O)L/C=B!!\7'$\LA'M8F)3;U+1)YZ&,;SO^NVGH14)XSR_31'F6E%9FS> MN(=(EX(6P!LE\^"V.5>Q[Z*FWW7+(-@V].?)RZ)!X>E$VQ9(\E=L?! \*K8Z MN['1%L07% QQ33T(/ ;1P JL4I>U"A*:HG'G$*":E!O M8FR&_$=CB"KN>'Q@DPZ]G_>*3H(=RUUEHRH*2LN%I+V&:>"-R-&4\\-8Q&)B MEH(3KT0CMOUO#Z8>,$%T3[#4L6'=BBO0_%!_MPE/A'GC5VBV)K90 L& 752" M K.3)0A$2,NX#K5[1UY/O0OV*6R?L(-:Q]C! =]J0Y6.C;=.8M=]SVU M\UF3\VNTX[[#[I=@XR_;H^^BK@<-/H=-=])K@G9;_YMP\@4]]8I-J_H"5<:A ME9FER6P\QH_0MZ9OMT.?:RTS69'JH4= _]M4*MK9+F]:H>9RV[!8U]GLL%BW M+3VC_[M7:E:[\O1L$CZ?MJA=L)N632D58R>^>\"8_I\^V+P*1'J2'*?G3X!H MAKX3B/B =$4Q=%+@$SQ]SUP3)(4/6S\_C\A(5OHL^^)?]1[*U,*NPSO MGAP+?5=\0=.-=J^W;N);G>WR^&X,F"^)_9188.MX>'H\B,\![8TW57C',S<> M3X#A9R'PL&QI >87!CG0W- !W4N_ZW\!4$L#!!0 ( AR1%D65GNF-PD M /P7 9 >&PO=V]R:W-H965TU)W*;AP2[^KBI_!J0OM;GG7[&(:Y/SADA+'VQ1 M"<."0IMXE<]5'&H"%YTC DDED+#=<2.V\IT,\N;*V85PM!K:Z ^[RM(P3AM* MRF-P>*LA%V[>J7&X:@=HHOMV6DG=1JGDB-10?+0FS+SXF\E4MBW?A@5K,Y*5 M&;?)BPI'Y;0E>MVF2#I)_P5]O;5;/=;7>\$M\4[[-+>^=$K\:S3VP0$"_S[D M;-35/ZR+RN*-G\M473> >Z_T'TW CZ7$O1'_ M*/.EZ%[&N#7%0@EE@G(J$]H$*Z2XPW\=Q&CJE$(M!7$:9FKOZ1E0%V;B5IIO MPD[$J%!.I[(I/K5&K::07L@,V-,40BHB@7(U 2],)BST.9$K ,'YEOC]@'8Q M=_9)9\H+D B$1&F\2DNRTBNC\2R-$A.9ZER')8RG97(*#5,9%!1HD^JYS(4L M; F-,+*<"WAXD/]@2GL"WUTLE'>CFR>9/VDSW3".?9:4]P(.3I*X#A)#+)1YG3BX$ M,E&(W,*5E7A+W%H'A$"S1Q@0,T'Y.+Y="N&Q(K?NI)&9QFUF\UPZ+T[O1N_. M1*YA"#:D6"2#FB5?'M_%=.Q; 0)9DM8QV\)@J<(9%I9-S^S"^&85RIWP61(M M9*88-!"U1@F.FIR$RB&J.W(G0_:B%4'4/ >M>%8$:GG2MO0O&4PA^8H&YL5[Z::6Z_7/%VDS*D(3 MT459;$4MEE3O8E"O"E+ K@(;:Q!NVZ:5WV80:@^8$7+H"S(G9PZ \X>Y^YF8 M'$OB1^D W625PJ^JRHNP/]IU[6/-N8,Z1P1== 0, /268^2D\9('#N:BP,A/ M+4+XO92.RH-A[E/$!EH&S-D.*Z9&_U<1M:!RL)D1ZCG L%+[&8,%8AF1?E5S MFFD><%3/F,\\E\9)IS581X&HEG9?H'K4:SN9,&<:\*<+O--$&PE2110F2E&( M,L^7[$I/>K648.L(OK@7(0K&#NOOX97+7L\1 MHV5QDH%MCJC&.87:HAZW8BA%!$749Q=-7X#?6O&:%B*7T7H5HQ@(6 M$)]MXF*?*ARL2(GY;+<+^+T,'"ERF!XP&WLN'YJ2@Z*XJU7\@8,46^)_("*0 M1 O?2PT?;.G$G37>YCKCU/RF8!JJ6CR@P*TXA1&8/S$99"NH[??UR-:Y\JS< MB%YKT(F4L*O]P\J?._N7ME'/J<(2I+T#:(1]N@1 .#>:PY#Y/F\'H7: MAINJI&SX53IV#3@2>YE[NTD 310I0NL9M.+77RZ2I/-VQ@%8MOBV^Q9AX!T0 M:BA84*/[IG9%J;8BV+A42K "#@8TI< A[04,D+$30O#D?+#A4BX2U#8=2BAH M #G6>L6*5HS\_TAZ'VF(XY:88YBS&?,.)1WQH.F+6T1%1!4UH3/07*,B*ZP+ M;7O19L*2]"C7DR6MKH?'IB@TS(*? 'CK5 P#P;^^J(J[YWBPA,C0Z:%JM_;V M"YUGL !42P",%._X(0I"GE=@$YH:#IOIC\QB>R@:TV@S08\G/MZ4/0Q0FJF% MI&XIB0\\HSCQ.UG_6(VX]\B?H;.A>+]F7%YX^GC__N&L"8$F9PKC7*TA-3=] M:*/A05YZ[CA*IG%N\5N8=CGHG[^B#CY7_'$@7_XLD53D(5-J M,P#3BCWXI$,?+%KB2X4H\,'ZZ9H B.,)1$SXX?AXS*-_I(A,C)> Z6K>E^OF M6YV)@.>16:[Z+$WXD66@-5,I'2 I>-1@-1VE@EKEN;*%$U^Q431*.P&\*)&A MNIP*[-418J?92L9ACR>1?E(;1?# FJDEX.7JSMQQ) Z4,&TR[.NH M8SJBYY(0:#)F+8,791P0*$UTTO>5$,[_W&A2.C9AIHVSIVHXH]XKD# M+@W71\2DTTM8#-%P\0U8%V<[XB*MBHJDVH"Y3H26]P MOHGLX73PF(A4YB4-0"?=9'L0.Q;&&!4^;QV*2J\>E7XO%LI$ B-/,B]Y_J3N M\A?R)^0+:J#(E6J%PR<)0RD=:[ZG5N(K*O7TG"#'WQ[3JWNDR'?]W[X?CVN\4<'9/Q$=)N]WB6N M27,X[/)UT.WA.FAVS[L; >Z)?B'G8@HZ$Z=);W@F3KN#'G[[YPG])ITS<<^] M;>^<,;CL"XR0P^Y G%]LE )OML!)3)P.!N=G=.TE%WSM-CO#(?\;#+'%AQV% M36%4-+[;[[#12:_#]X-+NO:;R7"XD9K+9?RFLZF[ T=1/A0FM0,&GS@&K?[> M\<@C345,D^(T[<:=)'=BW]QN&8<^ K9K7V0+Y:;\W1FS#M5Z_#B[?KK^M#V* M7W0WR^-W\8_<"CVH*WYG@3[)R_[XYM"+;@OS,E$1U:@/<3"WA7 M-[3!^H/_S1]02P,$% @ "')$64JX+XPX"@ ^1@ !D !X;"]W;W)K M&ULK5EK<]NX%?TKM)C.,+,F2\JCM&3^:ZJDKZL6U4C2]KZRH9\.@V)[YQ2A:\J3(GL\ED>5)) M78\NSOC=1W=Q9MM@=*T^.N';JI)N=Z6,W9Z/IJ/NQ:]Z4P9Z<7)QULB-^J3" M;\U'AZ>37DJA*U5[;6OAU/I\=#E]>S6G];S@=ZVV?O"W($]6UM[2P\_%^6A" M!BFC\D 2)'[NU+4RA@3!C&])YJA721N'?W?2W['O\&4EO;JVYHLN0GD^>CT2 MA5K+UH1?[?:?*OFS('FY-9[_%=NX=C$;B;SUP59I,RRH=!U_Y7V*PV##Z\EW M-LS2AAG;'16QE3R+L2UK8.N-W@6OVBYTD8'K?S928 NVG&2)[E74>[L.W*7XCTDE5[\HRY4 M<;C_!#;VALXZ0Z]F3PJ\;#=C<3K-Q&PRFS\A[[1W_)3EG?Y9QW/X*VZTSXWU MK5/B7Y54$6]]8W,U?D()>.5NU.CB[_]9;J<_/T)%^:] M"_.GI/\/N?M_R!57%M_RP=J?:Q%*):PK=(T"Q[?6>3ROQ:KUT.%])A"&P@+' ML@YF)W0ML$9Z4()RF+8P2S1*,<%-L&8G:AM_7(@8RPN@P NL:Y'9B:>3<O= M*A@+CO0!3L*CC#YM2YV7XMGIH-:C!.V[**UD?FLLJN S2XR"2GFGA+IO MM)/,-46%OD?#2D#VN4(XBDR/%A/&Q^**BS%K=X=-* MJ?H@J)6\5?M(M37M?RK K![0;Y#"+K#J7GL"5 \+Y:%7.@=0[#CK2-U7;'CI ME($_!9NW+\XOE&':[3*J279)) MFJ7@#)%2COU87-,WEN89N^!);(;0M;,5)TGFN6LA=ULB"XW4Q5B\0Y*LZX'; MFB*F2P(I%9@FD$D1R#I3N46J">,/5]FB]>+%T-#% 0>F##)7LWG MO0G2F%W/0[Y=?4V(3UBF\&+*H;IATW2-VC>&J_8[.(^H41X#!BFFTEGK>U6\ M; W)0CW3@,>OFT:LWLD5?A(I'UQ,_VB7)S^0^I-Q)IDBERY( D T@7?V?)# MU,R$$EUG2#OM;_>LN"_:4#K;;LK>5J1D8X-F1]AN&^>W)\(),VKV%BG$)U38 M+RH$XF_HR\%?X/ACA+TEQD-"Y[/QHJ==\K'>6/+(/)*"Q!08$%I/%("P?+!! MB<58?&P1$DDM;P7NC;8??TDJHZL(;J)]%3P?V#H(IUCOMOWCI'23>#221A&=CQUNB"2VF5"I='8\]-\X@_ M#VIU.IE0?>>D("!F*=^P7S:4@C@)=!1 5*Z(4W=*.K^G;3* /BJ9][V/H#OP M:CK2+QI8&.60M1TP=PB[2!%)BLP[W\B!&$!<23'0MU''F9K M604I7E.G7P_<2D$IT-KSKHCPA90R((E$\8;BS2HP!;===T@=9AA*1A#/"S@4 M*=[$+6*8S:.9E"BC\,-)]"J9=CP.V/ZUK>.)CV]MVP7!X"$-+&@'4>8A@):U95LTSJPFHI%SC(39QV=4DMKJ-I]2?T?733$ MU^N6VM?A9JX]S(,8*KQ'RZ4(4W'!+LV# XOYD3A>'G86'@A3=M5@9AU492;N MT#?DRJB7N@9DH10-,<3ZXVD6T"%=+)R/ 9SH?;'K>H_D#9H%.-0"!R'-+WLJ M[.7'';V:G^*X:784;&2TQCDBCZ-_-\V@?O^ZSS"YY[O')\P_%K$U'5%R[JX! M+QCBL5X"20'P# YKZ8A!T4RW&ES"_5"Z4K5:H])ZN*4)^!')'A#@KJ*Z_8M8*1]4Z"Q!1]A1?YB)Y]-^ZL+S O/,,ILL M9OB=9LO)'+_S;#Y_C3[>P/T54CF;3 \?>==I-GWSFG=-3J,81N6[R&&=Z9@Q MFC:D@W!WDL Q;-PRY5[R$J1*5 2'N=68)!5DUS:,9S3*XN)E]!:R(I&)3$X M\CC5&)FK?GCC\DR>-M*'GM43?\/XPVGWP1&(EO?'J.Z,%0N663.-EC%/RC="3N185$5GHM=!ADQB!Y%FPKN-=J/!89FE93.(-AI .N+.8"=9&\OB$ M!*=6.K@>D8@1/ /E\C+X@.C#$>ICSV;] 7U\@,&2%C6-XC&-CW"T@V, QM"8 M%N@\N@8#@4>X:["Q.*K9EEHA6MH^K/).:L-LH^MX_0I]P]BQ@H)G?,9"B[.. M867TA9!J=&GCI#(4]G!4SN)Q$I-6JWZPV;G_D]^<-.S M9U" -!Z1LB$I]T,CHX];UQJ/BMIX.X28V9?_@VH *A%_SAE^5=48RQ<5 M )5=$[!IVY-M4M7(C@;)CD(&4Y=B@XR>^3":1K\T=$,T3%.)R!0&(0(H'+T M>DV#*ZC49X;OG3W MC,\0;Z;[M_V]_F6\SMXOC_\I@ ,,3O_$XFMLG8Q?+48X0O)%>WP(MN'+[94- MP5;\9ZDDQ@1:@.]KB[-9>B %_?]V7/P74$L#!!0 ( AR1%DB.'RR-00 M )<) 9 >&PO=V]R:W-H965T4%J&TBZ%>N'8D'3K1^&?:"ELT24(A62LNO]^MV1DN)TB3'LBRU1 M=\\]]\[EWMAOKD;T\+U1VJV2VOOV.LM<46,CW,2TJ.G+UMA&>'JU5>9:BZ(, M2HW*\NGT(FN$U,EZ&<[N['II.J^DQCL+KFL:80^WJ,Q^E"SK&K/!]EZ MV8H*[]'_WMY9>LM&E%(VJ)TT&BQN5\G-[/IVP?)!X ^)>W?T#.S)QIAO_/*Q M7"53)H0*"\\(@OYV^!Z58B"B\=!C)J-)5CQ^'M _!-_)EXUP^-ZHK[+T]2JY M2J#$K>B4_VSVOV+OSSGC%4:Y\ O[*#N_3*#HG#=-KTP,&JGCO_C>Q^%(X6KZ M@D+>*^2!=S046/XLO%@OK=F#96E"XX?@:M F'?B(#8*'0A=PDU1V$XH M!W_>;)RW5"A_/>=R1%P\C\C-<^U:4> JH>YP:'>8K%^_FEU,WYW@NQCY+DZA M_^\TG41]GO-_,04?-?@:82NM\_#0">M)P6SIP!5"A2REL$>03:N0>MAC"8(Z MOX?>!FBI*Q#6"ET%$4(4'E#'Q,3&'55<"H(E4-)$,0JA)$L6F4T*WK"X M-9 M&A0%REW$.),3G*3AN!6'8,,<.4%J[,1HX@WPF !M]%M"(2V'W/'2@=1@;$G$ M266#!"9+0&&#+\1:/S%!H6@3[!O M8S6EH?.(36G(HA_"1:<'J*B>!%F.42 NNA_A>^EKD#[$E#*CN#P=F#T7ET7> M$5PS]"9YW!?1XS:V^D")X*A^9"E8KL> ,#_C,/@7D*;-6 A7#Q1)ZP"T%"U5 M$6>#UXKT,I+EF#ZQX#S]<3(<9S?@;&D14B)JU%2UWBLLHT-;H^@+8_I ..Y) M^3L./@C@C4:FK1 QK$9^VO?IYE84OT9R8/0&QN 0DW%O%W#6>A]TSFR22WSHY';@8*GJJRDUJ$NMT !DZ:$ MG^ B/<\OGPP347)4>^N]'M,7YX80/C76S]#U!+ P04 " (8@5N9&K4=+(VM@)/ M2[L9N]HB%$&I4N,L2<[&%4@=+1=A[\XN%Z;Q2FJ\L\(U507V^0:5V5U%:;3? M^"PWI>>-\7)1PP;OT?]>WUE:C7N40E:HG31:6%Q?1=?IY :&N4_F]VOV/DS8[S<*!?^BUTKFY'%O''>5)TRK2NIVU]X MZN(P4)@GKRADG4(6>+>& LM;\+!<6+,3EJ4)C3^"JT&;R$G-2;GWEDXEZ?GE M?0D62Z,*M.X'\>&QD?YY,?:$S.?CO$.Y:5&R5U#.Q">C?>G$!UU@<:P_)D8] MK6Q/ZR9[$_"ZV8S$)(U%EF33-_ FO9N3@#=Y!:]U3/QYO7+>4B7\=F_SA&_+P'R@GLBF^ MH*A!%J*06UF@+ISPQ@.I;L2[-!G-J:R4X@[Y\5TRFB6B1FI:!OI)2"U\B6(M MK?/"R2=1M6DV:]IS.2C.SRP6N:EJ4B@(>6 F6"51MC([LC*=G[#2@L!*$5\K MC17/");EI"E&XK:QS+@WFTSCH'5CP 8KM])2IQOK!#2^-%;^0WR@M4'71]W8 MO*3V)6RSL5 )4'0A,63# 1E*!)7@I&DL_7GG01B(U7R:$\"^/+IZ3-CBN//71R1VT50L5.C]^5.P$/"AI:R3R$&Y]R M27Y[>/HFHME9(#IY2?3\(KY(S_XWT?10A",NUQ*VQ\![%9).*1;I/$XNDLY, M+,"_Q)PF\T/-Q>2*SC%0X8\Z/ @A#M+U!4%)&U37D @_;AR4+J?44\<%D\7G ME+R+-/G:\P,ZQ:J4>4F(3FA#$:^E#:4A"O 8C%7P3$7IZ)"?K*],0%%(%B=V MA_(/ *T=2F%0%'U>WXF,V#T$VU8J-T'4#HO:[.0K.TG4>MG".UJH6PN36JJ3!@ M;U"C)7]H&'B@Z8/XM"X2"+_DH=^@EIQ62QU&[1UXQ;WBBNI9$Y\CU;74H',9 M:N&P"_IY6/#L.S\##8D-8A('7H;*Q)YR")1'JX''"-K=HO-M).K:6-]HLH6N MSV3+ U_@4 M "X- 9 >&PO=V]R:W-H965TW*S?'QV.65Y$?BBL?8[S\"1+*R] MY9=?LXO>B!W"'-/ "(K^[O ]YCD#D1O?&LQ>9Y(5=Y];](\2.\6R4![?V_RK MSL+ZHG?:@PR7JLK#M:U_P2:>(\9+;>[E%^HH.YWT(*U\L$6C3!X4VL1_==_D M84?A=/0=A:112,3O:$B\_*""FIT[6X-C:4+C!PE5M,DY;;@H-\'1KB:],+M9 M*X>'EQ17!N]M0;7VBM-U/@R$SC+#M$&ZC$C)=Y".X9,U8>WA)Y-AMJ\_)*\Z MUY+6M]X='=86_V^L7X>/3N&<^GG>?3Y]!_J$C_ M#0GF'DKE M@EV,I!NKM'6:G24#GL0XVPHHP%6K/I[>%"@/:$5:UL W]:4S1:T M4!M8(!"FR%%7LK_:I%0^ZNWH%-B2'?'PAGS8VK8FWQSTV;P/*E1D=--*]L$Z MWKA#'R@L[EZK=,UL(AD@A14 6ETRDR4*T#;5/8]^A2 M3<[''?Q645#DDKBNM*-HW"U-W3N55\C O,$U46;S^L5I,CYYYYN(R !O9BJ( MH+C6)[=R]'YOAY]E%S1'3&YEE#)>_:Q\IK[!C>!]BI9)QE@J.16/DPE$_HR* MT&>%F.(',5!F* =-)$^'$?4*ZP.-;*X+J=(_XT8O:\;V%:6PZ+Q@#Z34$-0B M1ZHQG17@,7CVB]+)F*8J%N@XRG_B7EN7'4YY?7]8Q/&$/)Z A@L-UVZ\<'4M MR4KQ6*&6<<[%O4-'IU-#>PE!PI9XSV >37[NG&L6OK;Z\T;_9]'_P/H?6?^+ MY.N:*$>I%=K%4F]IYQ[N"0_AS?@ QN/3_NAM B_A.!D<3>$*G9S/)A:)N-G( M)@F/C\91].14U*]1AA2W,4TJKFQJ3:9W [:9C8G<:X>@W(J8L*UP^3 >#['<#;]BC)&4U!S;VK0# M0U8\MRP12;A-6HY+PC:9D3PO%%71::'<#KO$7I](&&HDKHY>237HEO-*6DQ\ M[=/)7S*3R"[YM$ F6C-LLK9?:;]MRMV Z%G;3$!5NM9X)[V!2QK5V9[@RJI< M.J CH4,:PX8MZG9:I:K4@5+)<&E55+F244C#TQ"N9\ 8$J7&LJ"\/-4]>,_/ M/%[3O.(>:>8L98.N.%Z.!D)3<;K6RL/+9/"6+B5Y+G4F!VAATBVT:1>JQ.YK M8O].$PI$LY8/K'8=_W]M#F >'H\+,D$, ME"2,3W:"YGI+FBM#++,KH_]ZF.WR(E*6S]YKNM9Q72D0@;?B\4N"CK>5)HKF MN"35T>#DJ!=[OWT)MI0;\<(&NE_+XYH^:-"Q .TOK0WM"QOH/I%F?P-02P,$ M% @ "')$62/MMJ'K P S D !D !X;"]W;W)K&ULO5;!O[ $@TY9'MG'J1"&!W\=[NPP+3M38_[(K9T::NE)TE*^>:BS2U^8IK M88>Z88654IM:. S-,K6-85$$I[I*L]'H+*V%5,E\&N9NS'RJ6U=)Q3>&;%O7 MPFRON-+K63).]A.?Y7+E_$0ZGS9BR;?LOC8W!J.TBU+(FI656I'A4^Z_7?O.-SZN/ENK+AE];1=C)) M*&^MT_7.&0AJJ>*_V.SRT',X'SWCD.T4#;*3EZ(-^GH34*\R:OTZ+VT>:5M:YB^ M7RZL,Q#$O\.)G__MOX;/3G"WA/.KPG+T5_ MM1R_[DW?F$I9,^HU]/ $2J&T M0T-8W.&0DM.'D#QDW@BH/L2PA!Y$6Q;&4@-XQCN4J"I,(1>(!E-/L?;8_W*H M\>D!O+PUAI6KMM1"Y>808R]H+R886;YOX76(<30(T'QV4!A+#VRV5,E:.BY( MM(5TL4U)MR5=DF[-,^7KU>4@KSX%+Z;]P]Y UM3@5Q>HX)-]>(.6;V,6(7'T M-ZF6Q&7)H85&+"'-8.%;8D%MXSNL(K9.HE5Z-DJU/C]'O(H[]#68^'QY'48; MZQDC$;7%IO>M-+! \A;PQ&T30EHJD$JD@?V*=XT4!AY]A?0!9KX2:LE1X]BQ M$FL0[$T^(@3-T ZB&%J5LW%BYX85&1/:D[/'%C/HMW8KP_Q''?L?^_Y'Z%Y@ MUO6OP=&D(J2'G4,GP[=OP$'7C=@E)$19D M6^7B9=O-=D^5RWA#/YK'=\XG8982PJJXA.MH^/8T(1/?#G'@=!/N:_#%[1\^ M5WANL?$&6"^U=ON!WZ![P,W_ U!+ P04 " ( CWY36'82S2:8/[4/B4]/*CF06B1G >?-Y@K2^!*2*!F8,4?GQY#OMDY/?I/^4+3_,$M98ZL93HW M1#X3C;NZ0JNJ*Q4FLD;TI7*"ZQHS1L7EM?>9:IGC9OEK7S,TS>'".Z":Y9G+ M&C)+]K9DLH^,GIHMO6V=QG$%4^7$,0QC& WA.H53G1L>S=4*]<:_'H820I7? MC=C^M'^@YMU<_JW>O6X?F-YPNBR!!9E&5]?# '3W8G0;JVH_I=?*TLSWGR4] MLJB= LD+11>RWS@'_;,]^P502P,$% @ "7)$6=3WT@P=!@ G X !D M !X;"]W;W)K&ULG5=;;]LV%/XKA%L4"<#&NEM. MDP!)NVX%VK5HMO5AV ,MT397271)*D[^_;Y#7>*D=EKLQ>;E7+YS%\^VVGRU M:RD=NZVKQIY/ULYM3J=36ZQE+>R)WL@&-TMM:N&P-:NIW1@I2L]45],H"+)I M+50SN3CS9Y_,Q9EN7:4:^C2F+<70_2WWK;84^Z^UOLK&0AJU73_XK;WPPY#'AQ@ MB'J&R./N%'F4;X03%V=&;YDA:DBCA3?5C%7G9CH@)B,?="-6UOV2U/*\B'_%)!&7-& ZRIZ4N!E MNSIA<DO[S,?D?8M@7R=;B1K*E;@VJ M:O"&[6CL*7OQ+(^B[!7[8RW9I2G6RJ& 6B,J]M:(FFBO[ZR3];W<4EJU:BQG MLEE!HS18+L7"J$(X:9EH2K94C4*28E.UD-'62/.FU%N.'#<.O6,KJHHSI#N* MTB"5/!>$&]$4DME>(YH0<\ E;YTT"AN]9(M6525@V9,GH/]:B1U'%!J=K,,U MPN1LC0)^N9'&=SK2NO),K94E4TU?C#UNSTR81VCH,(UN7B(;5 D="DI_"MDU MDD<5\AZ<:IQ<&>\Y$*T;P(.6GHJSC='_@A<]H$'3) [>>UA6A-,ZH!*^XPU, MS.D^1OB_,2KZ\!E#)/FZ<1WST_OKC\6@4 MT+9+028#S@%'DRI1F+M*%61EV1;N/N*]]Y=="G)**,F$Z8T?K$*D-.FW4&B^ M2HRK$4&# 6;F332OS#Q>"' M8RE<9B"F=+7"SQNH_B+[ MM5ODLN*P5K?+ L%&X$A;VZ(['RUJLDVZT< !IX M@,JV +VN5-EC0-SN[<2XAA0*(%#K6I*Y\EN+B$#JB(.SBCI#H:VC&EII70*! MKDK4(":D=_%*-I(RU,>EK*F"'8F^H?K#1X$E,?ZRN8,G+62K>B.4Z6IL34EA MZ4(7RB/=*K?VP>SM?PKTX/'O;@ZYOG/1;@"ZS+CM!0UQ+;1!2"#"&P^.M4"0 MC43UXK^J=.'%T^&8 Q7"7NW&LXM*V]S3/Q8+3:_'(P+R$3SF!.7QR)Y2 QSI M[DUFF@B'6Z1D[VO>F2L1L/Z$+GLR)VZ'TQ-4I)'RP3QFU^KVX<'1NP9&Z-8" MFCUFF+:HKW'>#OLH\_OXA_??%]G3D^,Y"Y.0QVE JS3G>1!B%\2!)P3SC M21[M[5_AG.=QQ**89Z $VB#.6))YW>\.%O$1T&3A,3L* SZ/_2+E24H+F)2D MV3'[??01[$QPF) 7XA2*9BE6V2SF\S3#:@;>.,\/5\E1I2U%[T>^GG&XFQP, M*[).&T]F,RS(KB#=ZV=/G!-S$B*(_-CGX)C/YC%+>(8XYSR+P8+(PMP]=4-^#;/9L?^/XLZ_61[1 G+(O]\5 MEC=NGI%+DX"GP/*ONAM^\F_; ;IHOM.R^UE<4= M*WPTH+DGXVPA[S3T['32>U8H-SC $.F$R_)DWQ?I=.?%4$L$A]Y%- _:QG6/ MA_%T?'I==B^.>_+NW?8!L<7' YKD$JS!R2R=,-.]A;J-TQO__EAHAQ'NEVL\ M'Z4A MPOM7;#AA2,#]*+_P!02P,$% @ "7)$69U]7BH:!P _1( !D M !X;"]W;W)K&ULS5C;CMLV$/T5PET$":#8EN1K M]@)XTP;M0]!%-FT>BC[0$F6SH427I-;K?GW/D)(L;W:W+7I!'RSKPKF=.3-# MZ6*OS6>[%<*Q^U)5]G*P=6[W9C2RV5:4W [U3E1X4FA38T M*T@>DG@H>$EV&52R=6UQ:BU#UX 4K8Z8J/A:02,KM1%,%(7,I*@YX=8##>&!T(9W7M0&.\/\E2E@8 R?A$K?LQ5>+ M)!F?WQC]"ZJ>H6Z=+ [^;GS^:L@>/(!&B58DU8%)F,F<]397)MM*)P@V(/+. M\))@NSU8)TK+;L6F)._)8UEEJLZ%?1,LS\[9-TIB-2*'1":,0UMD:'S"O(:A M#2X01(Z,>'%BB\R 7($H(-%BY84!G58R]R#"$ 7( .X&T3?@8A4XP[,Q_ M-+RR! D];$R1_#$=K#"Z[$-+HO'\' ]X)A6TP1C[Q-5G82+V7@**#:\B O@9 M(:HBB*$9((1VQ3V 8')#5T=U;P*Z0B):6-F#;:5\;4K!# MM@I@H;VZ3)>E,)E$:CQWR#.H,?H.M%;B7JY]%%%+)R7N$/M&/.I^QG=\W000 M2"BJ+0?MF]Y+# ])&K)5GGM>.1#B-T')R% 8 MP,EG_E@V:!J *@L 2E#PE'ZWP?PI[]YJ U!0E<-^45L!?//'BWKJBQI\K7VY MG,7#!.-$*4^. MZ)UX[?^Y*$A\@> *90]A)E]J!L(I+8;T$-=C8>+CL]>X(A M5$001$"^QK'<JGP^>4[%-8]NK@3L'D63X?C+BY(G\6SXPW$ MY=4\G *G,;7*N1&-'V&\-$DZMOJS62_S9&O>LTT)]XTGY 8A 0U]$(1@V']X MJ,\[;:L'@9SF!X7M-R@,@(7YHJM6 VE_QJ=I7X_V0_O(G<<3S5V3[3:_>VA M(^5ASE95S15Z6H@!Q+ZCV47JS^+T%/U)#_NM0?3][2+#9@]=MMONL9??T=#7 M&!=5;E\],8>?:(]=2V0O>+D[9]_[2$/"/_9 6Z.D"FJS9RR9QSC&\P3'*7Z3 MR0)JG@*:Q>.%QSE.SKM_NA-/JI,1XW?20:[#'_O\#]9X!C'NX^+"A?>:EG>32/B46SU'N_C*>>2BWE_$N?W_4U.20*X&UESXV? M=U_RJLF<9;EFE78MG;#WH]>+H#=GN32 'J, J6PA"5L%/\(CND *;2M'Z2=M M>"-2@0/_&3,?>\\=]3Y)8!>]\1]>$!WV*"Y\G>CN=M]V5N&3QG%Y^##TWK\X M6T$&NB]>5[\# M4$L#!!0 ( ER1%DW3&[A]@$ )T$ 9 >&PO=V]R:W-H965T<2=AI9'HAJ/Z] M!:Z&',_Q:>&>-:WU"Z3(.MK 'NRW;J?=C$R4F@F0ABF)-!QRO)FOMTL?'P*^ M,QC,V1CY3$JE'OSD:YWCQ!L"#I7U!.I>1[@!SCW(V7@*(AQJ8?,*IZ8Y48Q%!P^8E:6F1:#4C[:$?S@Y!J4#MS3/J?LK?: M[3*GL\6^+PT\]B MNCVZI\F(=5B_2:H1L8V(] 7$"MTI:5N#;F4-];]ZXNQ, MGM*3IVUZ$;CIFQE:S-^A-$F7%WB+*<=%X"U>FR/ZN2F-U:XB?CV7;J0MGZ?Y M+EF;CE:08]<&!O01&ULK99M;YLP$,>_BL6J:9.V\ Q; M1I":YF&;U"EJU^VU"Y> "G9FFZ3]]K,-87D@4=3E3;#-_?[GXRX^1VO*GG@& M(-!S61 ^,#(AEGW3Y$D&)>8]N@0BW\PI*[&04[8P^9(!3C54%J9C68%9XIP8 M<:379BR.:"6*G,",(5Z5)68O0RCH>F#8QF;A+E]D0BV8<;3$"[@'\;"<,3DS M6Y4T+X'PG!+$8#XPKNW^U%/VVN!7#FN^-48JDD=*G]3D6SHP++4A*" 12@'+ MQPINH"B4D-S>3:%TJ<'N\49_HV&4LCYC##2U^YZG(!L8G Z4PQU4A[NCZ M*S3Q^$HOH077OVA=V_J^@9**"UHVL-Q!F9/ZB9^;[[ %V,< IP& W@[0/N$F4+Z5@IFTO@9UGZ<(WY<=$N)R#@:DQ32#GYRF@].\*:,N0W< MV00^=$X*7E>+'G+M#\BQ'*]C/S>G\>\5Z2'K.#XZP[L3:-SMP,>G\5N9-2<\ M2D_^+_3IJ_>^DPFW+4%7Z[FO*<&N2JOEO&XY=73W^1(G,##DV6RW>*?7XA^S.@!G)R:+S&*KI0-.J M#:]BU_*#(#)7VUGOL+(MV]ZU&G58N:X3[EJ-#ZTTIH=6 M?O#9+NK+ MP#_Y^FIRB]DB)QP5,)>NK%XH^QJKVWT]$72IN\TC%;)WZ6$F;TC E(%\/Z=4 M;";*07OGBO\"4$L#!!0 ( ER1%E0A3\_1 ( (H& 9 >&PO=V]R M:W-H965T]E6;F#Q1"*^"*"HXDY(FW MFBS7"QOO GY2:-7)&-E*]D(\V\F&)%Y@A8!!IBT!F]L![H$Q"S(:OWNF-VQI M$T_'1_I75[NI98\5W OVBQ)=)MX'#Q'(<0HMR_E44OSE)H\G6[,\1*0Z$EB0GF!5E)B7H Y=JUB7YL=;)R?];1U1PLO MT"+T(+@N%?K""9!_\WUC-NB%1[UU. I<-<4=BB8W* S"Z0@O&LJ-'"^ZP#M7 MY@W:OZ(-)_1 28/9N:H[Z/0\U'XW2U7C#!+/?!@*Y &\]/V[R3SX-*(\'92G M8_1TUS! DV _NYV<:J,5$;7^_Y [W7%@CIF"$;'9(#8;Y7P7_/8*N7'H6W+S M06Y^U:D]@31?$;[@-LY\RVTQN"VN/KAQOW'N13__I#]4( O7!17*1,-UURJ& MU:'1KKK^\C>\Z](/6!:4*\0@-ZG!W<*\3MEUOFZB1>VZS5YHT[O&ULU5A=;]LV%/TKA L4+>#8CI.T79L$ M<-IU*X866=VL#\,>:.G*8DN1*DG%R;_?N:2DR*GC8<5>]M!:$B_/_3Z7S.G& MNJ^^) KBIM+&GXW*$.J7TZG/2JJDG]B:#%8*ZRH9\.K64U\[DGG<5.GI?#9[ M-JVD,J/ST_CMTIV?VB9H9>C2"=]4E72W%Z3MYFQT..H^?%3K,O"'Z?EI+=>T MI'!57SJ\37N47%5DO+)&."K.1HO#EQDU:,Q#,^-9BCGJ5O''XW*&_C;[#EY7T]-KJSRH/Y=GHQ4CD M5,A&AX]V\RNU_D0#,ZM]_%]LDNS)\4ADC0^V:C?#@DJ9]"MOVC@,-KR8/;!A MWFZ81[N3HFCE&QGD^:FS&^%8&FC\$%V-NV&<,IR497!85=@7SI$=]'(XBWM%#>#L<_G.Q M\L&A;O[:Y7#".]Z-Q[WTTM-'A\]FK_98>]Q;>[P/_?Q" M>N4Y9Q';!,D5OLO('X 1GTH2F34>81JISSYL7AGLHEXLJ&Q:/!F&R>L$P&(KVU52W/[5)3RFL2*R+#66CHH4-R= MF74YU! :()3QOOM+4DGB&M=O)I$?"9$AJ*0EQ5M.=H5GNIB MPU^_-=(AP.RSR?'/-$C$KI1,Q$)K(?,O8(V4(T,9><_MS79)44CEMG.-+&[C M1\.#%9QY >IW,IJ&/: Y+Y NIF+F5+A6DB/.'=N%!8!)83C.>@RIK''1 2-# MXRCEH<.!: N.0NNC%DI'=!#QO+HYJ)@R!,24S7T;3?0]W.L[/^HU-O2N*OBA M3 X68[9G/6&@%HXAMW13)_L[O46#P+'GDSV]>=+WYLG>IOJ 231(*O)CXBIM@P[V6>7,$/UZ5W$@FA[RSB/?.LZ5 MQR6.5=1<[WK2IV];!SG",L\5%WHDKOV.QBY0 8%B\VKK5=>F(;)8KF L^]-6 MKF$*:5?7SC8U+V2VJE0(H&8X!BV%8KM *\AK5BHJ!HV=4Z;X@'50R:_D)F+9 MP+4N*UV.X4?O7VHA6=>:41T%9SVW$[I-WXY9E(HBO M62#6X@VZ-E;QX1AHKI$,/$B/_\*ZAA0.H#/UZA1&>DMMW4: )Z18XAR M$'*I= I\+Q #VB9OHU %S#!Q;J&@%+@_"UQ=/-WNB+A/%CR8QJ+?076(*-VK M'+J6NDG)B#E.\ @SP^\JOP=G3.+$DQC"HF'2O1_)"5-''ZD!=8 4ON>$G[[G M!(QWBXK[)&^VN8#U1$L@0Z:,+1UKV4GC>I\P%ZB;R\S<5;@89,+54^=%I6/#;2]]2\>_R-$'=Y?@SKE!A^P\\TP'-\J*W#K>FS$]N#[2Y;+_VE_-%^E&>B>>[O7@)J32 M"TT%MLXFSW'H<>FNG%Z"K>/]=&4#;KOQL<3IFQP+8+VP-G0OK*#_@\7YWU!+ M P04 " )36NO5^72J MBAI;IMZ+%7;TSU+(EFGJRFJJ5A)9:1>US33T_73:,MY-YA=V[%;.+\1:-[S# M6PEJW;9,/E]C(S:7DV"R';CC5:W-P'1^L6(5WJ/^?74KJ3<=K)2\Q4YQT8'$ MY>7D*CB_SLU\.^$/CANUUP:SDX40WTSG8WDY\0T@;+#0Q@*CSR/>8-,80P3C MG][F9'!I%NZWM]9_L7NGO2R8PAO1?.6EKB\G^01*7+)UH^_$YE?L]Y,8>X5H ME/V%C9N;IA,HUDJ+ME],"%K>N2][ZN.PMR#W7U@0]@M"B]LYLB@_,,WF%U)L M0)K99,TT[%;M:@+'.Y.4>RWI7T[K]/P.'[%;HP=W6"!_9(L&%;"NA!O1:4DQ M@RNE4+NQ3YPM>,,UISDG#W;NZ<54$PQC;%KT+J^=R_ %ERE\)MNU@I^[$LO# M]5."/^PAW.[A.APU>+6NWD,4>!#Z83QB+QIB$EE[T7A,8"E%NXO#ANL:;FQ& M4,*?5PMEQ_\Z%@!G/SYNWYRS<[5B!5Y.Z" IE(\XF?_X0Y#Z/XV@CP?T\9CU M^3V=VW+=((@E?."*597$BFE*V8/0K('M[A;/\,")49692-D75-Y)$71C/S M"6AID 9>E(3TS;T\#GN*$*PX]&(',(F\-$NHE6:1-TM2:F4!.3-;]R3H& E'#1TGX2LY_LQD44/8]QXD*Y'*1"'6'0D>YF;4W%U M@.W&8?MDL1U+S:CAM^N#NQD0@4D<:G05F^MGX)WKCP3,C)@YBC^=M>:8PPHE M%R6@.>SGKYWV:ZQXUQDD"]98%^_ZZ+N]*RAJ)BLZ65I0XE5?$/&)+D?&_4G@ MQ4%\"A\H@I8=RE6/ ;++7"]M=#A-"0TB^$*8);#R;T)C]((L9:=&H ZA.#J, MY#@;7M8$BGJG^D!0; IS'55*%-P& MS%["UIW:.GXQ4%2#OR< HPL#'FY@L./9XVP$I!"2\*R$.X+;VX6;OLN@UU?8 M Q%#1177Y=547B= ZE7M^4I[(H43'5I6$7$2*NQ)E),JZ0VB^\OBVP@[11'' M$B^>133C61S\$01T%_#]H9#/Z,Z11L%1@DSWG@UTIZWLXXB4SM0_]X(81H?W MUY5[=NRFN\<;55(24 4-+FFI_SZC8BW=@\AUM%C91\A":+I VV9-;TB49@+] MOQ1TP^L[QL'P*IW_!U!+ P04 " )XEN;/O^_R=?7>S1JIG72 :>"VY MT'.O,*8Z#P*=%5A2?2HK%'9G+55)C775)M"50IJWH)(') R3H*1,>.FL7;M3 MZ4S6AC.!=PIT7994O2V1RV;NC;SMPCW;%,8M!.FLHAM\0/.SNE/6"P:6G)4H M-),"%*[GWF)TOAR[^#;@%\-&[]C@,EE)^>R<*0#[MI;]JLV=YO+BFJ\D/R)Y::8>Q,/[!54#+1_>EK?P\[@$GX"8#T -+J[@YJ55Y20].9D@TH M%VW9G-&FVJ*M.";9Q9GT1KR@,%(QU/#MD:XXZN-98"RSVP^RGF79 ML9!/6!*XE<(4&GZ('/./^, J&F21K:PE.4BXJ#>G$(U\("$9'^"+AC2CEB_Z M3YIO<,ETQJ6N%<+OQ4H;9>OBS[Z,.\+Q?D+7*^>ZHAG./=L,&M4+>NG7+Z,D M_'Y [GB0.S[$GC[8WLMKCB#7L/-"^V0>)-HO\\.;WP@PA:PU%;D^!GOOMN:& MFX=;JK("2._=T\;6GD'%*-=PY,*F,>F,*(G@R3;@"1,GE9(9:@VCQ$_B!$;$ M)],17#'!;*'FL)$RUQ"%_G02 8G]>)+ HS24 WM7YH.P(^D(SJ9^;,%'D$Q] M,@YAW^T&._5?HMJT7:XAD[4P72L,J\,@673]\Q[>32&;\(8)#1S7%AJ>GL4> MJ*ZS.\?(JNVFE32V-UNSL,,0E0NP^VLIS=9Q!PSC-?T'4$L#!!0 ( ER M1%E<,.^,P@0 .H+ 9 >&PO=V]R:W-H965TG]^AL[ M:2A0>IR@>9G,C)\9/S.>\4KI!Y,C6G@LA#233FYM>=;MFB3'@IEC5:*D+YG2 M!;/TJA==4VIDJ3GZ-0JTDG MZFP$W_DBMT[0G8Y+ML [M#_*6TUOW=9+R@N4ABL)&K-)9Q:=G0^=OE?XR7%E MMI[!13)7ZL&]7*633N@ H<#$.@^,;DN\0"&<(X+QJ_'9:9=TAMO/&^^7/G:* M9(]!W!C$'G>]D$?YF5DV'6NU NVTR9M[\*%Z:P+'I=N4.ZOI*R<[ M.[WDDLF$,P%7TEA=4;ZM@8-[-A=H#L==2VLXS6[2^#NO_<5O^!O"C9(V-_!% MII@^M^\2MA9@O %X'N]U.*L6Q]"+ HC#N+_'7Z\-N.?]]=[P=\/T UH7'MQA M4FEN.1KX:S:GZ(DB?^\*N?;8W^W1E5W3'9; -)QGKFGL'! ME:0E5&683,TAS JE+?^'0%\H8^&K5L; #TG]2WCI5^I;YK7XFMZ)%E^,Y;0, M"8B&5(PM$>$WB*+@)!S10^_$7>)>+>O'L=N4)(>X425A+SZ!: !]4HW"X#0< MP!YF#%IF#-[/C.=A4NQ;V"\9U_"3B8HB(MVKIW3!?$T&TC._HAYPTZ1T%X'V M@GF+0 BL199LD&&++'/(EBTRHH;![>T$9E]F/G"8DRW,&QH$P#0Q)B>*PMP= M-L?PY;&DYD_K-#JNT@NVAI1G&6K(M"IVN?)T8Y0@ M),(:F7:$"Z+HU-_#T]CKL,Q24*V*;:HWHU//2PR,@L'HE*Z]7@CWRE+$6S1N MN+N'F,.6F,-W$W,KCAMDU!K0;^PN@NUUNIM@+[+Y1Z5<[JCC)+33E*]OM%\: MOLV=NF\H5[*LW/EVC4L4$!\V:=A"^;+0J9^AZRMTK.&ZZ4V05;0>Y:P?!_TP MI(>/'T9Q%']Z$MU4DB>\)-^.\8G2I=*TL<0I9[E1;W+>W&C,H"%"TK&O-&J?P4Q4-$E4!= V M+5P3?KU Z/Z?M[&]B8B'P2 ^?9:(1O3.1-1=L;F]2@2=#2NFT^Y;">G1WWO2 M$04Q%4M]_9\I<;&XWZ[ZZ&[-7P7JA9\R#?FHI*U'L5;:#K*S>GY[4J^G8,KY MPIU( C,R#8]/J.WJ>K*L7ZPJ_30W5Y9F0_^8TS".VBG0]TQ1#30O;H%VO)_^ M"U!+ P04 " )T4]M_/=B"E$V4O.9]]WW??Q;Z;[+AXECFB@GU5,CEU5:8X5 ME5>\1J9/-EQ45&E7;%U9"Z29!56E2SPO=BM:,">9V+VE2":\467!<"E -E5% MQ9\YEGPW=7SGN/%8;'-E-MQD4M,MKE!]JY=">V['DA45,EEP!@(W4V?F7\]# M$V\#OA>XDR=K,)6L.7\VSB*;.IX1A"6FRC!0;5[P!LO2$&D9OP^<3I?2 $_7 M1_8OMG9=RYI*O.'ECR)3^=09.9#AAC:E>N2[KWBH)S)\*2^E_<*NC25C!])& M*EX=P%I!5;#6TOWA/YP 1MX[ '( $*N[3615WE)%DXG@.Q F6K.9A2W5HK6X M@IE+62FA3PN-4\DMKA7TGNBZ1-F?N$I3F@,W/<#G+9R\ X_AGC.52[AC&69O M\:Z6TNDA1SUSKH!I H7M!)/GWP8^_S!:5AIS2\Q)ZL=+]E38GP ML($%4Z@S*+C;Z^Z3>$[K1;;S6I]R@?CFQF!5[-]N]!8,5,X;25DF^Z#O0S_" M[D:./HFM'_SWO*M$=V!F[N(C^(,@&&M+!G'L6QOY@;;1P!_ZKP!!%8+K9 CP1Q'WI^%.AO."3F2[P^/*@[7\'9$WE.Q+9B$$C<:ZET-(P=$.W9:1_': MMOJ:*STX[#+7DQJ%"=#G&\[5T3$)NMF?_ 502P,$% @ "7)$6=I<5+2( M P "P@ !D !X;"]W;W)K&ULE55M;^,V#/XK MA'<86L"H7V*[:9<$2-+;KU]$.B\PH;I&]FBH#^E5 TS)*IMH%N% MK'!&31W$89@%#>/"FTV<[EG-)K(S-1?XK$!W3.';REA% M,)NT;(LK-+^WSXJD8/!2\ :%YE* PG+JS:/[16K/NP-_<-SIHSU8)ALIOUCA ML9AZH06$->;&>F"TO.(2Z]HZ(AC_['UZ0TAK>+P_>/_9<2L_>6&J MJ3?VH,"2=;5YD;M?<,_' &\0.]Q]((?R@1DVFRBY V5/DS>[<52=-8'CPA9E913]Y61G9DO9--Q0 MEHT&)@I82F&XV)(,OW*VX34W'#5[7N=%/%R@D M X7DDO?9BJYJT=4(LH1/'5-,&,2>S8XI*Q*5U%U9!7 M3&W)L9&02[TO"[[1'-+$*O7OLEMX(,)Y?[Q4LH$]/A\$#3+RKC"7KQ3!]F[F MI^/T^A@(DL,3"*%_FR1PH13I4(KT/Y?BHS:#KRL$8R\J99JF+;1*OO+"=L)AZ%I8.,#: M'&"I4UCR6UCF"!9<\>-ZW\,C);5U([8@)[!&17.*O2L>L$2EWK/PKNBK^QG- M 0D\L:^V:V*XBH9.(CFE&F5^F,:T1GX6)K0F?I*,846AL=F@HF/1J>BL1GYT M-W96X2BRE?8CZIZU-*PFZH/^EE.8@V ##^S_[%U!+ P04 M " )4%2L.5!(W;6;#H3Y9#9^\-?G#< MF\X:G)*-4D]NL(P^.(KHLFIF0)S@)J$X-ZA\'\ MTX?^./I\@N^PY3L\A3Y?4U>FE4!0VTZ)B#D];FY?O(S[RAI+"RXS6#+ARFJ. MZ3@9Z;B.QQQAJP2UL@.W+G5-/_._E$1+U^J5%>NR4AU6FYH5,.-T4$WIH;=5 M)11F88^0LQU"HN26ZP)39[QC@J=@E0_$4NH'[NIDE?9 JM)0UN]W F>WDLQ4 M92BF.?\OR/) P<(&,RZEXT48)6JN4O@(X]XHOGS3!BRE-WR(WL2!..X-^_TW M=@:M%61Y%D>]430X[\9"EXE.E*O><#""8P\C[#1U@3KSH\M0/BIIZ_YN3]OI MN*B'PJMY/5KOF":%!@1NR36ZN!P%H.MQ56^L*OV(V"A+ \-"]#^9\S_ 5!+ P04 " )LS@ O&B,?7 %HH?' M4FFWC KOJ]LX=FF!I7!C4Z&FE8.QI? TM7GL*HLB"TFEBI/)Y"HNA=31:A&^ M;>UJ86JOI,:M!5>7I;!/&U2F64;3J/]P+_/"\X=XM:A$CCOT?U5;2[-X0,ED MB=I)H\'B81FMI[>;.<>'@,\2&WTJJD/+_:%<+BNPWIRN#.E+373H1VO?TD]@K=Q2+V5(:# MX[2#W+20R?] 7L%'HWWAX+W.,/LV/R9Z \>DY[A)7@1 M;- \"WBS5VC>BB>RF(>UM4+G&,9_K_?.6_++/^?$M]CS\]A\AFY=)5)<1G1( M'-HC1JN??IA>37YY@?E\8#Y_"7VUHS.9U0K!'&#G3?IP;N?6C;"9@]](D*@=T4_@" M/"WINMRC9;(ND-T'LNDI6=&2S3NR66VESD.RDX_ORM9(R$8"L@&=A\$((Q#* M4&PCNVI-+U)T(@,H9"SRP"*/+/*V[\^? [GNP^N:!/=(YI I!P95O03NL_U^ MK=:2.O)V>@'3Z4Z MHLNZ8B=17>*T1S8:EI4R3^P9'^K1>LB@X:D@&DO3'B61%A*/G$MW/QV'[)O MW @53L!@0HN^MIHK2LT[P@= 5-)3*QDNK7 M?8FDC)\T1[M7:]_>^\/7X=5>'J(PK"@EQ\M!]#ZP1C?3[C \+_$ZE]02P,$% @ "7)$6:#!"B5? M P U@< !D !X;"]W;W)K&ULC57;;MLP#/T5 MP@.*%NCJ2RY-NB1 LW98'P8$2[<^#'M0;#H6*DN>)-?=WX^2'2_=TFP/B2R) M/#RD>)DU2C^: M'"%M=55&)JTP)*9"U6AI)M,R6,S\V4HO9JJV@DM<:3!U63+]I%/<_]ZA?_"^DR\;9O"]$@\\L\4\F 20 M8PB1Z12'I M%!+/NS7D6=XPRQ8SK1K03IK0W(=WU6L3.2[=HZRMIEM.>G9QR[3DZD?$K&>7;)CMTR. M E[7VPL8Q.>01,GP"-Z@]W;@\0;_\G;5>_OM>F.LIN3X?LC?%FYX&,X5S)6I M6(KS@"K"H'["8''R)AY'[XZ0'?9DA\?0%VLJP*P6""J')3,\!28SN.&BMIC! MWZX>-,[DG6.X'X&MCBGN[O;U?KL"NX+C?@BM6#-GU\>G-XY MJ@+W3/JE!N?(=0ITD=0E0NT@9BPD]$0XBD9IM_-Z\'^3X^?(&J8S0^134;NGR[4JVU1A(JU%GRH' MN&XP991<7KJ+5,,<-\O?^IRA#@^GW@#E+$]=U)!9TK<%D[UG-'X>:=ZU$OL9 M3)D3QS"*83R"RP$<*N)PK]>6J+=^HA@*"&5^VW;[TWYH7;>]^K=X._$^,;WE M]%@"AVBK0;JRK?N3?*TASPGP4-7M1.@.YS10_2;9R!?I0O?@%0 M2P,$% @ "7)$65]>KQ&H P ]0< !D !X;"]W;W)K&ULA55=;]LV%/TK%UHQ. ;221%29EMP,G6+4"[!G&W/0Q[H&7: M$BJ)+DG7Z;_?)66K2>"D+]8E?>_A.>?R8WK0YK.ME7+PT+6]G46U<[NK.+95 MK3II+_5.]?C/1IM..AR:;6QW1LEU*.K:F":)B#O9]-%\&N;NS'RJ]ZYM>G5G MP.Z[3IIOUZK5AUF41J>)^V9;.S\1SZ<[N55+Y?[:W1D6YRQ%I9JBUX[\"@P^217K;(7T]CA&CXS MKHYXUP,>?0%/P ?=N]K";_U:K9_6Q\AM)$A/!*_IJX"+_?826$J )I2_@L=& MP2S@L1?P3CKOU4X;U_1;^'>QLL[@]OCOG-P!C9]'\T?FRNYDI681G@FKS%<5 MS7_^*17)+Z]PY2-7_AKZ?(E'<+UO%>@-+"4V!&2_AH\[961@?MM7NE,P>:_M M^5Z]"G^>_*?:*/6DB;!L'IY.3&Y[<+7>6Z1C+P!;A!MU;-)I3$48LQ_^?VI) MCW>0#3(7IJH;AP=W;V0+[XSLO-SE-^M49^$-I#PE+$M\E!6D2%*,:,Y)1BE& MC%)2"O8,Y?=6XC8O$Y)B>LE)4@I($%Q3>2[-5;Y<5,L?>N 8#S"$%HT 9$9B);!,F@(NP]FWOE+%' MS:IM4)OT-Y2%";(1Z05,TH24+ 09X9D/4!+/Q 7\.7J$.CE.MPVS7';M'[;_-CKG*#=WF!4(8;5",]S#+RN)#OK'\_/C,)G#NA,>/KN).(6__X%BH]+YWPZT\SHYOVF*XRK^G#P_B!Y3= MX*YHU09+D\L\B\ ,C\PP<'H7+O:5=OA,A+#&=UD9GX#_;[1VIX%?8'SIY_\# M4$L#!!0 ( ER1%D4FK3\Y0, #<* 9 >&PO=V]R:W-H965TJ"E ML<4N1:HDM4[ZZSND%-5.';(_&Z4;9G&IMY%I-;#**S4B2N(XBQK&9;"<^[T[O9RKS@HN MX4X3TS4-T\\W(-1N$=#@9>.>;VOK-J+EO&5;> #[?7NG<16-*!5O0!JN)-&P M600K>G4S=?)>X <..[,W)\Z2M5)?W.)3M0AB1P@$E-8A,/Q\A5L0P@$AC5\' MS& \TBGNSU_0/WC;T98U,W"KQ(^\LO4B* )2P89UPMZKW4<8[/$$2R6,'\FN MEYV@<-D9JYI!&1DT7/9?]C3X84^AB-]02 :%Q//N#_(LOV&6+>=:[8AVTHCF M)MY4KXWDN'1!>; :_^6H9Y?W8*SN2MMI+K?D_)&M!9B+>601VTE$Y8!ST^,D M;^!DY+.2MC;D6UE!=:@?(:>16/)"["8Y";CJMIHNLIFE.BFP4SY)TH'1<_#V9T^-/_RG/3/!T]1Y,9CD4^^;=]1\,D3?>]1\.4SO["?S2KAH M6%GJ#KVS9H))%ULN2]&YA-EQ6W/9"^"R9<\:#_"WU(OR&%^WJ7Q@RDYKD)8( MSM9<]#<8=YD&&%=IE.!5K]J?1_PK82[)2K@(N1?;7X6O63$-!)Y:S$34M0I/ M1D)\)+GAID1Q3.SIY7^6V3<#96;)9X;JF"5]*;E\*?H<"N,L=]GN2G(2SK"6 M#Z/N;) &2)[N)2E"%%E,[M@S=A;HS?,TI+/I!7XG!8Z4YFX>9EE\,1!BU2]8 MS+UTGO^Y4-S>'MW7M>\OB=079)A3E_!9ZMG/Z/1HUD=[CWD#6#BN93$8T4[: M_ET?=\>N:-4W W^(]RT5NF[+I2$"-J@:7^:8[;IO4_J%5:UO#=;*8J/AIS5V M=J"= /Z_4&ULM5A=;]LV%/TKA%8,"=!&(O5A M.;,-))&&%6B!(&FWAV$/M'4M$Y5$3Z3M;K^^U$<42V:T)&->;)$ZYY#W7NI( MY.S RV]B R#1]SPKQ-S:2+F]M&VQVD!.Q07?0J'NK'F94ZF:96J+;0DTJ4EY M9A/'">R4[+?ZXAXX>YA:V'CCN6;F3582]F M6YK"/Q.)6$Y%(+Q I6PGEM7^#+&;D6H$;\S.(BC:U2%LN3\6]7X MF,PMIYH19+"2E015?WNX@2RKE-0\_FY%K6[,BGA\_:#^:QV\"F9)!=SP[ ^6 MR,W<"BV4P)KN,GG'#[]!&Y!?Z:UX)NI?=&BQCH56.R%YWI+5#')6-/_T>YN( M(X+2T1-(2R!#@O<$P6T)[G-'\%J"]]P1_)90AVXWL=>)BZBDBUG)#ZBLT$JM MNJBS7[-5OEA1+91[6:J[3/'DX@[V4.S@/;J#%; ]768@$"T2=,,+6:HRHBLA M0#9]GQA=LHQ)IC ?4$M%9Q%(RC)QKOJ^WD?H[-TY>H=8@;YL^$XHGIC94DVU M&M!>M=.Z;J9%GIB6BSZK\3<"Q44"B88?C?.#$;ZM4M3EB3SDZ9J,"E[MT@OD MXO>(.,33S.?F&702U'17%\[_&SU^]>B]9+C=HG%K/?<)O8@)FJ8EI+1^V/FZ M6PM_?E)0]%%"+O[25;W1]?2ZE2E>BBU=P=Q2KB>@W(.U^/DG'#B_Z%)N4BPR M*18;$NL5Q^N*XXVI+[YP23-=[AM:4-.J]\=^X7K$\YR9O3_.J@;FN\'$[\.B M4U@P<:=^T(?%I[ )]MTP[&"]&/TN1G\T1F56/"W8OY @*I'8L*UZ=TE=T*,Z M+UUP)L4BDV*Q(;%>,8*N&,$;N4%@LC@FQ2*38K$AL5YQ)EUQ)J]S@X;F'SV8 MV'-\' [<0 /S"?'PP U.860R(4-OB4]AKN.%4U_O!F$78_A<-^![*)%47[+H MC!7;G40YR U/SG49&!5]Z>HS*1:9%(L-B?4J,^TJ,WTC:YB:+(Y)L6UWOL<1B$[L =]#@R&3SWD09'JJ\*;^ /.IR' Q_K#0(? M[7+P*RQ";9S_PR/&95^Z#HVJ14;58E-J_0*1QP*1-W**5MA4B4RJ14;58E-J M_1(];OKPZ+9EQ"W>D"D@>$ NSX9>H4.%X8>&7B%?70X MDD.9UJ=2 JWXKI#-EK?K[4Z^KNKSGD'_-;Z\P9K^J#HIJP]C'N6;8[;/M$Q9 M(5 &:S64]!C#D>\6%GGIK8S87OJ_+ M-514G\L-")Q92E51@UVU\O5& 5TTH(K[41!D?D69\(I),W:CBHFL#6<";A31 M=551]>,E<+F;>J'W:^"6K=;&#OC%9$-7< ?FP^9&8<_O61:L J&9%$3!SL $T%A\9[/2@3:PK.U.O7 MM,!A^Q?[J\9Y=&9.-&<4SC+$F>(6MB!J.".W4 +;TCD'3:A8D)D41F&0R:76 M8-JQ:T;GC#/#T.:R+&4M<.+Y $J>7H&AC.MG./SA[HH\??R,/"9,D/=K66OD MT!/?H&R[N%]V$E^V$J,')%[6JW,2AV#O6E+1QN<5$U243*R&(?E\C03DC8%*?W$YWZZ6N%>S MI_A";V@)4P^/J0:U!:]X\BC,@A>N4)R(;"\P<1^8^!A[\5X:RO%H]WGD\K:E MR!H*>\5LBS ?AU$X\;=#/UQFV3@)>K,]A4FO,#FJ\!JTOB"4X]V%^P0$;T%2 M*E@P0[C$-'QY<\H[B_S:W3T2VYVK>NYK_UT.?GS(P M)R+;"\RH#\SHWP_]Z'[Z!:,D&1]DJ<,L3(,L=&?IN%RV'P^U4/_FN^=LN=*#:G8ML/SJ#D"?\]9SN.X1.4!UD> M'>2LPRP+1_GX(&?]085FRV,L2E8,-X3#$G'!>8Y9K]J*L^T8N6F*MKDT6 (V MS356Z:"L YKU[%U8%_W%S\!4$L#!!0 ( ER1%E"!LY#WP( !,' M 9 >&PO=V]R:W-H965T\Y)FA66AB]M[-R]]^Y\?IGL ME7XT*:*%ITQ(,_52:[=7OF_B%#-F+M46);U9*YTQ2TN]\*?!Y%G&].\Y"K6?>H%WV%CR36K=AA]-MFR#]V@? MMG>:5GZ-DO ,I>%*@L;UU)L%5_.QBR\"OG+U4RXH97"CQC2@<.+E3#%+^RKV*X'<6ZLRJID4I!Q6?ZSIZH/1PEA>"(AK!+"0G=) M5*B\9I9%$ZWVH%TTH;F'HM0BF\1QZ0[EWFIZRRG/1DO_82J ! M)A-8*&DU]0QFQJ M]VXX6W'!+:>8"Y@).E$F8P2:#5AH3+B%&T7A!LZOT3(N MS!LX R[A2ZIR0PAFXEL2[:C]N!(X+P6&)P0.X9:4I ;>RP23O_-]*K:N.#Q4 M/ ]; 6?YYA)Z00?";MB'A_MK.#][TX+;JSO9*W![IW#C6.62.O7M!*7+3(0ITQO, &K M(%:FFC]\(B^B\6H24\(.CL1:!MI1R][,6JF'=>T MXU9:NGS_&8;QBV$(WHX&_[#Z1T:5(1VPLV,Z;'=Q2L^J=VO'GY5&]QQ>?BYN M:3XXG8O -:5V+T=4KBXMN%Q8M2UL;Z4LF6CQF-)7"[4+H/=KI>QAX0CJ[V#T M!U!+ P04 " ) -,S"RYRK/10+%U9","I!>74]3TO.!UG8YB19::,P1WV"[R$&U"WQ;70([=A24D.3!+.D(#%P!EU M>M.N\;<./PBLY=8W,I7,.;\S@R_IP/%,0D A488!Z[\53(!20Z33^%-S.DU( M ]S^WK!_LK7K6N98PH33GR15V<"Y<% *"UQ2->/KSU#78Q-,.)7V%ZUK7\]! M22D5SVNPSB GK/K'][4.6P#-TP[P:X"_#PB? 00U('AIA+ &A"^-T*T!MG2W MJMT*%V.%AWW!UT@8;\UF/JSZ%JWU(LSLDQLE]"S1.#6ET$[' M,2A,J/R@W6]O8G1\] $=(<+0]XR74E/*OJMT%287-ZDS'E<9^\]D'* K'3*3 M:,I22%OP\6%\= #O:O4:"?V-A&/_(.&H7)ZAH'."?,\/6_*9O #N1Q8>M)7S MNNC3_XZ^(T;0[*? \@6']Q-:")X_[J$U41F:V-VLM\ROT5Q:^^^VU:_XPW9^ MQ5&R636Z==SM>A:"<($> (M38&U';US%C6Q1I_L*>2H1)%9$+G#5[?@" M%2!LTV8)(#ZG9(G-3.OUUGV2]IU.(4GN\YQ4^=+CI1M"=1"].E%^XI MY&YU$'U$E[9U2[T52J:JP]]8F]?!R#;%/?NXTYMT6NRQ?DU4S?^1OGJ*7&&Q M)$PB"@L=RCL[UPF+JKU7 \4+V[_F7.G[PWYF^D4$PCCH^07G:C,P 9HWUO ? M4$L#!!0 ( ER1%E')A+5/P, *T- 9 >&PO=V]R:W-H965TJKQ;DT([]"25F&N6(B!XG3 MH7=(#HY(;!-&:[7U#E;*1(BO=G":#KW ,D*.B;80U#Q6>(R<6R3#XUL) MZE7?M(G;[[?H;YUX(V9"%1X+_HFE>C[T>AZD.*5+KB_$^AV6@AS!1'#E?F%= MQ@8>)$NE158F&P89RXLGO2XW8BLA#.])",N$T/$N/N18GE!-1P,IUB!MM$&S M+TZJRS;D6&[_E;&69I69/#VZP!7F2]R#"TR0K>B$HP*:IW LJ4_K/2' M#C?ZO7[K89;/X!RE('R8<#:CUC][\.9Z8:QD%%ZRS,:)*8S-DIK2PF"? MSPPVG&K,U)C?IQV(G(P%_5,&A7#-I_PF '&[T'8TVE M!N-WA,^'UTQ].7"V: 7]5D#J)#52>^#6QY7P^*DX+'X$F9U*9J?Q_ZVXZXJ[ MVN)>1[<9D, -4MG K%LQZ^[,^]T[WH^C.(YZ]=[O50QZ_]G[<2OHM:):[S=2 M>Z I^I7P_E/Q?O\19))@TT6#7;O_-XBAL[]J8K?5X\G.*J"$VBZ!*(C;_:B^ M!,BFT9+&!O)7-[31#U!+ P04 " )' MO22^]CW'Y]BY-TDMY+,J #1Z*1E7,Z?0NCIW79454!(U$15PL[(2LB3:A'+M MJDH"R1M0R5SL>;%;$LJ=-&GF;F6:B(UFE,.M1&I3ED2^7@(3]).[HN MM)UPTZ0B:[@'_5C=2A.Y/4M.2^"*"HXDK&;.A7\^CVU^D_"#0JT&8V2=+(5X MML%-/G,\*P@89-HR$//:PAP8LT1&QN^.T^FWM,#A^(W]JO%NO"R)@KE@3S37 MQJ[4]F5H_H?RDDB(#-:JN)8@&^_IQ',4?U(UD83SUQ]5%O;IHK[HKRJDIL1RM MA1@O@FAGV\";G@4?Q.UFX2@ZB\?%Q;VX>*^X!Z$),U7:U_$QXJ#'1,8[-WV>U.H:\H58K R.&]R:ES*MH6V@195TX660IN> MU@P+\]&PO=V]R:W-H965T?7)VDBE'0P))$0'^S#M@YO>MA9.G-E.R_;K=YV$K(^T&ZS[TMK./M9]"S' M* (.H384%/\6, #.#1/J^%Z06N6>!K@Z?F&_S,RCF3%5,!#\"YOH><]J6V0" M4YIR?2^6GZ PU#!\H> J^R7+(M:Q2)@J+:("C HB%N?_]+E(Q K K>\ > 7 M^UN 7P#\S&BN++,UI)H&72F61)IH9#.#+#<9&MVPV+S&D9;XE"%.!YD%3DC(SPODY0#$5/27U#&Z9C#&1Z;LQ'%U5LJGT";-3*",)5, M,U#D>(AKC*L3)'@8#J*ZM4;39V@X+@1>Y0&^'P'XZ MJQ'?/26>X]4KX(/]E M&=X&Z.&2,DD>*4^ARDG.TEAS4O>\#2=[]WJCDT;II+'7R6T:LY E6,I8:?A& M9"(D&B,78D?A[:5[[3D\$-F:\V;IO/G?B[)YR&0 M+LI61>GZ7JN,6A/7+L6U]XJ[DD(I\A!CQ\$SC5?8:50>SO:62+^UH7 [Q&U4 MR^N4\CJODW>#&;(QRFB'-J+70I\Y8IGVB19%W'6&CL8;+A'-M,D"8 GT^% MT"\3T\B4C6OP"U!+ P04 " )!)P-KNM)F+9*;UL^O?X=M/%W'-]?25E^V MWJX-/#8O+>IB"R8'A5#UG[]L\[ #B*(#@&@+B"K?M5#E4V98J&9@7A,+D6BJNYX)+=*(NFI'RC95_8E'8_+24PG;&+0AL4 MOR!E5]HBXRIEWRP*2@D-77-AV!.7)5BW]D:MP&+-,ML00*&AS)?611$'?8X MG;#3DT]O:7Q*2).5J,E*5/'&AWC?1-SFJ\9WVO'N))W;)9_#V*.C8L&LP$L^ M?@A[P=5.*V ;X*;-8DW2JTC&PO=V]R:W-H965TI!F0CC*!J&&>,RF([]MUL]':O""B[Q5H,ILHSIUPL4JIP$W>#MPQU? MKJS[$$['.5OB/=J'_%;3+&Q84IZA-%Q)T+B8!.?=LXMNY !^QR/'TFR,P;GR MI-2SF\S321 Y12@PL8Z"T6N-ERB$8R(=OVO2H+'I@)OC-_8K[SPY\\0,7BKQ M@Z=V-0E& :2X8(6P=ZJ\QMJA@>-+E##^"66]-PH@*8Q560TF!1F7U9N]U('8 M ,3Q#D!< V*ONS+D58+KE< M;M# 7 )-UP(0IIQ:$FN,QHFM;2+2EJ\0]IYL>Q KWL,<13WX>%^!H<'1__2 MA.1MXW+9KYLZM.88KQC4\,E$@_/Q&&V%N,3._ MMFGN[4%SO]'<;PWO=U6?F[63NDU=A1]ZO*L:ZVDO&H?K+38'CP+:&M5.\,SK 1.MQ+0H=[T'S2:#[Y8$(K_& CH?'V?(X:DZ-6DU1P MJ9Q**H!:HTQ>@2I0R70:JMR7H;;TMC*_,U2GC>[3O:3W= ^:N]'?%A!],,$U MP6@CP]W.X+\&PO=V]R:W-H965TUN]N+:2],,& UB9GMP%7:'S\GT)B0X)'#2+PI"3S^^GD> M/W8_CM-?XES7(+;XQNI0;UR + M9<3Y:W9S/QYX0>81C6BH,@FB/Q;TAD91IJ3]^&%T/C.F$I)%ZYLM?Z3J@=J87\DCF?\%R;1MX($REXO&ZL?8@ M9LGJDWQ?)V*C 6SM:(#6#="^#?"Z PBSTW> M6D?#DFP87Y30OS+=3@WO6$*2D)$(W"=2B52/D)+@\XLNEW$:4< GX(XP ;Z1 M**7@D1*9"KHR^GA+%6&1/ .?P=>76_#QPQGX %@"_ICQ5))D+/N^TBYF'?GA MVIWKE3MHASM7Z?0<8/@)H "U:IK?V)L_$G$. E37W->)*;*#BNR@7 _ORDX1 M^B=P)2754>NXP ,C(Q8QQ:A\3\D8Z)I\IF$J!$NFN=5O/!'%%]=$,@G^>M = M@'M%8_EW77)6WK3JOB2;ICEI8:71RC6R]60Q;J!4$?7^Q&4?5"G7:J%=8E1QL M%0ZV[ ZF"0O97-=]-E0A%W,NB*)@Q'?XNI)K;W@!80NA+5]KK()>T*[WM5WX MVK;ZJM2R+&/I_G2V'($R7T>ECGME6Y:44Y$BLEH5,D MH7-24['C,G&.Q$J)NR@2=V&MGELJV()D_RP!R?)6%^Q%I6Q1=ZNRJR:XOJJ[ MA5]=JU_WB:(Z6@7R>2>79&XM9*M8T_%P)%:*NU?$W3NI0NZY3)PCL5+B8&!8 M)3BXE-<2FX5ZT85;Q5QC!%$/U14_O#![H@D8 GM4&8.VE\= Y4BOGQ) 9;)]6 MW3OE.5=JY>09HH-6[MESD[ 6V2SFNEU"C9EEFP -/4$[/C7>*, J*55\M9F4 M_30T!>TX]0.S$_P+#ME:V!UJ7(O'8#)HH R>%I5!IUCF2JW\D,1P&3J%098D16J-IS][(6L=:VS:1\^F*(#-N)K/&N M!=<\$:LYWZ@SVWW @0VF83NF_>]6Y4BLGRQ :/BU"PTX)S95: M.7D;!Y.'$QJN><:V?1Y28[/C0 0;1,-V1-MG%C3L= -6Q0 M#9\6JF&GJ.9*K9P\@VK8CFK-RJ97?=^D\DI*U:;ZJ-G?>"LK>R5.;Z]UYQ)$ M=*);!><7>@:)U5MFJQO%Y_F+6B.N%(_SRQDE8RHR _W[A.L=_/HF>_>K>-=O M^!]02P,$% @ "7)$63+M)&W8"P ?(D !D !X;"]W;W)K&ULO9WO<]HX'H?_%0UW<[,[TP;\DZ27,),@:38[[;:3=F]? MW-P+!2O!5V-3VR3-3?_XLXV#$ AAWWZX?;'EA_3(\+&_AB>2N7S.\J_%7,J2 M?%\D:7$UF)?E\MUP6,SFKP;.X/6!N_AQ7M8/#">7 M2_$H/\OR]^6GO+HWW%"B>"'3(LY2DLN'J\&U\XZ/_;I#T^(?L7PNMFZ3^J7< M9]G7^LYM=#48U5LD$SDK:X2H_GF24YDD-:G:CF\M=+ 9L^ZX??N5SIL77[V8 M>U'(:9;\$4?E_&IP/B"1?!"KI+S+GG^1[0L*:MXL2XKF_^2Y;3L:D-FJ*+-% MV[G:@D6?9,\KIU1:MO-'$UO:LW.$[K/>MSF5?/QE6_ MDNLHBNND14)NT_7^6N?^$Y6EB)/BY\MA60U6=QG.6O!T#78/@#WR M(4O+>4%8&LG(T)_:^X>6_L/J16Y>J?OZ2F]<*_#757)&G(LWQ!VY/OG],R4_ M_?5G$N7B.4],+M/.N5X]GQ'-V>-]6(B]E3NK6'Q^FN:S>U^KP^;:*B^8- M_B5+XDB\F-Z/_^]PK,-P;M@,Y[T.9\!P.^:#R,_(R-6WVA*FM]EMO8;K'>"^ MK^Z3[(&TKYB+69S$Y0OY9_/$;2D7Q;\,6WNSIOIF:EW%WQ5+,9-7@ZI,%S)_ MDH/)W_[BA*._F_8/)(PB80P)XR"8EK._R=FWT2?OLZ(@52&2W\LX?:SVZGEU M5BOKY*.J<)D2MO+Z)KR&A0VL/D<_38)1_=_E\&D[.^28# GC()B67;#)+K!F M]T%\CQ>K!4E7B_NJ1%69;14F,E]7IH+\Z%:O;JR#]0UV#0NV@G5W,CW:@B$W MB(-@6E#A)JC0&M1OFX#:TTE!"KD4N:B/N4.AM4U-25E'ZYM4>#2IHRT8D/$(ENEQJIHQ?:-9+Q7%7W7 M6!>[-F3(S>,@F!;0^2:@D?K M[)4_;V0ZKT&'95 :1]'TU%R5FFM-['+MZZ51_H;:EI6W77].G3PH= ME4%I'$730U/*Q;$[%_T8-48&]2A0&H72&)3&430]6*5HG/ TQ1BE,:8H,8'2J-0&H/2.(JFQZT$DG-QFIH+=4M0 M&H72&)3&431]>H#R2ZY5:$RJ0S@NR'J"CBE6>_>^L4)IM*5=;!7DT=EHY 8[ MY1@Z*D?1],"4(7+MALA2CK_(?$$^?^1W1*01F7Z\N[LV1@KU1U :A=(8E,91 M-#UX)9E<]R2%V86*)RB-0FD,2N,HFAZW$D^NU70<+\Q0P02ET9:V4YB=_<(, M54^>(I%$HC4%I'$73XU86RST_336& M6BPHC4)I#$KC*)H>M[)8KGT>U-%J#+554!IM:;O5>+SWZ1GJH5 T?66#\E"> MW4-9RG%'K6$?H/?:K4L<)L[]X[5JBM:FF[6F.O,$-'Y2B:'MC6FC.[A[(4YC^G->SC]DX: MNRX-NS -NS+M%)K+4YK+\T]3KZ$6"TJC4!J#TCB*IL>M+)9GGUMUM%Y#;164 M1EM:/:5;_P/A1>"/=VLVU$6A:'IHRD5Y=A>U5[/OY%.6/-4+V]H55 _M86N, M%&JJH#0*I3$HC:-H>NA*:'GCTQ1FJ-""TBB4QJ TCJ+I<2NAY=FG97U4:R#) M?997_:M;QOG*=E#O@ W+X$;&^7*=6S+H%G(430]&J2?/KIY>/Q_7:_7?EME; M=G/[A5Z3>F%Q9HP'JJ):FN-LO>O>6; ;39=6#+IE'$73+ZF@!)-O%TRO?XUM M;,.@V<11-ST=Y(-\^ MK^FZ6<;=7##A2<2)N$\DF66+17SP"Z0=V#L29Z]:><'8?.6+SDT9=!LYBJ9' MI-R-;W MB!(T?I_%;T>*\A\R28KJ&,T?,W(CTJ]OR&]GUV?&W*!>!TJC4!J#TCB*IN\- MROSXIUDQYT.=#Y1&H30&I7$438];.1_?/HGIM1IO! "9B6JX V+/#NL=\OYR M.._U,&W4:.HNGQ*$?CHQR-'=0[&N@T(RB-06G<[^"8]/"4Q_&/7$JI MSXFU/IG6C>O+M^92),:,H:('2J-0&H/2.(JF7\]1B:/@-%=@"J#&"$JC4!J# MTCB*IL>M/%1@]U#]3JEV6.^0]\62:SZC=F[)H%O(430]'&6@ KN!4A?MK)_9 MOB3D#^UJT,:HH'ZII5DOIGJT"8-N$T?1]'"4"0IZSA2:BE1$L4AW2FK^ M+<<.ZATP5"I!:0Q*XRUM^VQ_X.M-H$Q18)\C=)M&JZ+,8Y'47VQDNI+D)DLC M"4*7HT%I'$73$U1"*;0+I>:7X.*T^B"\:GYCJ93YPIB= M'1.0%RERTV?GJ;UG[RBA$Y&@-(ZBZ5$J_13:]5/O\V[?=1'V\7L7::B-@M(8 ME,91-'V_4#8J/(V-"J$V"DJC4!J#TCB*IL>M;%38[0?8.IZ3]\V*;UZD,+6/ MVSM!J&Z"TCB*IB>X]<-L=C/5^9QLQ]C.R5 #!:4Q*(VC:'J4RD"%]OE)?^Z< MO-OX+9E>4^.> !564!J%TAB4QE$T?>]0PBH\S3690JC0@M(HE,:@-(ZBZ7$K M,19V6QC7\U+Z/Z7:MY<%^1])M)- M*U/8]H'['M%0&H72&)3&431]AU#^:WR::S>-H;.FH#0*I3$HC:-H>MQ*EHWM MEJM? 6]AI@*^6\$-3?=^5?=H$V;?^M[O]2ELUEC9K+'=9G7]$G0$XS1?@HQ' M#=0_06D,2N,HFIZD\D]CJ_#8FK,8Y>(YRI[3>OK;ZVUCIFN@9>+@U#YF[_2@ M.@E*XRC:.KUA,9>RI*(4D\N%S!_EM%D1-ZO7GE\-ZDJX>93D\J'^N9QWU^Y@ MN/&ULK59=;YLP M%/TK%INF5MH*F*^T2Y#:D&E[F%:U^WB8]N# 34 %.[--T_W[V4!I FX4;7U) ML#GG7)][;7.G6\;O1 X@T4-54C&SV*%-2*I\W<-8^GK)9E0>&:(U%7%>%_KJ!DVYGE6H\3-\4Z MEWK"CJ<;LH9;D-\VUUR-[%XE*RJ@HF 4<5C-K$OW8C'1^ ;PO8"MV'E&VLF2 ML3L]^)3-+$YE"66D@MXW>G:?4A-7'W^5']0^-=>5D2 7-6 M_B@RF<^LB84R6)&ZE#=L^Q$Z/X'62UDIFE^T;;&1BIC60K*J(ZMQ5=#VGSQT M>=@A*!TS 7<$/"3XSQ"\CN =&\'O"/ZQ$8*.T%BW6^]-XA(B23SE;(NX1BLU M_=!DOV&K?!54[Y-;R=7;0O%DG,!2HG?H5NV_K"X!L17Z1"5P$!(M'M1N%(!. M$I"D*,6I GZ[3=#)ZU/T&A44?\GP^EWA-7K>H5V1%"(MF:@YH)^72R&Y.M2_3)5NM7RSEK[H+L2& MI#"SU$TF@-^#%;]YY8;.>U.:7U(L>4FQQ0N)[17$[POB'U*/^S.I[M9,%<=4 MAE8A;!3TY^$^=CWO?&K?[Z9W#,)AZ.Z#$@,H<+U]T&(,"MSH26G/9M#;#(ZS MR8D$)+9D@];J6V=RVPH%.^'?82\' METU3-)B_MZ&?"UP45J(25"N6<1:HLO&WOVH%DFZ9_ M63*INJ'F,5<=,7 -4.]7C,G'@0[0]]CQ7U!+ P04 " )5!1C8 M&YND>'_>[XX\)D.)S%%>,R2A=^[%&G"]58P24^:C!-53']Y1Z%.BRC470:^,3+ MG74#<;JH68E/:#_7CYIZ<:M2\ JEX4J"QNTR6HWNUK=NOI_P!\>#.6N#(\F4 M>G:=#\4R&CJ'4&!NG0*COSVN40@G1&[\<]2,VB6=X7G[I/[.LQ-+Q@RNE?B3 M%W:WC.81%+AEC;"?U.$]'GFF3B]7POA?.!SG#B/(&V-5=30F#RHNPS][.<;A MS"!)+A@D1X/D.X/QY(+!^&@P]J#!,X^U89:E"ZT.H-UL4G,-'QMO331O_W17@L,BD>Q%7#NY,S7)< M1G3>#>H]1NG//XUFPU^[HO(_B7T3CTD;CTF?>OJ.A&'/1(.@ME"C]OM-TF"F M9-&YN7H%KV4/8C,OYLK@/AU155S$^PZF:JD^HK6HC4M3KI$J!-!-82QM8MJ_ M;X%5JOG^A 2P7MEKP8+8*#DCFR2#:3?:38MVTXOVV.A\1Q<$J$SPTE>[SA3U MJEQ+$L3FYSMO,DBZ0>8MR+P7Y/>FRE"[%$FZ5>FN?D:J,Y:]G%+&2HT8JL^_ MERM;H.U=ZEK:^0\;\@+J;8MZVXNZ\OL-V('I(IPL97?$7C-MOW3AW/YPTI.O MYSPXV;OBM84P/KNI*]2E?\ 8R)W;X=)N1]LWTLH_#>*OT\,#ZX'IDDL# K=D M.AS<4!QU>+2$CE6UO_D5X9L[>N>A=A/H^U8I>^JX!=J78_H?4$L#!!0 M ( ER1%G(Z)-TLP( (L& 9 >&PO=V]R:W-H965T^*32RM K*A1\&0>3GC$LO'E=[CSH>J](*+O%1@RGSG.E?,Q1J-_%Z MWF'CB6\RZS;\>%RP#2[1/A>/FBR_54EYCM)P)4'C>N)->_>SD?.O'+YSW)FC M-;A,5DJ]..-+.O$"!X0"$^L4&/UM<8Y"."'"^-EH>NV1+O!X?5#_6.5.N:R8 MP;D2/WAJLXEWYT&*:U8*^Z1VG[')9^CT$B5,]0N[QC?P("F-57D33 0YE_4_ MVS=U. H(PQ,!81,05MSU017E@ED6C[7:@7;>I.865:I5-,%QZ9JRM)J>E'P_@SHH 4=G%./9TPPF2 P"RO<<"FI MSZZ;!6JNTB[:6B^J]-SMWL9AKQ^%8W_;@3%L,89G,:9IRMV%-)!D3&\P!:L@ M4:9Y 7%/\\9T5Z\6'A[Q#-]%HVZ#;N11BW2Z'\;A521LRT:O6Y1,!H,_@'PCP9$CE1T-P:I M :J4MIX5[6X[::?U@/GC7H_I!^H9IV()7%-H<#NBY'4]^FK#JJ(:-RME:7A5 MRXR^%JB= SU?*V4/ACN@_?[$OP%02P,$% @ "7)$6:9C,NY( P ; L M !D !X;"]W;W)K&ULM59?;],P$/\J5I@02+#$ M:9NUHXVT=D-,8C"M&SP@'MSDVEI+[&([[?;M.2=9&EB2!\I>FMCQ[\_9Y^N- M=U+=ZS6 (0]I(O3$61NS.75=':TA9?I8;D#@EZ54*3,X5"M7;Q2P. >EB>M[ M7N"FC LG'.=SURHIY#(W<2ASM/$#5^MC9UPP_&&K6 . MYFYSK7#D5BPQ3T%H+@51L)PX9_1T2@,+R%=\X[#3M7=B0UE(>6\'E_'$\:PC M2" REH+A8PLS2!++A#Y^E:1.I6F!]?0[C\UZX@P=$L.2 M98FYD;M/4 8TL'R13'3^2W;E6L\A4::-3$LP.DBY*)[LH=R(&L#W6P!^"?!S MWX50[O*<&1:.E=P195RISH_ K1YP)9S)-N<%M-IHP$9.9 M%(:+%8[)9\X6/.&&@R;OR1SS(NP:#,D:G1=\3W_#ZYFY^3 M-T=O.WA[U3[W"^^EB&0*Y)8][+B0_/N,Z MZ@V+8.+@E=2@MN"$KU_1P/O08;E?6>YWL8?72D8 L<;+%P%>G;C)8$$1Y!2V M FS#D3_PQNZV07A0"0\ZA<]A"4IA,D52F\:D*/"#FJH?] ;-JD&E&G2J?L$2 MN"C2N4DR>"89!+1%\J22/.F4Q&3#&VY3;= DV0G^Q\,?5M:&+Y&OPQ>P/*HL MCP[/U]'S8_0&?O,Q4F]?1+T#,[8DJ MCV/T6X5KUIHYFF,)1.FZ(6J MV:J5/"L:J/WRH@^]8FK%L4=)8(E0[_@$ U9%:U<,C-SD[=1"&FS.\M&PO=V]R:W-H965TT"KZ-@>ICVXR36Q<.S,=AKV[V<[;99!J=A+X[/OON^[L^^:M$(^JA)1 MPU/%N)IYI=;UA>^KK,2*J#-1(S0:2(:S2C'A0355!61O^?(1#OS1MYNXYX6I;8;?IK4I, EZH=Z(8WE]R@Y MK9 K*CA(7,^\R]'%?&K]G<,WBJT:K,%FLA+BT1J?\YD76$'(,-,6@9C/!J^0 M,0MD9/S:8GH]I0TXO;?"*+ MEPFFW"^TG6\<>I U2HMJ&VP45)1W7_*TK<,@('PM(-P&A$YW1^147A--TD2* M%J3U-FAVX5)UT48$9PD**0I(*OJP8+8BM MG(+C:]2$,G4"1T Y?"U%HPC/5>)K(\$"^=F6;M[1A:_0Q7 GN"X5?.(YYO_& M^T9ZKS_CT7XA<2\D?K,0A5JSY^^OXXY?<'\(@R@8 M[R>?]N33M]X%\OSP+4Q?W,+Y9!P]X_<'+5^A+-Q@4Y")ANNN^_O=?G9>=B/C MKWLW>.^(-*]# <.U"0W.IB9YV0VSSM"B=@-D);091VY9FOF/TCJ8\[40>F=8 M@OX?)?T#4$L#!!0 ( ER1%G35&PO=V]R:W-H M965T&(FVB$BB2E)VNU]?4I)56Y&UIM"+35+W'-YS^*&K^8'Q9Y$0(N%SEN9B M8212%K>F*:*$9%A,6$%R]63+>(:EZO*=*0I.<%R!LM2T$?+-#-/<6,ZKL7N^ MG+-2IC0G]QQ$F668?UF1E!T6AF4F;+$M., MY(*R'#C9+HP[ZS:TD 94$7]1?&B!. XND'V W [@+<"P"G 3A= M@'\!X#8 MW*FEE+Y$&*)EW/.#L!UM&+3CA@ 32'QYQ*<:,&5?O/ MA)4"Y[&8FU)EI'G-J)E]5<]N7YC=AX\LEXF MWE,XAY\.(RWO $"4UG1^F$? M_5C9@XQWY6X"CG4#-K+=GH36WP&W_0KN].D9AG\H\PF@WMG/U#CMZCH5GW.! M;YUB(8!M82-9] S__*&>PWM),O%OWV+59&X_F;Z!;D6!([(PU!4C"-\38_GS M3Y:/?NLS:DRR<"2R,Q/=UD1WB'T9TCV-B=K?4&#:MTE7-=ZO\/JBW2\M-+6M MN;D_-:0ORO6#\ZAP,)'WTK_O$UY3!B2PT\3K2 M^V+<:4?Y8&X_J-QOE?N#RJMK$!Y(4?(H4:\1N.=LQW'6)WB0Z;6G9$RR<"2R M,P>#UL%@S*LF&-/$,PU?3>2<'RW8M M+W ZYZ\G+)C-++]S E^&699G3=$,M8%GLF:MK-GK9-W 'JWE+>A9" M'4$]42K/3E3X,LI%4P]=4&.A;S43&M3S0'1%3?/=L2+"I4P8I_^1&"2#IU.M M\?\M83/7^>(XUDR)?B%[.*_7[O2QV&H7S9,B-"-\5Q7S B)6YK*NO]K1]H/A MKBJ3.^,KZW9=E_W?:.JOD(^8[V@N("5;18DF@3*-UX5]W9&LJ$K=)R95X5PU M$_4Q1+@.4,^WC,EC1T_0?EXMOP)02P,$% @ "7)$67'DOIO, P /A( M !D !X;"]W;W)K&ULQ5AM;]LV$/XKA#H4+;!& M(OV:U#9@IZ_ ,ACQEGX8^H&6SC81B51)RDZ _?B1E"*YFBZ.=D/=J Z#10Y9R-0XV6N=78:CB#61478@7DY$H=,HXS"521991^3B#5.S& 0Z>)F[9>J/M1#@9 MY70-"]!_YG-I1F'M)6$9<,4$1Q)6XV"*KV:$6 .WXX[!3NW=(YO*4HA[._B< MC(/((H(48FU=4'/9PC6DJ?5D<'RKG 9U3&NX?__D_8-+WB2SI JN1?J%)7HS M#H8!2F!%BU3?BMTGJ!+J67^Q2)7[1;MJ;Q2@N%!:9)6Q09 Q7E[I0U6(/8,. M.6! *@-7B+ ,Y%"^HYI.1E+LD+2[C3=[XU)UU@8K+84 EO M9B:O!%V+S#1;45>N-VAA&) 4*2"Q0@LMXONV;=,=E8E"'R7EVJQ1GJ OKA)F M,-V"-)TM%Y&!!^@#91+=T;0 ].H=:,I2]7H4:I.(A1/&%>A9"9H< -U'-X+K MC4+O>0+)]_:A*4!=!?)4A1GQ.IP6ZPO4P;\B$I$N^@6%2-FZJ.KBB="IZ]QQ M$;H'(MR"TI+%MBS*UA+1LG"V8/+Y6L&95FUE\<:P#_"5RFD,X\ \H0KD%H+) MRQ>X'[WU9-"M,^@Z[QTO4Y8M%)"FOVLPCZI&RT>TOV].']VT8PGZZS?C$GW6 MD*FO;=EU3Y!=K\ZNY^W/[T6V!&FI7C'Z%>-5]U^COUMY4((NW?:<6_L*W$XP M'D:79!1N6^#T:SA]+YS_^@P9D(5*4&Z@.X@6:T/?-KQEW,$>WCZYZ'7;X0YJ MN(.?S&Z#\X9QEA59&TAOM".9,*QS&9Z9Y\,39'=99W?I[=2=Z0;C:\L8)I(V M='Y[@AZ!2M\;$4>-]$0G8 U].,0:?[@C"XOWE!2?F3@5@)^<(&D2)/^3.S]P MT/DQ>1H]Q7Y!G8-T_TEY#.7;[K!J^CT=6[9&-_&YA1.?0CEQ(YWX1-J)_RV> MG0'NX78QPHUXXG.I)VZ5S\'P .)&/[%?0 ^PV:^2?I_'MKW127QNH<2G4$K< M2"7V:]T?5*[-=S&OZ9T_[U([1TJON+-'DJB=(*312N+72@]!#@NBW^>1]2.- M())S"R(YA2"21A")7\^.)$CE]3N"//]>"/<^Z3,P8>S!A4*Q*+@NO^[KV?IP M9%H>"33;RY.5&X.2<8526!G3Z&)@WK>R/*PH!UKD[H!@*;06F;O= $U V@UF M?26$?AK8 /61T>0?4$L#!!0 ( ER1%DG)11GD , +D/ 9 >&PO M=V]R:W-H965TQFMC,=J#=KY_MI!DI642W2/L"?KE[[NXYQ^<;'QB_%0F M1'=92L7$2J3<7=JVB!+(L+A@.Z!J9\-XAJ6:\JTM=AQP;)2RU'8=)[ S3*@U M'9NU:SX=LURFA,(U1R+/,LSOYY"RP\3J60\+-V2;2+U@3\<[O(45R,^[:ZYF M=H42DPRH((PB#IN)->M=+D=:W@A\(7 01V.D(UDS=JLG5_'$/Q _H[$[N*98T%+%CZE<0RF5A#"\6PP7DJ;]CA M/93Q]#5>Q%)A?M&AE'4L%.5"LJQ45AYDA!;_^*[DX4A!X30KN*6"^UC!_X." M5RIXYUKP2P7_7 O]4L&$;A>Q&^)"+/%TS-D!<2VMT/3 L&^T%5^$ZG.RDESM M$J4GIZL$N'_PPD,?&96)0$L:0]R@'[;K M!RWZMF*DHL5]H&7NM@+.\NT%\GJOD>NX?H,_BS/4W<"H>TWA_)OUY5];KY'A M56?$,WA>ZQE9GYZ1&>>8;D%=&Q*M[]&QW#6^-\NS ^8Q^O9!0:(K"9GXWG0Z M"OM^LWU]55Z*'8Y@8JF[4 #?@S5]\:P7.&^;4M,E6-@EV+(CL%H2_2J)?AMZ M+8G1<1+A3H^A*2T%8F 0=<'93]V1XXSM_3'=#4+>8Z'P5*@?^&Y=:'DJY/M# MKQ*JA=VOPNZWAOV)275_Y91#Q+:4_'PB(T84VL M]$_<[ U.(EZTNO744WB6R65')FL\!Q7/02O/-XHT3B)-W$JRZ+:)N%:$IW[E M78*%78(M.P*KI6%0I6'PGZ_J09=)[!(L[!)LV1%8+8G#*HG#UF_IJWG=JLS@ M/7#U6$<[X(0U/8OFK4!/S4:78&%[B*Z/,O-B:^*^(S]JW(\J[D=GU(L-)ASM M<9H#8INB$@A4U(6F++1"/C4+78*%HY/",0Q.ZD9'%@N^[:->) .^-4V@4'4V MI[)X=$H%A/)=J836C.I^BHS3%1O#5P+J/T-8_)AH@U4W?KT%U!+ P04 " ) M:R_?K93DBA M2C.V\D)\.=_W^9QCSO%@P_B36 )(M,TS*H;64LJB;]LB7D*.18<50-7.@O$< M2S7EJ2T*#C@QH#RS/<<)[!P3:H4#LW;'PP%;R8Q0N.-(K/(<\U]CR-AF:+G6 M;N&>I$NI%^QP4. 4'D ^%G=R:)2$Y4$$811P60VOD]F<];6\,OA+8B+TQ MTI[,&7O2DYMD:#GZ0)!!+#4#5I\U3"#+-)$ZQL^*TZHE-7!_O&.?&=^5+W,L M8,*R;R21RZ%U9:$$%GB5R7NV^0R5/^: ,T M_.)M%8<]@.)I!G@5P'L)Z+X"\"N ?ZQ"MP)TCU7H58#>L8"@ @0F]F6P3*0C M+'$XX&R#N+96;'I@TF70*L"$ZHOU(+G:)0HGPQL:LQS0%[P%@IS]KA MMYAWD.,UJ1_$TJ\OCV_X_+]>'A01$6=,K#B@[Z.YD%R5C!]-UZ5D[#8SZC+: M%P6.86BI.BF K\$*W[]S ^=34ZY.21:=DFQZ2K+9B<@.[5D>ZU1OJ1IW@1?A:Y?[UWW&$X/24@K,FP>>DEA&V]QI?#CPU M3Q2!8K:BLBQC]6K]"AJ9YO]B?>SV)V[#>N3VI^4CYYF^?'*I6IH2*E &"R7E M="[5>7GYC"DGDA6F[&ULK59=CYLX%/TK%I6J5MH.@022F2:1)A^K]J'2J+.[?5CUP8%+L 9LUC9A M^N_WVC T(6YVVIV7!,PYY_H>7]MWW@CYH'( 31[+@JN%EVM=W?B^2G(HJ;H2 M%7#\D@E94HVO O!HTZ>B8FDYT0#^;E8[KP1F9"4$"BC0+%OP.LH2B,$$[CGT[3ZT,:XO'S MD_KO-G?,94<5K$7QA:4Z7W@SCZ20T;K0GT7S ;I\(J.7B$+97])TV)%'DEII M479DG$')>/M/'SL?C@BHXR:$'2$<$B8_((P[POBY$28=8?+<"%%'L*G[;>[6 MN W5=#F7HB'2H%'-/%CW+1O]8MS4R;V6^)4A3R^W5'+&]XI4(,E]3B60-QO0 ME!7J+7E'E!E13W^,DS]R42O*4S7W-88W(G[2A5JUH<(?A!J33X+K7)$M3R%U M\#>7^?$%OH]I][F'3[FOPHN"M_7^BHR#WT@X"B>.^:R?00]C2Q^[TOE_T;>_ M'/W$C'%?"&.K-_ZO0KCK"^'OVYW2$K?R5]=BMW(3MYPYWFY411-8>'A^*9 ' M\):O7P7QZ+W+Z9<4V[RDV/:%Q$[69-*OR>22^G)%%4L('&]1NQ/)ZU>S, C> MD\:>@Y 2>@")QSI)1%GB\=OM5[P7E,;-BFS7"K;!(QO'91A,XW#N'XZ7 MQHD:S4Y1&R?J>GR*VKI0L^ [ZL2EJ'C?@!'D$F3(&!XVF;/!!1F2O,>^;QTZ1Y@3I^+>J?BB4QM6U,:,7Z\HXUPE-'#-:/%SU1:[UGX:#=QSH:Z' M-;EQHF8#K:T#%0:CR.WAM/=P>M'#>ULCM*$R55@\25'C940R*4JB<[2+%DE= M4-L$844YG-Y!0FNL-X/N*K6AQEG-WJ5F@;!Q(F]L %))EIBJ!:J1KW/*^W7! MKNX!V\@6@9&,7+L0;UWN3QV5.[#^'!(-()MS2#PT_1PR'>YO_ZA=*4'N;9^H ML)IJKML+JQ_M6]%;VX$-QE?!S3IPC&^P=6T[S>_R;=_[B&PO=V]R:W-H965TZAZ,# !:XU-;1.V_[[^ M )I*22[@&<][\V:8(>F%?%8U@$8O#>,J#6JMVS7&JJBA(6HF6N#FYBAD0[0Q M9855*X&4#M0P'(7A"C>$\B!+G&\GLT1TFE$..XE4US1$_MD"$WT:S(/1L:=5 MK:T#9TE+*CB _M;NI+'PQ%+2!KBB@B,)QS38S-?;V,:[@.\4>G5V1K:27(AG M:SR6:1!:0<"@T):!F-<)[H$Q2V1D_!XX@RFE!9Z?1_;/KG932TX4W OV@Y:Z M3H,/ 2KA2#JF]Z+_ D,]2\M7"*;<$_4^=GD7H*)36C0#V"AH*/=O\C+TX0P0 M15< T0"(G&Z?R*E\()IDB10]DC;:L-F#*]6AC3C*[4W37SS )I0IMXF6)OLE@,70Z:MSQ1=R;1" M3X+K6J%/O(3R?SPVJB?IT2A]&]TDW'35#"WF[U 41C%27O\-WL74DH7C75SA M'3NQAU9(37F%?FYRI:49H%^7RO9L\64VNU1KU9("TL!LC0)Y@B![_6J^"C_> MT!I/6N-;[-G7KLE!(G$T"V+5DIS!V IU2:RG6SHZN["G+$[PZ5P!/ANF!F3E M5D:A0G1<^[F:O--6;OPP_@OW*_U$9$6Y0@R.!AK.[DQ>Z=?$&UJT;C1SH1!@ QS( M !D !X;"]W;W)K&ULM9MM;]LV$,>_"N$50PHL MM4CJ,7,,)":[%6BQHEZWUZK-V$+UX$ETT@+[\*-D11)I6K#3VYM$DH\_\7C4 M^?XF-7LJRJ_55@B)OF5I7MU.ME+N;J;3:K4565R]*78B5Y\\%&462W5:;J;5 MKA3QNFF4I5/B./XTBY-\,I\UUSZ6\UFQEVF2BX\EJO99%I??[T5:/-U.\.3Y MPJ=DLY7UA>E\MHLW8BGDY]W'4IU-.\HZR41>)46.2O%P.[G#-YQZ=8/&XJ]$ M/%6#8U2[\J4HOM8G[]:W$Z?ND4C%2M:(6/U[% N1IC5)]>.?%CKI[EDW'!X_ MT]\VSBMGOL256!3IW\E:;F\GX02MQ4.\3^6GXNEWT3K4='!5I%7S%SVUMLX$ MK?:5++*VL>I!EN2'__&W=B 'WH"T#8C9P#W1@+8-Z+EW<-L&[KEW\-H& MC>O3@^_-P+%8QO-963RALK96M/J@&?VFM1JO)*\GRE*6ZM-$M9/S^WVEKE05 M6HJ-BK]$-05=HZ6:D>M]*E#Q@)9Q*BH4YVOTQTZ4L4SR#7J7KXI,H*OW156] M1E=,R#A)U=$U^KQDZ.K5:_0*)3GZC;?W1]I/U2AU0T6>A^J>C +O]ILWB.)?$'&(:^G/XHSF MQ&^:4YL[/W9W_N*[:X-!NWE#&QX]P>OG1-'-B>0P)]9J!MG"?0"Z=F"=$&^J M7;P2MQ.5\2I1/HK)_.>?L._\:AMK2!B#A'$@F!85MXN*.T:?/S_$N?J&J>H( MV>)P0/@-HOX>>9Q3E[BN,YL^#D?88N91/_!T,W9LY@6?X>S<&KM,Y+-N\/0&_0$1='ON'5PF+E>!XU?#^V"BEU3=>/K0*7 M$L?NN=]Y[H]Z_BZ7HJQ:]T6:J*^&N/[FM49\%'7IDP<)8Y P#@33XA%T\0B@ M\V$ &15(&(.$<2"8%I6PBTKXX_DP/'H^K_W0QT9&L%AA)Z*&&;.9>:YGF'&+ M&2'N(&MJ[D:=N]&HNW?E:IM(58+ORSA%;\LXJZ?A\GLE169U?11WZ12$A#%( M& >":3'!3E]A.]"IH24"!0:4QD!I'(JFQV:@?C!T =$2A\\N#K!KY@N+&<&. M;U19S&)&/3<(C'QA,7.QXWCV?(%)[S]Y><9 _PX$7SM2=B$W>I.+IRLDC8'2 M.!1-#U[4,+7FXF'JF^++9>6'HF.6& MQ8X$KD>(F3^.[2@AD4]/))!>@.%Q!:8GD-_2N++[/4JY>!9"TA@HC4/1]'CT MLA#[X!D"5!Z"TA@HC4/1]-CT$A&/:IT7%1N!M8H(S71Q;(8#E[IFMC@VHR'V M(C-96,QHY)TJ-GHQAL?5F"57G%]BC*(OGJ20- 9*XU T/4B]A,01> (!E9&@ M- 9*XU T??VA5Y)D5 V=5V*TC.'3&SG8K!P6-C/7B8P?+YG%# =^Z!BIA=OL M(DRB$S_PDEZAD7&%IB>-I1K39'7"\5'0I=,0E,9 :1R*IH>D%XV$0*<( JH0 M06D,E,:A:'IL>H5(1E7.2VJ,ECA\='U,345BL:(>CLQT<6R%<6 NG'"+&8G( M"3%">@E&QB68/5><76.,TR^>I) T!DKC4#0]3KUH)!YX @$5D* T!DKC4#0] M-KV ).,+B^?5&/YQ\1 ZV)0E%K,P='Q3EEC,F%& MQH79^[CCUXHDA \/X#J0U : Z5Q M*)H>FUX?DO$UQI<4&-%QZ1!$U$P6QU:N[YM;+BQ6H4_-7S L5DH!G=IM0GL! M1L<%F"51G%U=C*,OWO\$NJ8'2N-0-#U(O6*D&#I[4%#I"$ICH#0.1=-CTTM' M.K[>>%9UT3+T>B"DQIK&PF)&J&]6#/!/LEQ0;8H MREVA9J$X;*"56U%:?8;='0F[/1)V?^3_L4Q'>XU(7?#L *H+06D,E,:A:'IL M>EU(P;=SML3AQM)K'_N!F2NL9L2L+FQF]7*+N9QJM:.!9V:+Z6!C?B94[5"_ M$5&A5;'/Y6&O=7>U>^OBKGG7P+A^CV\6V'*=X1M^>*>BQQ]>\?B@2I4DKU J M'M2MG#>!ZG)Y>&OB<"*+7?-:P)="RB)K#K<.9S[;!FCTP_GE[ MEXLKIZ6$4<+2(LI2E+/5Y>#*O:">7R94$;]%;%\#H;E MC%C,EKQ$!.+7$UNP."Y)8AY_-]!!.V:9>/CZA?Y3M7BQF,>@8(LL_CT*^>9R M,!V@D*V"7Z1;T;>GDV]*I.?TVR,_0$.O2E6)X[<[R*I[7:VB/%7$P__X[UQ_^J*L[)(Q PB@0 M3%%HU"HT,M%?*<2>Q8=/P71:&#&V6M0POX*5'V-/\ZD_G#E/AR6&') "P902 MC]L2CXTEOLNSO\1'(A(?:CQ:?=45UPBP+2XDC$#"*!!,4<%O5?!/V8I\2(4@ M80021H%@BD*35J$)3"N:=+J'*\[$:OM8U$'C@R#LO0XB&M)H\CJ*&J=]9%&F M;5&F-LT#_5MOW6R%'H*8:4]<1J#M5H6$$4@8!8(IJIRWJIR?LIF<0RH$"2.0 M, H$4Q1RA]+4#&':2<,Y;!7GG7:B"7+'G7YBGI)M_:!H:@$/7*%KV7H>A)<7 MQ?R(UBQEN;"'Y:8/0F%)(U'KH+3[+X76>T'C@+8;'Y1&0&D4BJ9*AZ5T^)3] MJ:%#Z01)(Z T"D53=9+VV#5Z.XL>Y77:3^GO?0*(_W"J'D)1Y8(2]>*S:[U*DUW01S](XI4E@45 MP9,HD?;P8B;9;EM0&@&ET8:F?$_G'4JG%ELZ7&SK<)MN+EY].C@_/@J[NXKT M1TCS$-8J@'I:4!J%HJEB24^+3^II,:BG!:414!J%HJDZ24^+S9[6LLGCKFGU M.U^L+7I%D5Y1U#S_8^LC/2NV]:RRZ?S*-RQ_7;A-D*_UWZ>91[+>TZ#V%91& MH6BJ9M*^XI/:5PQJ7T%I!)1&H6BJ3M*^8E#[BKN64]=[^D217E'4//]CZR/M M*[:VK\'S6_;5S++>M:#V%91&H6BJ*M*^XI/:5PQJ7T%I!)1&H6BJ3M*^8E#[ MBC6&T^_:UWYAI%\8-2_AR!)YTKYZ8/;53++^[SY0^PI*HY[&OH[>M*^>M*^> MM7VMN[F%?34/8:T"J'T%I5$HFBJ6M*_>2>VK!VI?06D$E$:A:*I.!_^Q#&I? MO:[EG'1[?*\HTBN*FN=_;'VD??6L[6O;="SMJWDDZST-:E]!:12*IFHF[:MW M4OOJ@=I74!H!I5$HFJJ3M*\>J'UM:(?GBDG7OO:*(KVBJ'G^MO5Q#AY92ICH M$N6S8H58[B[E]=-+[=WV>;2KZBDL1X;7#[/=BB83I06*V4JD#L\F0LB\?CZL MON#9MGH ZC'C/$NJEQL6A"PO \3[JRSC+Q?E .U3>O/_ %!+ P04 " ) MY<4% %+P &0 'AL+W=O/$MM0TD[HH66+$@:;'K^D'/)P=4_$MVW$NT?YYHC[9I"(.I'H46R_;"QZLBTYQY!'?'WEQ$":#Q:QX[TXL9NE!1F'"[P3* M#G$/+]Q'VYW,G_#6\SVP98_KK,.8)UF8)DCP MS7QP@Z^7;)IW*%K\$?)CUGB-\JD\INFW_.'3>C[P\XAXQ%^Y%&4 M*ZDX_JE$!_68>@XPOT^C/<"UW\\%D@-9\$QPB>9\>/_)J M0L-<;Y5&6?$7'[ ZDZD)=VH%4' M6DRTC*R8UOM !HN92(](Y*V56OZBR$W16\TF3/)E?)!"?1JJ?G)QSS,I#BMY M$&&R1;\@\WF99C)#;]YS&811]E9]_O7A/7KSZBUZA<($?=FEARQ(UMG,DRJ6 M7-%;5>/>EN.2,^-2]#E-Y"Y#OR9KON[HO[3W'UGZ>RH'=2+(O1%ZY*O U*)SI>'BR>._OI-M4>?)(^SO[N2 M7XJS;O%\:[C.]L&*SP?JNU\H#A:O?\(C_UW7S('$C#RP.@_,IK[XDLH@4OM% M,QNK72"VO--TI=BH$,MWL*<%QN/IS'MJSJ?=B% ?UXV,.(=UG$-[G%RH;V=0 M;$V//.&;4'8&:%5Q71@@,6/"HWK"HSX-.H+, Y"8D8=QG8XQ- M3OS9;C,9LVY[3NHH)]8HEVJS%.HG$\F&3U?Y[MX5I%7+=7& Q(QI3^MI3_LT MZ10R#T!B1AZPKW_F?4B;5FI-#V+_U*<7&IF1-H $6R/]7>ZX<(C4JN:Z2%!J MYMR)GCOITZ^5.E0N@-3,7&@ PE:N<'8L;9EQ1.BI8]N-,,73,Y;5C(+MD'(C M5KM0\CQ*%?('$<1YL \_LGRE.H.UZCDO%)":.7M-/GC8JVE!D0A*S/R U,RD:D_"D M5R^#DA.4FID+S4[8BB3.7IZV;$K&^-3+[4;#,>VV,M%P0^QP<\G*;O1K'\QU M$:'4S-1HFB*X3T,34+J"4C-SH>F*6(G%U="5FIV!+S0R(]7L0^SL<\G0CHQL M'\UY%?LX#R(:M@CKU=&@Z 6E9N9"HQ>Y<.KDZ.AA>_>EXU-'MQMA0L_MT9J, MB)V,3$L_J%2$JS-1@IX-0:F9T]:41<:]NA44KJ#4S%QHN"+V0RA7MT[:0#%L M[;_V1F:D&GV('7VZS>H Q79]YW7KX^R(:KRB?J^U"%">@E(SH8$I6;. M6H,4[;4 1T$Q"DK-O,B@,8J!EN!8N[HV/+W(T%& (V>J&4PC#K,C3J=3'=C7 M+N^Z:%!J9C(T1;%>*W(,E)Z@U,Q<:'IBH!4YUBZVM0S<48\[:^#&E2$[V9PS ML!OXV@=Q7KH^#HJ8QBC6:XV.@=(3E)J9"TU/#+1&Q]KEMU/PM38QH]1;E!?'/*M0PR5#$-ZJK?S56WQY1 MWKDN'V2Z+ZXM/Z92IG'Q#-1=Y _7Y)DWE\T,^0'WS??$?4$L#!!0 ( M ER1%E7BYTGD@0 $<9 9 >&PO=V]R:W-H965T>V#3,=V*+"W( P-\F^>8 MOTIV?.\U4%">*/VF+KXL)XZG*B(9B84*@>6_9S(G6:8BR3K^J8,Z M34[EN/_Z+?KG$KP$\X0YF=/LCW0IDHDS<@XY@=4.V ^@[! 0>_=O!+H%5E):P[ M+/!TS.@.,&4MHZD796]*;XDF+=3'N!!,OIM*/S%])%RP;2RV+"W6X K(:\*> M"?AP1P1.,_Y1WONZN ,?WGT$[T!:@-\2NN6X6/*Q*V1^%<6-ZURS*A/16_ Q9 ]YNU]? AS\"Y*' 4,_<[GZ/V37PD,F] M4X[?]-(OX_E']7).N0"R44U+__Q%VH,O@N3\+U/SJN"!.;AZG&_X!L=DXLCG MM8SH3-__ $/ODPGYF8)U^A T?0ALT:XB(D);14B+$,HKGF> MH@@.QN[S/@K=*(C\86/4J6[05#>P5M?]E,B+)$1NK+ *,]A+/@J]7H'65">V M.6R A%8@#_A5\JDP/HBA5ON5'VK56^.?6/VPJ7YHK?Y7D1 &\/)OR7$'80PU M&,/AJ ?"FN9$$*,&Q,@*0A*9&J+9X3$?:0@,8ZX;'1[SJ"DMLI9VR^(D%43- M.<[ 9X9S5>GBE2O^,55J#?=?Z>=,P3K(H==JFG=)(JZCGZD5YXK6[<6>OL/_ M3\9UC/T)A-#W>V-JL$(C&)CG%**V0G0>0J[C=.C #_M%6I.=VNYV!8!69;62 MQ;]89V^>X2]$+"3V-B;O:9=+J&,/$& MJ\,3CUH!1W8!GU.VH0P+ M[C?/,)E%TW5GG6[^OGBM9%W8H^"B[)RNA,2E_W MXA)[ VKW!F3?&XYB9:0O!6%_<3#8#,(#\]FN#&P#^ 2"HY:!4=V!3^.DW5MUCC9FN94&*W,([O,'\') MD784I\^[;J/-N[MW5)T3MBY/\#F(Z;80U:EU<[?YE>"V/!MW6_/J)X9[S.2# MRD%&5M+5NQ[*!K/JU+ZZ$'13'GP_42%H7KY,"%X2I@SD^RM*Q=N%2M#\=C+] M%U!+ P04 " )R,9P)G"O0 M3551]3)"+O<9Z9/CQ#W;EL9-!'E:TRTNT"SKN;)1T+FL685",RE X28CG_O# M4>+R?<)/AGM],@97R4K*1Q=,UQD)'1!R+(QSH/:QPS%R[HPLQM/!DW1;.N'I M^.C^U==N:UE1C6/)']C:E!GY2&"-&]IP)"12- M-K(ZB"U!Q43[I,^']W BB*)7!-%!$'GN=B-/.:&&YJF2>U NV[JY@2_5JRT< M$^ZC+(RRJ\SJ3+YH5AJ?&A0&ONSL7\L>Y!%-]"%$8)+!<3N+ZZ^=2,S_('E TR% M057(6YC-QN=8+WJZWA_JFA:8$=O<&M4.2?[^77\0?KI ''?$L7>/WTK\:V8S M8&JPTK_/P<;_ 3;I8).+KW=_ET>):&] MTF!WNG]PTI[NI'^G:LN$!HX;*PQ['^X(J/;TM(&1M>_8E32V__VPM#\<5"[! MKF^D-,? '8+N%Y;_!5!+ P04 " )6QEU MY-B9X[*67X]OG*8?^%:,A]$N%<2^)^?<8_NZ,?1+LQ3L;L:8"1:YD.6 S(PI M/H=A.9FQG)87JF#2(IG2.36VJZ=A66A&TQ)(N0@[K587Z3FS*8 MJ+DT ])M0H&[?4L'I!U?DL#)C53*!N3A[./ON3+7'P)W/_ETC9]5 MP#D)O:)7KQ"]:.&Z%L.DXU=)[U'&A+O;PBL?IU:J,76*D7M^W70_JM-;)N52ZRNTRN-_C^O$=8-4#@UR(QF"'N,"P M7U!CF)8WME,]7 5?0$'=OE\6UN%4TV6[C_6;^=!-7AV#R?@8 M3!Y%3?8.WV24'+['^K1WX":[[_;-OM=D6)^$-HY;6X>M)AK H79 ?L+A6*R3 M!N,Y%X;+NC?C:_P_#:<7.BMKFX3-F"I:.ZJZ?CJAG8ALU:7T#816ZJRX]@'(?Y$<"P M/)@#C.-86)[_:3P]=#P.P[SUO$@/Y?10CF/YD%'UP?+X.8F]_"--DBB*8VQ& M1R.O@Q$V;W$,/WXUS!LPL#R0Z>_F&E]MO$+VUP&VIOLJ!!LI7HG82/&Y!L0_ M;\!($O]J8WF @:T"5CN0WY\':LK/B2)85-/E_G;@ M2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J.W&,EC'%BM/XU@LD/ M['X 4$L#!!0 ( ER1%F3MM>;^@0 $I / >&PO=V]R:V)O;VLN M>&ULQ9I=;]HZ&(#_BL7-Z:3M /F@6S4F44A/D5A!A.UV,HD!:XG-;(>V^_7' M2=G3'[FVY7)SN64_VW MW#-ASVRDRJFQ2;7MZKUB--4[QDR>=;U>;]#-*1>=+Y^/92U4UTU(PQ+#I;"9 M9<9WSA[U?^?+)#EPS=<\X^9YV*E^9ZQ#R<=[J?AO*0S- MXD3)+!MV^O6)[TP9GKS)CDO(%5WK*L?0]9):D&%GT+,%;KC2IKJB*I]:Q@.S M%]>IPL@[GAFF)M2P?Y0L]EQLRV+L4W2=QZCJX7BL*_%&_9]JE)L-3]A$)D7. MA*GK4;&L!!1ZQ_>Z0P3-V; SE@>FR()N6?E0]B[3M'Y 8\F:L[Q_.O"@0P!R! 9TJ9EQE-[ M]Y3$)43Y!TWDAHQEH[D' .3@ M4_5<-F_,MX+;OU%AR"A)9"$,=R _ 9"?<"&7[,!$P=Z3)4L8/U![@T;S'B[F5%A,8\7*M(L$"@;9,'=<4)%PFI&IT$95ES?@(+'TD\) ]837*[:A& M5HJFME')2"EJ-?':JQXD"0]=$D!,UPCA/4@2'K(DP*BNB0GYPD/VA1/5D:M5 M1?G.98-RA@E.Z:/(#<$R"[!\9T31Y [@DN M.N=Q31Y"[@DO.N=Q&SV$+!2>8\[S:I&[U94A)*$064(G9V9UYW-KGMVW11@B))T06SRG, MMR%F"(DG1)_TN//P-V&'BPF))T2?]#0QF^FQ^U$)))[!.?=K:DRF#G\ZD8L) MB6=P[AV;7/2Y;)- MX^V,YOGI=N;B]7/(_S.QWVSVZ_RS7_\^YM/TC\'I3S^^EUW.4[-X[<9MGE9- M^CA<3Y=T.7*S>'E;->/+FS2I=I!"D-8/,@BR^D$.05X_*" HZ@>U$-36 M#[J'H/OZ00\0]% _Z!&"'NL'R1)E7!(DS; FT%J0:R'P6A!L(1!;D&PA,%L0 M;2%06Y!M(7!;$&XAD%N0;B&P6Q!O(=!;46\ET%M1;R706VBOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'H;ZFT$>AOJ;01Z&^IM!'K; M;+.$0&]#O8U ;T.]C4!O0[V-0&]#O8U ;T.]C4!O0[V-0&]'O9U ;T>]G4!O M1[V=0&]'O9U ;Y]M=A/H[:BW$^CMJ+<3Z.VHMQ/H[:BW$^CMJ+<3Z!VH=Q#H M':AW$.@=J'<0Z!VH=Q#H':AW$.@=LY^5!'H'ZAT$>@?J'01Z!^H=!'H'ZAT$ M>K>H=TN@=XMZMP1ZMZAW^YUZE^GSD,NUYVN-S_].JJ?SO?GZ^,ORZ^3LO5QP M3K<5Y?DO4$L#!!0 ( ER1%G_)Z=UXP$ &PD 3 6T-O;G1E;G1? M5'EP97-=+GAM;,W:74_",!0&X+]"=FM8Z=?\B'"CWJH7_H&Z'61A6YNV(/Q[ MNP$F&B4:3'QO6*#M><]ZDN>*ZZ>MHS#:M$T7IMDB1G?%6"@7U)J06T==6IE; MWYJ8OOH7YDRY-"_$Q&12L-)VD;HXCGV-;'9]2W.S:N+H;I-^#K7MIIFG)F2C MF]W&/FN:&>>:NC0QK;-U5WU*&>\3\G1RV!,6M0MG:4/&ODSH5[X/V)][6)/W M=46C1^/CO6G3+K9I6(C;AD)^O,07/=KYO"ZILN6J34?RX#R9*BR(8MODNZ)G MQY-CNF':??*3\X00V/$Z_XX\S?J__RSX$2!\2I \%TH<&Z:, Z>,&UL4$L! A0#% @ "')$6?I?*_CO *P( !$ M ( !KP &1O8U!R;W!S+V-O&UL4$L! A0#% @ M"')$69E&PO=V]R:W-H965T&UL4$L! A0#% @ M"')$6?Q,]GBY!@ F1L !@ ("!* X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "')$68IOQPT0#0 ?'8 !@ ("! MTRT 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "')$6=(L0@T6" !0 !D M ("!*TP 'AL+W=O&PO M=V]R:W-H965T9= !X;"]W;W)K&UL4$L! A0#% @ "')$62(X?+(U! EPD !D ("! M56@ 'AL+W=O&PO=V]R:W-H965T@4 "X- 9 M " @7EQ !X;"]W;W)K&UL4$L! A0#% M @ "')$62/MMJ'K P S D !D ("!*G< 'AL+W=O&UL4$L! A0#% @ "7)$69U]7BH: M!P _1( !D ("!(H4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$65"%/S]$ @ B@8 !D M ("!E9$ 'AL+W=O&PO=V]R M:W-H965T 4 *$. M 9 " @:Z: !X;"]W;W)K&UL M4$L! A0#% @ "7)$62M?+Z. @ :@4 !D ("!7: M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M"7)$6=I<5+2( P "P@ !D ("!]JH 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$657+NU+Q P 2Q0 !D M ("!0,$ 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ "7)$62G );H? P ;PD !D ("!Z&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$ M66[X*?05 P Q H !D ("!>]4 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$6&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$611YQ+-; P 10H !D M ("!Z/, 'AL+W=O&PO=V]R:W-H965T M&UL4$L! A0# M% @ "7)$66;@SLJ0 @ 708 !D ("!X_T 'AL+W=O M8@# !J M#0 &0 @(&J $ >&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$620 P N0\ !D ("!; @! 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ "7)$65-'*58O @ MP0 !D M ("!/1,! 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ "7)$62PE'N7%!0 !2\ !D ("! MLR(! 'AL+W=O&PO=V]R:W-H965T6QE M&PO=V]R:V)O;VLN>&UL4$L! A0#% @ M"7)$67=+<84& @ \20 !H ( !3SD! 'AL+U]R96QS+W=O M XML 75 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 76 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 78 FilingSummary.xml IDEA: XBRL DOCUMENT 3.24.3 html 225 258 1 false 54 0 false 10 false false R1.htm 0000001 - Document - Cover Page Sheet http://www.apog.com/role/CoverPage Cover Page Cover 1 false false R2.htm 9952151 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited) Sheet http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited CONSOLIDATED BALANCE SHEETS (Unaudited) Statements 2 false false R3.htm 9952152 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) Sheet http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical) Statements 3 false false R4.htm 9952153 - Statement - CONSOLIDATED RESULTS OF OPERATIONS (Unaudited) Sheet http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited CONSOLIDATED RESULTS OF OPERATIONS (Unaudited) Statements 4 false false R5.htm 9952154 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited) Sheet http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited) Statements 5 false false R6.htm 9952155 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical) Sheet http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsUnauditedParenthetical Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical) Statements 6 false false R7.htm 9952156 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) Sheet http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited) Statements 7 false false R8.htm 9952157 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) Sheet http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited) Statements 8 false false R9.htm 9952158 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.apog.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 9 false false R10.htm 9952159 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilities Revenue, Receivables and Contract Assets and Liabilities Notes 10 false false R11.htm 9952160 - Disclosure - Inventories Sheet http://www.apog.com/role/Inventories Inventories Notes 11 false false R12.htm 9952161 - Disclosure - Financial Instruments Sheet http://www.apog.com/role/FinancialInstruments Financial Instruments Notes 12 false false R13.htm 9952162 - Disclosure - Debt Sheet http://www.apog.com/role/Debt Debt Notes 13 false false R14.htm 9952163 - Disclosure - Commitments and Contingent Liabilities Sheet http://www.apog.com/role/CommitmentsandContingentLiabilities Commitments and Contingent Liabilities Notes 14 false false R15.htm 9952164 - Disclosure - Supplier Finance Program Obligations Sheet http://www.apog.com/role/SupplierFinanceProgramObligations Supplier Finance Program Obligations Notes 15 false false R16.htm 9952165 - Disclosure - Shareholders' Equity Sheet http://www.apog.com/role/ShareholdersEquity Shareholders' Equity Notes 16 false false R17.htm 9952166 - Disclosure - Share-Based Compensation Sheet http://www.apog.com/role/ShareBasedCompensation Share-Based Compensation Notes 17 false false R18.htm 9952167 - Disclosure - Income Taxes Sheet http://www.apog.com/role/IncomeTaxes Income Taxes Notes 18 false false R19.htm 9952168 - Disclosure - Earnings per Share Sheet http://www.apog.com/role/EarningsperShare Earnings per Share Notes 19 false false R20.htm 9952169 - Disclosure - Business Segment Data Sheet http://www.apog.com/role/BusinessSegmentData Business Segment Data Notes 20 false false R21.htm 9952170 - Disclosure - Restructuring Sheet http://www.apog.com/role/Restructuring Restructuring Notes 21 false false R22.htm 9952171 - Disclosure - Subsequent Events Sheet http://www.apog.com/role/SubsequentEvents Subsequent Events Notes 22 false false R23.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 23 false false R24.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 24 false false R25.htm 9954471 - Disclosure - Summary of Significant Accounting Policies (Policies) Sheet http://www.apog.com/role/SummaryofSignificantAccountingPoliciesPolicies Summary of Significant Accounting Policies (Policies) Policies http://www.apog.com/role/SummaryofSignificantAccountingPolicies 25 false false R26.htm 9954472 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Tables) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables Revenue, Receivables and Contract Assets and Liabilities (Tables) Tables http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilities 26 false false R27.htm 9954473 - Disclosure - Inventories (Tables) Sheet http://www.apog.com/role/InventoriesTables Inventories (Tables) Tables http://www.apog.com/role/Inventories 27 false false R28.htm 9954474 - Disclosure - Financial Instruments (Tables) Sheet http://www.apog.com/role/FinancialInstrumentsTables Financial Instruments (Tables) Tables http://www.apog.com/role/FinancialInstruments 28 false false R29.htm 9954475 - Disclosure - Debt (Tables) Sheet http://www.apog.com/role/DebtTables Debt (Tables) Tables http://www.apog.com/role/Debt 29 false false R30.htm 9954476 - Disclosure - Commitments and Contingent Liabilities (Tables) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables Commitments and Contingent Liabilities (Tables) Tables http://www.apog.com/role/CommitmentsandContingentLiabilities 30 false false R31.htm 9954477 - Disclosure - Supplier Finance Program Obligations (Tables) Sheet http://www.apog.com/role/SupplierFinanceProgramObligationsTables Supplier Finance Program Obligations (Tables) Tables http://www.apog.com/role/SupplierFinanceProgramObligations 31 false false R32.htm 9954478 - Disclosure - Share-Based Compensation (Tables) Sheet http://www.apog.com/role/ShareBasedCompensationTables Share-Based Compensation (Tables) Tables http://www.apog.com/role/ShareBasedCompensation 32 false false R33.htm 9954479 - Disclosure - Earnings per Share (Tables) Sheet http://www.apog.com/role/EarningsperShareTables Earnings per Share (Tables) Tables http://www.apog.com/role/EarningsperShare 33 false false R34.htm 9954480 - Disclosure - Business Segment Data (Tables) Sheet http://www.apog.com/role/BusinessSegmentDataTables Business Segment Data (Tables) Tables http://www.apog.com/role/BusinessSegmentData 34 false false R35.htm 9954481 - Disclosure - Restructuring (Tables) Sheet http://www.apog.com/role/RestructuringTables Restructuring (Tables) Tables http://www.apog.com/role/Restructuring 35 false false R36.htm 9954482 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details) Details http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables 36 false false R37.htm 9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details) Details 37 false false R38.htm 9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details) Details 38 false false R39.htm 9954485 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOtherContractRelatedDisclosuresDetails Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details) Details 39 false false R40.htm 9954486 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details) Details 40 false false R41.htm 9954487 - Disclosure - Inventories (Details) Sheet http://www.apog.com/role/InventoriesDetails Inventories (Details) Details http://www.apog.com/role/InventoriesTables 41 false false R42.htm 9954488 - Disclosure - Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details) Sheet http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details) Details 42 false false R43.htm 9954489 - Disclosure - Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details) Sheet http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details) Details 43 false false R44.htm 9954490 - Disclosure - Financial Instruments - Additional Information (Details) Sheet http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails Financial Instruments - Additional Information (Details) Details 44 false false R45.htm 9954491 - Disclosure - Financial Instruments -Schedule of Fair Value Measurements (Details) Sheet http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails Financial Instruments -Schedule of Fair Value Measurements (Details) Details 45 false false R46.htm 9954492 - Disclosure - Debt - Additional Information (Details) Sheet http://www.apog.com/role/DebtAdditionalInformationDetails Debt - Additional Information (Details) Details 46 false false R47.htm 9954493 - Disclosure - Debt - Schedule of Interest Expense (Details) Sheet http://www.apog.com/role/DebtScheduleofInterestExpenseDetails Debt - Schedule of Interest Expense (Details) Details 47 false false R48.htm 9954494 - Disclosure - Commitments and Contingent Liabilities - Additional Information (Details) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails Commitments and Contingent Liabilities - Additional Information (Details) Details 48 false false R49.htm 9954495 - Disclosure - Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details) Details 49 false false R50.htm 9954496 - Disclosure - Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details) Details 50 false false R51.htm 9954497 - Disclosure - Supplier Finance Program Obligations (Details) Sheet http://www.apog.com/role/SupplierFinanceProgramObligationsDetails Supplier Finance Program Obligations (Details) Details http://www.apog.com/role/SupplierFinanceProgramObligationsTables 51 false false R52.htm 9954498 - Disclosure - Shareholders' Equity (Details) Sheet http://www.apog.com/role/ShareholdersEquityDetails Shareholders' Equity (Details) Details http://www.apog.com/role/ShareholdersEquity 52 false false R53.htm 9954499 - Disclosure - Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details) Sheet http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details) Details 53 false false R54.htm 9954500 - Disclosure - Share-Based Compensation - Additional Information (Details) Sheet http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails Share-Based Compensation - Additional Information (Details) Details 54 false false R55.htm 9954501 - Disclosure - Income Taxes (Details) Sheet http://www.apog.com/role/IncomeTaxesDetails Income Taxes (Details) Details http://www.apog.com/role/IncomeTaxes 55 false false R56.htm 9954502 - Disclosure - Earnings per Share (Details) Sheet http://www.apog.com/role/EarningsperShareDetails Earnings per Share (Details) Details http://www.apog.com/role/EarningsperShareTables 56 false false R57.htm 9954503 - Disclosure - Business Segment Data - Additional Information (Details) Sheet http://www.apog.com/role/BusinessSegmentDataAdditionalInformationDetails Business Segment Data - Additional Information (Details) Details 57 false false R58.htm 9954504 - Disclosure - Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details) Sheet http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details) Details 58 false false R59.htm 9954505 - Disclosure - Restructuring - Additional Information (Details) Sheet http://www.apog.com/role/RestructuringAdditionalInformationDetails Restructuring - Additional Information (Details) Details 59 false false R60.htm 9954506 - Disclosure - Restructuring - Restructuring Costs (Details) Sheet http://www.apog.com/role/RestructuringRestructuringCostsDetails Restructuring - Restructuring Costs (Details) Details 60 false false R61.htm 9954507 - Disclosure - Restructuring - Reserve (Details) Sheet http://www.apog.com/role/RestructuringReserveDetails Restructuring - Reserve (Details) Details 61 false false R62.htm 9954508 - Disclosure - Subsequent Events (Details) Sheet http://www.apog.com/role/SubsequentEventsDetails Subsequent Events (Details) Details http://www.apog.com/role/SubsequentEvents 62 false false All Reports Book All Reports apog-20240831.htm apog-20240831.xsd apog-20240831_cal.xml apog-20240831_def.xml apog-20240831_lab.xml apog-20240831_pre.xml http://fasb.org/us-gaap/2024 http://xbrl.sec.gov/dei/2024 http://xbrl.sec.gov/ecd/2024 true true JSON 81 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "apog-20240831.htm": { "nsprefix": "apog", "nsuri": "http://www.apog.com/20240831", "dts": { "inline": { "local": [ "apog-20240831.htm" ] }, "schema": { "local": [ "apog-20240831.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-roles-2024.xsd", "https://xbrl.fasb.org/srt/2024/elts/srt-types-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-gaap-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-roles-2024.xsd", "https://xbrl.fasb.org/us-gaap/2024/elts/us-types-2024.xsd", "https://xbrl.sec.gov/country/2024/country-2024.xsd", "https://xbrl.sec.gov/dei/2024/dei-2024.xsd", "https://xbrl.sec.gov/ecd/2024/ecd-2024.xsd", "https://xbrl.sec.gov/stpr/2024/stpr-2024.xsd" ] }, "calculationLink": { "local": [ "apog-20240831_cal.xml" ] }, "definitionLink": { "local": [ "apog-20240831_def.xml" ] }, "labelLink": { "local": [ "apog-20240831_lab.xml" ] }, "presentationLink": { "local": [ "apog-20240831_pre.xml" ] } }, "keyStandard": 235, "keyCustom": 23, "axisStandard": 23, "axisCustom": 3, "memberStandard": 29, "memberCustom": 25, "hidden": { "total": 7, "http://fasb.org/us-gaap/2024": 2, "http://xbrl.sec.gov/dei/2024": 5 }, "contextCount": 225, "entityCount": 1, "segmentCount": 54, "elementCount": 531, "unitCount": 10, "baseTaxonomies": { "http://fasb.org/us-gaap/2024": 698, "http://xbrl.sec.gov/dei/2024": 29, "http://xbrl.sec.gov/ecd/2024": 4 }, "report": { "R1": { "role": "http://www.apog.com/role/CoverPage", "longName": "0000001 - Document - Cover Page", "shortName": "Cover Page", "isDefault": "true", "groupType": "document", "subGroupType": "", "menuCat": "Cover", "order": "1", "firstAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "dei:DocumentType", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited", "longName": "9952151 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited)", "shortName": "CONSOLIDATED BALANCE SHEETS (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "2", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:CashAndCashEquivalentsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical", "longName": "9952152 - Statement - CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical)", "shortName": "CONSOLIDATED BALANCE SHEETS (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R4": { "role": "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited", "longName": "9952153 - Statement - CONSOLIDATED RESULTS OF OPERATIONS (Unaudited)", "shortName": "CONSOLIDATED RESULTS OF OPERATIONS (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:CostOfGoodsAndServicesSold", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R5": { "role": "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited", "longName": "9952154 - Statement - CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited)", "shortName": "CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R6": { "role": "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsUnauditedParenthetical", "longName": "9952155 - Statement - Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical)", "shortName": "Consolidated Statements of Comprehensive Earnings (Unaudited) (Parenthetical)", "isDefault": "false", "groupType": "statement", "subGroupType": "parenthetical", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R7": { "role": "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited", "longName": "9952156 - Statement - CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited)", "shortName": "CONSOLIDATED STATEMENTS OF CASH FLOWS (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DepreciationDepletionAndAmortization", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R8": { "role": "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited", "longName": "9952157 - Statement - CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited)", "shortName": "CONSOLIDATED STATEMENTS OF SHAREHOLDERS' EQUITY (Unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "c-32", "name": "us-gaap:SharesOutstanding", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-36", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R9": { "role": "http://www.apog.com/role/SummaryofSignificantAccountingPolicies", "longName": "9952158 - Disclosure - Summary of Significant Accounting Policies", "shortName": "Summary of Significant Accounting Policies", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "9", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilities", "longName": "9952159 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities", "shortName": "Revenue, Receivables and Contract Assets and Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "10", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RevenueFromContractWithCustomerTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.apog.com/role/Inventories", "longName": "9952160 - Disclosure - Inventories", "shortName": "Inventories", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "11", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.apog.com/role/FinancialInstruments", "longName": "9952161 - Disclosure - Financial Instruments", "shortName": "Financial Instruments", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "12", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:MarketableSecuritiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:MarketableSecuritiesTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.apog.com/role/Debt", "longName": "9952162 - Disclosure - Debt", "shortName": "Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DebtDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilities", "longName": "9952163 - Disclosure - Commitments and Contingent Liabilities", "shortName": "Commitments and Contingent Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommitmentsAndContingenciesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.apog.com/role/SupplierFinanceProgramObligations", "longName": "9952164 - Disclosure - Supplier Finance Program Obligations", "shortName": "Supplier Finance Program Obligations", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SupplierFinanceProgramTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SupplierFinanceProgramTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.apog.com/role/ShareholdersEquity", "longName": "9952165 - Disclosure - Shareholders' Equity", "shortName": "Shareholders' Equity", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:StockholdersEquityNoteDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.apog.com/role/ShareBasedCompensation", "longName": "9952166 - Disclosure - Share-Based Compensation", "shortName": "Share-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.apog.com/role/IncomeTaxes", "longName": "9952167 - Disclosure - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:IncomeTaxDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R19": { "role": "http://www.apog.com/role/EarningsperShare", "longName": "9952168 - Disclosure - Earnings per Share", "shortName": "Earnings per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "19", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:EarningsPerShareTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R20": { "role": "http://www.apog.com/role/BusinessSegmentData", "longName": "9952169 - Disclosure - Business Segment Data", "shortName": "Business Segment Data", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "20", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SegmentReportingDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.apog.com/role/Restructuring", "longName": "9952170 - Disclosure - Restructuring", "shortName": "Restructuring", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "21", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:RestructuringAndRelatedActivitiesDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.apog.com/role/SubsequentEvents", "longName": "9952171 - Disclosure - Subsequent Events", "shortName": "Subsequent Events", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SubsequentEventsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R23": { "role": "http://xbrl.sec.gov/ecd/role/PvpDisclosure", "longName": "995410 - Disclosure - Pay vs Performance Disclosure", "shortName": "Pay vs Performance Disclosure", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "23", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:NetIncomeLoss", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": null }, "R24": { "role": "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "longName": "995445 - Disclosure - Insider Trading Arrangements", "shortName": "Insider Trading Arrangements", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "24", "firstAnchor": { "contextRef": "c-5", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ecd:NonRule10b51ArrAdoptedFlag", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "ecd:Rule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ecd:NonRule10b51ArrAdoptedFlag", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.apog.com/role/SummaryofSignificantAccountingPoliciesPolicies", "longName": "9954471 - Disclosure - Summary of Significant Accounting Policies (Policies)", "shortName": "Summary of Significant Accounting Policies (Policies)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "policies", "menuCat": "Policies", "order": "25", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:BasisOfAccountingPolicyPolicyTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables", "longName": "9954472 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Tables)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:DisaggregationOfRevenueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.apog.com/role/InventoriesTables", "longName": "9954473 - Disclosure - Inventories (Tables)", "shortName": "Inventories (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.apog.com/role/FinancialInstrumentsTables", "longName": "9954474 - Disclosure - Financial Instruments (Tables)", "shortName": "Financial Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.apog.com/role/DebtTables", "longName": "9954475 - Disclosure - Debt (Tables)", "shortName": "Debt (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "29", "firstAnchor": { "contextRef": "c-1", "name": "apog:ScheduleOfInterestExpenseTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "apog:ScheduleOfInterestExpenseTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables", "longName": "9954476 - Disclosure - Commitments and Contingent Liabilities (Tables)", "shortName": "Commitments and Contingent Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "30", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.apog.com/role/SupplierFinanceProgramObligationsTables", "longName": "9954477 - Disclosure - Supplier Finance Program Obligations (Tables)", "shortName": "Supplier Finance Program Obligations (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "31", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:SupplierFinanceProgramTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:SupplierFinanceProgramTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.apog.com/role/ShareBasedCompensationTables", "longName": "9954478 - Disclosure - Share-Based Compensation (Tables)", "shortName": "Share-Based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "32", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R33": { "role": "http://www.apog.com/role/EarningsperShareTables", "longName": "9954479 - Disclosure - Earnings per Share (Tables)", "shortName": "Earnings per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "33", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.apog.com/role/BusinessSegmentDataTables", "longName": "9954480 - Disclosure - Business Segment Data (Tables)", "shortName": "Business Segment Data (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "34", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.apog.com/role/RestructuringTables", "longName": "9954481 - Disclosure - Restructuring (Tables)", "shortName": "Restructuring (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "35", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails", "longName": "9954482 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities - Revenue (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-54", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:DisaggregationOfRevenueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R37": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails", "longName": "9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities Accounts - Receivable (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AccountsReceivableGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AccountsReceivableGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails", "longName": "9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities - Allowance for Credit Losses (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivable", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ProvisionForDoubtfulAccounts", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:AccountsReceivableAllowanceForCreditLossTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R39": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOtherContractRelatedDisclosuresDetails", "longName": "9954485 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities - Other Contract-Related Disclosures (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ContractWithCustomerAssetAndLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails", "longName": "9954486 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities - Other contract-related disclosures (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:RevenueRemainingPerformanceObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R41": { "role": "http://www.apog.com/role/InventoriesDetails", "longName": "9954487 - Disclosure - Inventories (Details)", "shortName": "Inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails", "longName": "9954488 - Disclosure - Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details)", "shortName": "Financial Instruments - Schedule of Available-for-Sale Marketable Securities (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-73", "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R43": { "role": "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails", "longName": "9954489 - Disclosure - Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details)", "shortName": "Financial Instruments - Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "longName": "9954490 - Disclosure - Financial Instruments - Additional Information (Details)", "shortName": "Financial Instruments - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-75", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-75", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails", "longName": "9954491 - Disclosure - Financial Instruments -Schedule of Fair Value Measurements (Details)", "shortName": "Financial Instruments -Schedule of Fair Value Measurements (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.apog.com/role/DebtAdditionalInformationDetails", "longName": "9954492 - Disclosure - Debt - Additional Information (Details)", "shortName": "Debt - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:GainsLossesOnExtinguishmentOfDebt", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:GainsLossesOnExtinguishmentOfDebt", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails", "longName": "9954493 - Disclosure - Debt - Schedule of Interest Expense (Details)", "shortName": "Debt - Schedule of Interest Expense (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:InterestExpenseDebt", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "apog:ScheduleOfInterestExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:InterestExpenseDebt", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "apog:ScheduleOfInterestExpenseTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails", "longName": "9954494 - Disclosure - Commitments and Contingent Liabilities - Additional Information (Details)", "shortName": "Commitments and Contingent Liabilities - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:GuaranteesFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-8", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:GuaranteesFairValueDisclosure", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-8", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails", "longName": "9954495 - Disclosure - Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details)", "shortName": "Commitments and Contingent Liabilities - Schedule of Guarantees and warranties (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:ExtendedProductWarrantyAccrual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:ExtendedProductWarrantyAccrual", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfProductWarrantyLiabilityTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R50": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails", "longName": "9954496 - Disclosure - Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details)", "shortName": "Commitments and Contingent Liabilities - Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-1", "name": "apog:GrossProceedsFromNewMarketsTaxCreditTransaction", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "apog:NewMarketTaxCreditTransactionsSummaryTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "apog:GrossProceedsFromNewMarketsTaxCreditTransaction", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "apog:NewMarketTaxCreditTransactionsSummaryTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R51": { "role": "http://www.apog.com/role/SupplierFinanceProgramObligationsDetails", "longName": "9954497 - Disclosure - Supplier Finance Program Obligations (Details)", "shortName": "Supplier Finance Program Obligations (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:SupplierFinanceProgramObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:SupplierFinanceProgramTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-4", "name": "us-gaap:SupplierFinanceProgramObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:SupplierFinanceProgramTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.apog.com/role/ShareholdersEquityDetails", "longName": "9954498 - Disclosure - Shareholders' Equity (Details)", "shortName": "Shareholders' Equity (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:PaymentsOfDividendsCommonStock", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:CommonStockDividendsPerShareCashPaid", "unitRef": "usdPerShare", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R53": { "role": "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails", "longName": "9954499 - Disclosure - Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details)", "shortName": "Share-Based Compensation - Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "53", "firstAnchor": { "contextRef": "c-133", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-133", "name": "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R54": { "role": "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "longName": "9954500 - Disclosure - Share-Based Compensation - Additional Information (Details)", "shortName": "Share-Based Compensation - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "54", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:ShareBasedCompensation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-133", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R55": { "role": "http://www.apog.com/role/IncomeTaxesDetails", "longName": "9954501 - Disclosure - Income Taxes (Details)", "shortName": "Income Taxes (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "55", "firstAnchor": { "contextRef": "c-5", "name": "apog:IncomeTaxExpenseAsPercentageOfEarningsBeforeIncomeTaxesPercent", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "apog:IncomeTaxExpenseAsPercentageOfEarningsBeforeIncomeTaxesPercent", "unitRef": "number", "xsiNil": "false", "lang": "en-US", "decimals": "3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R56": { "role": "http://www.apog.com/role/EarningsperShareDetails", "longName": "9954502 - Disclosure - Earnings per Share (Details)", "shortName": "Earnings per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "56", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "unitRef": "shares", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R57": { "role": "http://www.apog.com/role/BusinessSegmentDataAdditionalInformationDetails", "longName": "9954503 - Disclosure - Business Segment Data - Additional Information (Details)", "shortName": "Business Segment Data - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "57", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "segment", "xsiNil": "false", "lang": "en-US", "decimals": "INF", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R58": { "role": "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "longName": "9954504 - Disclosure - Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details)", "shortName": "Business Segment Data - Schedule of Sales and Operating Income (Loss) (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "58", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-155", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfSegmentReportingInformationBySegmentTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R59": { "role": "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "longName": "9954505 - Disclosure - Restructuring - Additional Information (Details)", "shortName": "Restructuring - Additional Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "59", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:RestructuringCharges", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-179", "name": "us-gaap:RestructuringCharges", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R60": { "role": "http://www.apog.com/role/RestructuringRestructuringCostsDetails", "longName": "9954506 - Disclosure - Restructuring - Restructuring Costs (Details)", "shortName": "Restructuring - Restructuring Costs (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "60", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RestructuringCosts", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:RestructuringCosts", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringAndRelatedCostsTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } }, "R61": { "role": "http://www.apog.com/role/RestructuringReserveDetails", "longName": "9954507 - Disclosure - Restructuring - Reserve (Details)", "shortName": "Restructuring - Reserve (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "61", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:RestructuringReserve", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:PaymentsForRestructuring", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "unique": true } }, "R62": { "role": "http://www.apog.com/role/SubsequentEventsDetails", "longName": "9954508 - Disclosure - Subsequent Events (Details)", "shortName": "Subsequent Events (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "62", "firstAnchor": { "contextRef": "c-225", "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-225", "name": "us-gaap:BusinessCombinationConsiderationTransferred1", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20240831.htm", "first": true, "unique": true } } }, "tag": { "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsNotesAndLoansReceivableLineItems", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts, Notes, Loans and Financing Receivable [Line Items]", "label": "Accounts, Notes, Loans and Financing Receivable [Line Items]", "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." } } }, "auth_ref": [ "r238", "r918" ] }, "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable Type [Axis]", "label": "Receivable Type [Axis]", "documentation": "Information by type of receivable." } } }, "auth_ref": [ "r64", "r70" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsPayableCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts payable", "label": "Accounts Payable, Current", "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)." } } }, "auth_ref": [ "r54", "r779" ] }, "apog_AccountsReceivableAllowanceForCreditLossOtherAdjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "AccountsReceivableAllowanceForCreditLossOtherAdjustments", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other adjustments", "label": "Accounts Receivable, Allowance for Credit Loss, Other Adjustments", "documentation": "Accounts Receivable, Allowance for Credit Loss, Other Adjustments" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Allowance for Credit Losses", "label": "Accounts Receivable, Allowance for Credit Loss [Table Text Block]", "documentation": "Tabular disclosure of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r932" ] }, "apog_AccountsReceivableAllowanceForCreditLossWriteoffAfterRecovery": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "AccountsReceivableAllowanceForCreditLossWriteoffAfterRecovery", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deductions from allowance, net of recoveries", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff, after Recovery", "documentation": "Accounts Receivable, Allowance for Credit Loss, Writeoff, after Recovery" } } }, "auth_ref": [] }, "apog_AccountsReceivableConstructionContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "AccountsReceivableConstructionContractsMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Construction contracts", "label": "Accounts Receivable, Construction Contracts [Member]", "documentation": "Accounts Receivable, Construction Contracts [Member]" } } }, "auth_ref": [] }, "us-gaap_AccountsReceivableGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableGross", "crdr": "debit", "calculation": { "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails": { "parentTag": "us-gaap_AccountsReceivableNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total receivables", "label": "Accounts Receivable, before Allowance for Credit Loss", "documentation": "Amount, before allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r137", "r237", "r238", "r990" ] }, "us-gaap_AccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccountsReceivableNet", "crdr": "debit", "calculation": { "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Receivables, net", "label": "Accounts Receivable, after Allowance for Credit Loss", "documentation": "Amount, after allowance for credit loss, of right to consideration from customer for product sold and service rendered in normal course of business." } } }, "auth_ref": [ "r660", "r713", "r786", "r989", "r990" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated depreciation property, plant, and equipment", "label": "Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment", "documentation": "Amount of accumulated depreciation, depletion and amortization for physical assets used in the normal conduct of business to produce goods and services." } } }, "auth_ref": [ "r30", "r129", "r592" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated other comprehensive loss", "label": "Accumulated Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount, after tax, of accumulated increase (decrease) in equity from transaction and other event and circumstance from nonowner source." } } }, "auth_ref": [ "r17", "r18", "r74", "r138", "r589", "r621", "r622" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive (Loss) Income", "label": "AOCI Attributable to Parent [Member]", "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." } } }, "auth_ref": [ "r3", "r11", "r18", "r495", "r498", "r537", "r617", "r618", "r893", "r894", "r895", "r906", "r907", "r908", "r909" ] }, "apog_AcquisitionHolidayConditionMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "AcquisitionHolidayConditionMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisition Holiday Condition", "label": "Acquisition Holiday Condition [Member]", "documentation": "Acquisition Holiday Condition" } } }, "auth_ref": [] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Additional402vDisclosureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Additional 402(v) Disclosure", "label": "Additional 402(v) Disclosure [Text Block]" } } }, "auth_ref": [ "r832" ] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapital", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional paid-in capital", "label": "Additional Paid in Capital", "documentation": "Amount of excess of issue price over par or stated value of stock and from other transaction involving stock or stockholder. Includes, but is not limited to, additional paid-in capital (APIC) for common and preferred stock." } } }, "auth_ref": [ "r65", "r779", "r1023" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Paid-In Capital", "label": "Additional Paid-in Capital [Member]", "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." } } }, "auth_ref": [ "r633", "r906", "r907", "r908", "r909", "r960", "r1024" ] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation, Amount", "label": "Adjustment to Compensation Amount" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToCompAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Compensation:", "label": "Adjustment to Compensation [Axis]" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToNonPeoNeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment to Non-PEO NEO Compensation Footnote", "label": "Adjustment to Non-PEO NEO Compensation Footnote [Text Block]" } } }, "auth_ref": [ "r845" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AdjToPeoCompFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Adjustment To PEO Compensation, Footnote", "label": "Adjustment To PEO Compensation, Footnote [Text Block]" } } }, "auth_ref": [ "r845" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based compensation", "label": "APIC, Share-Based Payment Arrangement, Increase for Cost Recognition", "documentation": "Amount of increase to additional paid-in capital (APIC) for recognition of cost for award under share-based payment arrangement." } } }, "auth_ref": [ "r43", "r44", "r429" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Adjustments to reconcile net earnings to net cash provided by operating activities:", "label": "Adjustments to Reconcile Net Income (Loss) to Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "ecd_AggtChngPnsnValInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtChngPnsnValInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table", "label": "Aggregate Change in Present Value of Accumulated Benefit for All Pension Plans Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r878" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Amount", "label": "Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r804", "r814", "r824", "r856" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtErrCompNotYetDeterminedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Erroneous Compensation Not Yet Determined", "label": "Aggregate Erroneous Compensation Not Yet Determined [Text Block]" } } }, "auth_ref": [ "r807", "r817", "r827", "r859" ] }, "ecd_AggtPnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AggtPnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Pension Adjustments Service Cost", "label": "Aggregate Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r879" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllAdjToCompMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Adjustments to Compensation", "label": "All Adjustments to Compensation [Member]" } } }, "auth_ref": [ "r845" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllExecutiveCategoriesMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Executive Categories", "label": "All Executive Categories [Member]" } } }, "auth_ref": [ "r852" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllIndividualsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "All Individuals", "label": "All Individuals [Member]" } } }, "auth_ref": [ "r808", "r818", "r828", "r852", "r860", "r864", "r872" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AllTradingArrangementsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "All Trading Arrangements", "label": "All Trading Arrangements [Member]" } } }, "auth_ref": [ "r870" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivable", "crdr": "credit", "calculation": { "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails": { "parentTag": "us-gaap_AccountsReceivableNet", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails", "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Less: allowance for credit losses", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r139", "r239", "r273", "r276", "r278", "r990" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRollforward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AllowanceForDoubtfulAccountsReceivableRollforward", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "label": "Accounts Receivable, Allowance for Credit Loss [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "AmendmentFlag", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Amendment Flag", "label": "Amendment Flag", "documentation": "Boolean flag that is true when the XBRL content amends previously-filed or accepted submission." } } }, "auth_ref": [] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.apog.com/role/EarningsperShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)", "label": "Antidilutive Securities Excluded from Computation of Earnings Per Share, Amount", "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." } } }, "auth_ref": [ "r196" ] }, "apog_ArchitecturalFramingSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ArchitecturalFramingSegmentMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Framing Systems", "label": "Architectural Framing Segment [Member]", "documentation": "Architectural Framing Segment [Member]" } } }, "auth_ref": [] }, "apog_ArchitecturalGlassMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ArchitecturalGlassMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Glass", "label": "Architectural Glass [Member]", "documentation": "Architectural Glass" } } }, "auth_ref": [] }, "apog_ArchitecturalServicesSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ArchitecturalServicesSegmentMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Services", "label": "Architectural Services Segment [Member]", "documentation": "Architectural Services segment [Member]" } } }, "auth_ref": [] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Assets", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total assets", "label": "Assets", "documentation": "Amount of asset recognized for present right to economic benefit." } } }, "auth_ref": [ "r106", "r116", "r132", "r168", "r200", "r207", "r226", "r230", "r270", "r345", "r346", "r348", "r349", "r350", "r351", "r352", "r354", "r355", "r489", "r491", "r519", "r585", "r665", "r731", "r732", "r779", "r795", "r950", "r951", "r980" ] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Assets", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current assets", "label": "Assets, Current", "documentation": "Amount of asset recognized for present right to economic benefit, classified as current." } } }, "auth_ref": [ "r126", "r142", "r168", "r270", "r345", "r346", "r348", "r349", "r350", "r351", "r352", "r354", "r355", "r489", "r491", "r519", "r779", "r950", "r951", "r980" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current assets", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "apog_August2025Member": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "August2025Member", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "August 2025", "label": "August 2025 [Member]", "documentation": "August 2025 [Member]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized Cost", "totalLabel": "Total", "label": "Debt Securities, Available-for-Sale, Amortized Cost", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r241", "r282", "r584" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Due after one year through five years", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, after Year One Through Five", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r924" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Due after one year through five years", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, after Year One Through Five", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in second through fifth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r249", "r582" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAmortizedCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAmortizedCostAbstract", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized Cost", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesFairValueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesFairValueAbstract", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated Fair Value", "label": "Debt Securities, Available-for-Sale, Fair Value, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Due within one year", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One", "documentation": "Amortized cost of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r923" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Due within one year", "label": "Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One", "documentation": "Fair value of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale), with single maturity date and allocated without single maturity date, maturing in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r248", "r581" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAmortizedCostandEstimatedFairValuesofInvestmentsbyContractualMaturityDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated Fair Value", "totalLabel": "Total", "label": "Debt Securities, Available-for-Sale", "documentation": "Amount of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r242", "r282", "r506", "r576", "r767", "r771", "r919", "r964", "r965", "r966" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise Price", "label": "Award Exercise Price" } } }, "auth_ref": [ "r867" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardGrantDateFairValue", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value as of Grant Date", "label": "Award Grant Date Fair Value" } } }, "auth_ref": [ "r868" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "auth_ref": [ "r863" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgHowMnpiCnsdrdTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing, How MNPI Considered", "label": "Award Timing, How MNPI Considered [Text Block]" } } }, "auth_ref": [ "r863" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Method", "label": "Award Timing Method [Text Block]" } } }, "auth_ref": [ "r863" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiCnsdrdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Considered", "label": "Award Timing MNPI Considered [Flag]" } } }, "auth_ref": [ "r863" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgMnpiDiscTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing MNPI Disclosure", "label": "Award Timing MNPI Disclosure [Text Block]" } } }, "auth_ref": [ "r863" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardTmgPredtrmndFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Timing Predetermined", "label": "Award Timing Predetermined [Flag]" } } }, "auth_ref": [ "r863" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "AwardTypeAxis", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Axis]", "label": "Award Type [Axis]", "documentation": "Information by type of award under share-based payment arrangement." } } }, "auth_ref": [ "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Securities", "label": "Award Underlying Securities Amount" } } }, "auth_ref": [ "r866" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Awards Close in Time to MNPI Disclosures, Individual Name" } } }, "auth_ref": [ "r865" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures", "label": "Awards Close in Time to MNPI Disclosures [Table]" } } }, "auth_ref": [ "r864" ] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "AwardsCloseToMnpiDiscTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Awards Close in Time to MNPI Disclosures, Table", "label": "Awards Close in Time to MNPI Disclosures [Table Text Block]" } } }, "auth_ref": [ "r864" ] }, "apog_BankOfMontrealMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "BankOfMontrealMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Bank of Montreal", "label": "Bank of Montreal [Member]", "documentation": "Bank of Montreal" } } }, "auth_ref": [] }, "us-gaap_BaseRateMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BaseRateMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Base Rate", "label": "Base Rate [Member]", "documentation": "Minimum rate investor will accept." } } }, "auth_ref": [] }, "us-gaap_BasisOfAccountingPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BasisOfAccountingPolicyPolicyTextBlock", "presentation": [ "http://www.apog.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Basis of presentation", "label": "Basis of Accounting, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy for basis of accounting, or basis of presentation, used to prepare the financial statements (for example, US Generally Accepted Accounting Principles, Other Comprehensive Basis of Accounting, IFRS)." } } }, "auth_ref": [] }, "us-gaap_BusinessAcquisitionAcquireeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAcquireeDomain", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition, Acquiree [Domain]", "label": "Business Acquisition, Acquiree [Domain]", "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." } } }, "auth_ref": [ "r298", "r299", "r300", "r301", "r302", "r486", "r761", "r762" ] }, "us-gaap_BusinessAcquisitionAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessAcquisitionAxis", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Business Acquisition [Axis]", "label": "Business Acquisition [Axis]", "documentation": "Information by business combination or series of individually immaterial business combinations." } } }, "auth_ref": [ "r45", "r46", "r298", "r299", "r300", "r301", "r302", "r486", "r761", "r762" ] }, "us-gaap_BusinessCombinationConsiderationTransferred1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "BusinessCombinationConsiderationTransferred1", "crdr": "credit", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Initial purchase price", "label": "Business Combination, Consideration Transferred", "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." } } }, "auth_ref": [ "r0", "r1", "r10" ] }, "apog_CanadianCreditFacilitiesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "CanadianCreditFacilitiesMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Canadian Credit Facilities", "label": "Canadian Credit Facilities [Member]", "documentation": "Canadian Credit Facilities" } } }, "auth_ref": [] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CapitalExpendituresIncurredButNotYetPaid", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Capital expenditures in accounts payable", "label": "Capital Expenditures Incurred but Not yet Paid", "documentation": "Future cash outflow to pay for purchases of fixed assets that have occurred." } } }, "auth_ref": [ "r23", "r24", "r25" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashAndCashEquivalentsAtCarryingValue", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cash and cash equivalents", "label": "Cash and Cash Equivalents, at Carrying Value", "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." } } }, "auth_ref": [ "r22", "r128", "r719" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash and cash equivalents at beginning of period", "periodEndLabel": "Cash and cash equivalents at end of period", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents", "documentation": "Amount of cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage. Excludes amount for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r22", "r88", "r165" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Increase (decrease) in cash and cash equivalents", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Including Exchange Rate Effect", "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." } } }, "auth_ref": [ "r2", "r88" ] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChangedPeerGroupFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Changed Peer Group, Footnote", "label": "Changed Peer Group, Footnote [Text Block]" } } }, "auth_ref": [ "r843" ] }, "ecd_ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValAsOfVstngDtOfPrrYrEqtyAwrdsVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year", "label": "Change in Fair Value as of Vesting Date of Prior Year Equity Awards Vested in Covered Year [Member]" } } }, "auth_ref": [ "r840" ] }, "ecd_ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ChngInFrValOfOutsdngAndUnvstdEqtyAwrdsGrntdInPrrYrsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested", "label": "Year-over-Year Change in Fair Value of Equity Awards Granted in Prior Years That are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r838" ] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CityAreaCode", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "City Area Code", "label": "City Area Code", "documentation": "Area code of city" } } }, "auth_ref": [] }, "us-gaap_ClassOfStockLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ClassOfStockLineItems", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Class of Stock [Line Items]", "label": "Class of Stock [Line Items]", "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." } } }, "auth_ref": [ "r134", "r135", "r136", "r202", "r386", "r387", "r388", "r390", "r393", "r398", "r400", "r627", "r628", "r629", "r630", "r750", "r882", "r902" ] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Amount", "label": "Company Selected Measure Amount" } } }, "auth_ref": [ "r844" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CoSelectedMeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Company Selected Measure Name", "label": "Company Selected Measure Name" } } }, "auth_ref": [ "r844" ] }, "us-gaap_CommitmentsAndContingencies": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingencies", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 7.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Commitments and contingent liabilities (Note 6)", "label": "Commitments and Contingencies", "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." } } }, "auth_ref": [ "r61", "r109", "r586", "r651" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommitmentsAndContingenciesDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilities" ], "lang": { "en-us": { "role": { "verboseLabel": "Commitments and Contingent Liabilities", "label": "Commitments and Contingencies Disclosure [Text Block]", "documentation": "The entire disclosure for commitments and contingencies." } } }, "auth_ref": [ "r96", "r336", "r337", "r714", "r937", "r945" ] }, "us-gaap_CommodityOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommodityOptionMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aluminum hedging contract", "label": "Commodity Option [Member]", "documentation": "Option contract in which the underlying asset is a commodity." } } }, "auth_ref": [] }, "us-gaap_CommonStockDividendsPerShareCashPaid": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockDividendsPerShareCashPaid", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends paid (in usd per share)", "label": "Common Stock, Dividends, Per Share, Cash Paid", "documentation": "Aggregate dividends paid during the period for each share of common stock outstanding." } } }, "auth_ref": [ "r102" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockMember", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock at Par Value", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r783", "r784", "r785", "r787", "r788", "r789", "r792", "r906", "r907", "r909", "r960", "r1021", "r1024" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, par value (in usd per share)", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r63" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, authorized (in shares)", "label": "Common Stock, Shares Authorized", "documentation": "The maximum number of common shares permitted to be issued by an entity's charter and bylaws." } } }, "auth_ref": [ "r63", "r652" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, issued (in shares)", "label": "Common Stock, Shares, Issued", "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." } } }, "auth_ref": [ "r63" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock, outstanding (in shares)", "label": "Common Stock, Shares, Outstanding", "documentation": "Number of shares of common stock outstanding. Common stock represent the ownership interest in a corporation." } } }, "auth_ref": [ "r12", "r63", "r652", "r671", "r1024", "r1025" ] }, "us-gaap_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CommonStockValue", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 21,945,986 and 22,089,265, respectively", "label": "Common Stock, Value, Issued", "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." } } }, "auth_ref": [ "r63", "r588", "r779" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsCoSelectedMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Company Selected Measure", "label": "Compensation Actually Paid vs. Company Selected Measure [Text Block]" } } }, "auth_ref": [ "r849" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsNetIncomeTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Net Income", "label": "Compensation Actually Paid vs. Net Income [Text Block]" } } }, "auth_ref": [ "r848" ] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsOtherMeasureTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Other Measure", "label": "Compensation Actually Paid vs. Other Measure [Text Block]" } } }, "auth_ref": [ "r850" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "CompActuallyPaidVsTotalShareholderRtnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Actually Paid vs. Total Shareholder Return", "label": "Compensation Actually Paid vs. Total Shareholder Return [Text Block]" } } }, "auth_ref": [ "r847" ] }, "apog_CompaniesBacklogRelatedToSales": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "CompaniesBacklogRelatedToSales", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Companies backlog related to sales", "label": "Companies Backlog Related to Sales", "documentation": "Companies backlog related to sales." } } }, "auth_ref": [] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ComprehensiveIncomeNetOfTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total comprehensive earnings", "label": "Comprehensive Income (Loss), Net of Tax, Attributable to Parent", "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." } } }, "auth_ref": [ "r19", "r152", "r154", "r159", "r578", "r598", "r599" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Axis]", "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r114", "r170", "r200", "r209", "r224", "r225", "r226", "r227", "r228", "r230", "r231", "r232", "r345", "r346", "r347", "r348", "r350", "r351", "r352", "r353", "r354", "r731", "r732", "r950", "r951" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Domain]", "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r114", "r170", "r200", "r209", "r224", "r225", "r226", "r227", "r228", "r230", "r231", "r232", "r345", "r346", "r347", "r348", "r350", "r351", "r352", "r353", "r354", "r731", "r732", "r950", "r951" ] }, "us-gaap_ContractTerminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractTerminationMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Contract termination costs", "label": "Contract Termination [Member]", "documentation": "Termination of a contract associated with exit from or disposal of business activities or restructurings pursuant to a plan." } } }, "auth_ref": [ "r741", "r742", "r743", "r744" ] }, "us-gaap_ContractWithCustomerAssetAndLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetAndLiabilityTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Other Contract-Related Disclosures", "label": "Contract with Customer, Contract Asset, Contract Liability, and Receivable [Table Text Block]", "documentation": "Tabular disclosure of receivable, contract asset, and contract liability from contract with customer. Includes, but is not limited to, change in contract asset and contract liability." } } }, "auth_ref": [ "r954" ] }, "us-gaap_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerAssetNetCurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Contract assets", "label": "Contract with Customer, Asset, after Allowance for Credit Loss, Current", "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." } } }, "auth_ref": [ "r402", "r404", "r416" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Contract liabilities", "label": "Contract with Customer, Liability, Current", "documentation": "Amount of obligation to transfer good or service to customer for which consideration has been received or is receivable, classified as current." } } }, "auth_ref": [ "r402", "r403", "r416" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOtherContractRelatedDisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognized related to contract liabilities from prior year-end", "label": "Contract with Customer, Liability, Revenue Recognized", "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." } } }, "auth_ref": [ "r417" ] }, "us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOtherContractRelatedDisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue recognized related to prior satisfaction of performance obligations", "label": "Contract with Customer, Performance Obligation Satisfied in Previous Period", "documentation": "Amount of revenue recognized from performance obligation satisfied or partially satisfied in previous reporting periods. Includes, but is not limited to, change in transaction price." } } }, "auth_ref": [ "r411" ] }, "us-gaap_CorporateAndOtherMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CorporateAndOtherMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Corporate and Other", "terseLabel": "Corporate & Other", "label": "Corporate Segment and Other Operating Segment [Member]", "documentation": "Component of entity providing financial and operational oversight and administrative support considered to be operating segment and operating segment, classified as other. Excludes intersegment elimination and reconciling item." } } }, "auth_ref": [ "r912" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfGoodsAndServicesSold", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of sales", "label": "Cost of Goods and Services Sold", "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." } } }, "auth_ref": [ "r77", "r78", "r574" ] }, "us-gaap_CostOfSalesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CostOfSalesMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Cost of Sales", "label": "Cost of Sales [Member]", "documentation": "Primary financial statement caption encompassing cost of sales." } } }, "auth_ref": [] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover [Abstract]", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_CreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility [Axis]", "label": "Credit Facility [Axis]", "documentation": "Information by type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r344", "r948" ] }, "us-gaap_CreditFacilityDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "CreditFacilityDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credit Facility [Domain]", "label": "Credit Facility [Domain]", "documentation": "Type of credit facility. Credit facilities provide capital to borrowers without the need to structure a loan for each borrowing." } } }, "auth_ref": [ "r344", "r948", "r949" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "CurrentFiscalYearEndDate", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Current Fiscal Year End Date", "label": "Current Fiscal Year End Date", "documentation": "End date of current fiscal year in the format --MM-DD." } } }, "auth_ref": [] }, "apog_DebtCovenantAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtCovenantAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Covenant [Axis]", "label": "Debt Covenant [Axis]", "documentation": "Debt Covenant" } } }, "auth_ref": [] }, "apog_DebtCovenantDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtCovenantDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Covenant [Domain]", "label": "Debt Covenant [Domain]", "documentation": "Debt Covenant [Domain]" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Debt Disclosure [Abstract]", "label": "Debt Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/Debt" ], "lang": { "en-us": { "role": { "verboseLabel": "Debt", "label": "Debt Disclosure [Text Block]", "documentation": "The entire disclosure for information about short-term and long-term debt arrangements, which includes amounts of borrowings under each line of credit, note payable, commercial paper issue, bonds indenture, debenture issue, own-share lending arrangements and any other contractual agreement to repay funds, and about the underlying arrangements, rationale for a classification as long-term, including repayment terms, interest rates, collateral provided, restrictions on use of assets and activities, whether or not in compliance with debt covenants, and other matters important to users of the financial statements, such as the effects of refinancing and noncompliance with debt covenants." } } }, "auth_ref": [ "r97", "r166", "r307", "r308", "r309", "r310", "r311", "r343", "r344", "r356", "r362", "r363", "r364", "r365", "r366", "r367", "r372", "r379", "r380", "r382", "r531" ] }, "apog_DebtFeesAxisAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtFeesAxisAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt, Fees Axis [Axis]", "label": "Debt, Fees Axis [Axis]", "documentation": "Debt, Fees Axis" } } }, "auth_ref": [] }, "apog_DebtFeesAxisDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtFeesAxisDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt, Fees Axis [Domain]", "label": "Debt, Fees Axis [Domain]", "documentation": "Debt, Fees Axis [Domain]" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument [Axis]", "label": "Debt Instrument [Axis]", "documentation": "Information by type of debt instrument, including, but not limited to, draws against credit facilities." } } }, "auth_ref": [ "r15", "r56", "r57", "r107", "r108", "r170", "r357", "r358", "r359", "r360", "r361", "r363", "r368", "r369", "r370", "r371", "r373", "r374", "r375", "r376", "r377", "r378", "r745", "r746", "r747", "r748", "r749", "r778", "r903", "r938", "r939", "r940", "r978", "r979" ] }, "us-gaap_DebtInstrumentBasisSpreadOnVariableRate1": { "xbrltype": "percentItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentBasisSpreadOnVariableRate1", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Basis spread", "label": "Debt Instrument, Basis Spread on Variable Rate", "documentation": "Percentage points added to the reference rate to compute the variable rate on the debt instrument." } } }, "auth_ref": [] }, "apog_DebtInstrumentCovenantAcquisitionHoliday": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtInstrumentCovenantAcquisitionHoliday", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Acquisition holiday", "label": "Debt Instrument, Covenant, Acquisition Holiday", "documentation": "Debt Instrument, Covenant, Acquisition Holiday" } } }, "auth_ref": [] }, "apog_DebtInstrumentCovenantEBITDAToInterestExpenseRatioMinimum": { "xbrltype": "pureItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtInstrumentCovenantEBITDAToInterestExpenseRatioMinimum", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum ratio of EBITDA-to-interest expense", "label": "Debt Instrument, Covenant, EBITDA To Interest Expense Ratio, Minimum", "documentation": "Debt Instrument, Covenant, EBITDA To Interest Expense Ratio, Minimum" } } }, "auth_ref": [] }, "apog_DebtInstrumentCovenantNetDebtToEBITDARatioMaximum": { "xbrltype": "pureItemType", "nsuri": "http://www.apog.com/20240831", "localname": "DebtInstrumentCovenantNetDebtToEBITDARatioMaximum", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum debt-to-EBITDA ratio", "label": "Debt Instrument, Covenant, Net Debt To EBITDA Ratio, Maximum", "documentation": "Debt Instrument, Covenant, Net Debt To EBITDA Ratio, Maximum" } } }, "auth_ref": [] }, "us-gaap_DebtInstrumentNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentNameDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Instrument, Name [Domain]", "label": "Debt Instrument, Name [Domain]", "documentation": "The name for the particular debt instrument or borrowing that distinguishes it from other debt instruments or borrowings, including draws against credit facilities." } } }, "auth_ref": [ "r15", "r170", "r357", "r358", "r359", "r360", "r361", "r363", "r368", "r369", "r370", "r371", "r373", "r374", "r375", "r376", "r377", "r378", "r745", "r746", "r747", "r748", "r749", "r778", "r903", "r938", "r939", "r940", "r978", "r979" ] }, "us-gaap_DebtInstrumentTerm": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtInstrumentTerm", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt instrument term", "label": "Debt Instrument, Term", "documentation": "Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days." } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedGain": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedGain", "crdr": "credit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross Unrealized Gains", "label": "Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Gain", "documentation": "Amount of cumulative unrecognized gain on investment in debt security measured at amortized cost (held-to-maturity) and investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r921", "r925" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedLoss", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Gross Unrealized Losses", "label": "Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Loss", "documentation": "Amount of cumulative unrecognized loss on investment in debt security measured at amortized cost (held-to-maturity) and investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r922", "r926" ] }, "us-gaap_DebtSecuritiesAvailableForSaleTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DebtSecuritiesAvailableForSaleTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Securities, Available-for-Sale [Table]", "label": "Debt Securities, Available-for-Sale [Table]", "documentation": "Disclosure of information about investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251" ] }, "us-gaap_DeferredCostsCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredCostsCurrentAndNoncurrent", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred costs", "label": "Deferred Costs", "documentation": "The carrying amount of deferred costs." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 12.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Deferred income taxes", "label": "Deferred Income Tax Expense (Benefit)", "documentation": "Amount of deferred income tax expense (benefit) pertaining to income (loss) from continuing operations." } } }, "auth_ref": [ "r8", "r120", "r905" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DepreciationDepletionAndAmortization", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Depreciation and amortization", "label": "Depreciation, Depletion and Amortization", "documentation": "The aggregate expense recognized in the current period that allocates the cost of tangible assets, intangible assets, or depleting assets to periods that benefit from use of the assets." } } }, "auth_ref": [ "r8", "r200", "r212", "r230", "r731", "r732" ] }, "us-gaap_DerivativeAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeAssets", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative asset", "label": "Derivative Asset", "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." } } }, "auth_ref": [ "r143", "r144", "r506", "r507", "r514", "r518", "r635", "r636", "r637", "r638", "r639", "r640", "r641", "r642", "r643", "r644", "r658", "r659", "r700", "r703", "r706", "r707", "r708", "r709", "r724", "r767", "r771", "r785", "r964", "r965", "r966", "r1022" ] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Contract [Domain]", "label": "Derivative Contract [Domain]", "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." } } }, "auth_ref": [ "r642", "r644", "r657", "r658", "r659", "r661", "r662", "r663", "r664", "r666", "r667", "r668", "r669", "r679", "r680", "r681", "r682", "r685", "r686", "r687", "r688", "r700", "r701", "r706", "r708", "r783", "r785", "r967", "r968", "r969", "r970", "r971", "r972", "r974", "r975" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instrument [Axis]", "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r48", "r50", "r51", "r105", "r642", "r644", "r657", "r658", "r659", "r661", "r662", "r663", "r664", "r666", "r667", "r668", "r669", "r679", "r680", "r681", "r682", "r685", "r686", "r687", "r688", "r700", "r701", "r706", "r708", "r724", "r783", "r785", "r967", "r968", "r969", "r970", "r971", "r972", "r974", "r975" ] }, "us-gaap_DerivativeLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeLiabilities", "crdr": "credit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Aluminum hedging contract", "label": "Derivative Liability", "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." } } }, "auth_ref": [ "r143", "r144", "r506", "r507", "r514", "r518", "r635", "r636", "r637", "r638", "r640", "r641", "r642", "r643", "r644", "r666", "r668", "r669", "r701", "r702", "r703", "r706", "r707", "r708", "r709", "r724", "r964", "r965", "r966", "r1022" ] }, "us-gaap_DerivativeNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativeNotionalAmount", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Notional value", "label": "Derivative, Notional Amount", "documentation": "Nominal or face amount used to calculate payment on derivative." } } }, "auth_ref": [ "r958", "r959" ] }, "us-gaap_DerivativesFairValueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DerivativesFairValueLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Derivatives, Fair Value [Line Items]", "label": "Derivatives, Fair Value [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_DesignatedAsHedgingInstrumentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DesignatedAsHedgingInstrumentMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Designated as Hedging Instrument", "label": "Designated as Hedging Instrument [Member]", "documentation": "Derivative instrument designated as hedging instrument under Generally Accepted Accounting Principles (GAAP)." } } }, "auth_ref": [ "r13" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueLineItems", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue [Line Items]", "label": "Disaggregation of Revenue [Line Items]", "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." } } }, "auth_ref": [ "r415", "r751", "r752", "r753", "r754", "r755", "r756", "r757" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTable", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregation of Revenue [Table]", "label": "Disaggregation of Revenue [Table]", "documentation": "Disclosure of information about disaggregation of revenue into categories depicting how nature, amount, timing, and uncertainty of revenue and cash flows are affected by economic factor." } } }, "auth_ref": [ "r415", "r751", "r752", "r753", "r754", "r755", "r756", "r757" ] }, "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Disaggregates Total Revenue by Timing of Recognition", "label": "Disaggregation of Revenue [Table Text Block]", "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." } } }, "auth_ref": [ "r955" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock", "presentation": [ "http://www.apog.com/role/ShareBasedCompensation" ], "lang": { "en-us": { "role": { "verboseLabel": "Share-Based Compensation", "label": "Share-Based Payment Arrangement [Text Block]", "documentation": "The entire disclosure for share-based payment arrangement." } } }, "auth_ref": [ "r427", "r432", "r459", "r460", "r462", "r764" ] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DividendsCommonStockCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "DividendsCommonStockCash", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Cash dividends", "label": "Dividends, Common Stock, Cash", "documentation": "Amount of paid and unpaid common stock dividends declared with the form of settlement in cash." } } }, "auth_ref": [ "r102" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalPeriodFocus", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Period Focus", "label": "Document Fiscal Period Focus", "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." } } }, "auth_ref": [] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentFiscalYearFocus", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Fiscal Year Focus", "label": "Document Fiscal Year Focus", "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." } } }, "auth_ref": [] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentPeriodEndDate", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Period End Date", "label": "Document Period End Date", "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." } } }, "auth_ref": [] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentQuarterlyReport", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Quarterly Report", "label": "Document Quarterly Report", "documentation": "Boolean flag that is true only for a form used as an quarterly report." } } }, "auth_ref": [ "r799" ] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentTransitionReport", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Transition Report", "label": "Document Transition Report", "documentation": "Boolean flag that is true only for a form used as a transition report." } } }, "auth_ref": [ "r831" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "DocumentType", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Document Type", "label": "Document Type", "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'." } } }, "auth_ref": [] }, "ecd_DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "DvddsOrOthrErngsPdOnEqtyAwrdsNtOthrwsRflctdInTtlCompForCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year", "label": "Dividends or Other Earnings Paid on Equity Awards not Otherwise Reflected in Total Compensation for Covered Year [Member]" } } }, "auth_ref": [ "r842" ] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share [Abstract]", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Basic earnings per share (in usd per share)", "label": "Earnings Per Share, Basic", "documentation": "The amount of net income (loss) for the period per each share of common stock or unit outstanding during the reporting period." } } }, "auth_ref": [ "r160", "r176", "r177", "r178", "r179", "r180", "r181", "r186", "r188", "r193", "r194", "r195", "r199", "r484", "r488", "r503", "r504", "r579", "r600", "r725" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted earnings per share (in usd per share)", "label": "Earnings Per Share, Diluted", "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." } } }, "auth_ref": [ "r160", "r176", "r177", "r178", "r179", "r180", "r181", "r188", "r193", "r194", "r195", "r199", "r484", "r488", "r503", "r504", "r579", "r600", "r725" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EarningsPerShareTextBlock", "presentation": [ "http://www.apog.com/role/EarningsperShare" ], "lang": { "en-us": { "role": { "verboseLabel": "Earnings Per Share", "label": "Earnings Per Share [Text Block]", "documentation": "The entire disclosure for earnings per share." } } }, "auth_ref": [ "r185", "r196", "r197", "r198" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Effect of exchange rates on cash", "label": "Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations", "documentation": "Amount of increase (decrease) from effect of exchange rate changes on cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; held in foreign currencies. Excludes amounts for disposal group and discontinued operations. Cash includes, but is not limited to, currency on hand, demand deposits with banks or financial institutions, and other accounts with general characteristics of demand deposits. Cash equivalents include, but are not limited to, short-term, highly liquid investments that are both readily convertible to known amounts of cash and so near their maturity that they present insignificant risk of changes in value because of changes in interest rates." } } }, "auth_ref": [ "r520" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeRelatedLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued compensation and benefits", "label": "Employee-related Liabilities, Current", "documentation": "Total of the carrying values as of the balance sheet date of obligations incurred through that date and payable for obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits. Used to reflect the current portion of the liabilities (due within one year or within the normal operating cycle if longer)." } } }, "auth_ref": [ "r57" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average period", "label": "Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition", "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." } } }, "auth_ref": [ "r461" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Total unrecognized compensation cost related to nonvested share", "label": "Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount", "documentation": "Amount of cost to be recognized for nonvested award under share-based payment arrangement. Excludes share and unit options." } } }, "auth_ref": [ "r956" ] }, "us-gaap_EmployeeSeveranceMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeSeveranceMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Termination benefits", "label": "Employee Severance [Member]", "documentation": "Termination of an employee associated with exit from or disposal of business activities or restructurings pursuant to a plan." } } }, "auth_ref": [] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EmployeeStockOptionMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Employee Stock Option", "label": "Share-Based Payment Arrangement, Option [Member]", "documentation": "Share-based payment arrangement granting right, subject to vesting and other restrictions, to purchase or sell certain number of shares at predetermined price for specified period of time." } } }, "auth_ref": [] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressAddressLine1", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Address Line One", "label": "Entity Address, Address Line One", "documentation": "Address Line 1 such as Attn, Building Name, Street Name" } } }, "auth_ref": [] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressCityOrTown", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, City or Town", "label": "Entity Address, City or Town", "documentation": "Name of the City or Town" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressPostalZipCode", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, Postal Zip Code", "label": "Entity Address, Postal Zip Code", "documentation": "Code for the postal or zip code" } } }, "auth_ref": [] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityAddressStateOrProvince", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Address, State or Province", "label": "Entity Address, State or Province", "documentation": "Name of the state or province." } } }, "auth_ref": [] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCentralIndexKey", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Central Index Key", "label": "Entity Central Index Key", "documentation": "A unique 10-digit SEC-issued value to identify entities that have filed disclosures with the SEC. It is commonly abbreviated as CIK." } } }, "auth_ref": [ "r797" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCommonStockSharesOutstanding", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Common Stock, Shares Outstanding", "label": "Entity Common Stock, Shares Outstanding", "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." } } }, "auth_ref": [] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityCurrentReportingStatus", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Current Reporting Status", "label": "Entity Current Reporting Status", "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." } } }, "auth_ref": [] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityEmergingGrowthCompany", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Emerging Growth Company", "label": "Entity Emerging Growth Company", "documentation": "Indicate if registrant meets the emerging growth company criteria." } } }, "auth_ref": [ "r797" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFileNumber", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity File Number", "label": "Entity File Number", "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." } } }, "auth_ref": [] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityFilerCategory", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Filer Category", "label": "Entity Filer Category", "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." } } }, "auth_ref": [ "r797" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityIncorporationStateCountryCode", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Incorporation, State or Country Code", "label": "Entity Incorporation, State or Country Code", "documentation": "Two-character EDGAR code representing the state or country of incorporation." } } }, "auth_ref": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityInteractiveDataCurrent", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Interactive Data Current", "label": "Entity Interactive Data Current", "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)." } } }, "auth_ref": [ "r881" ] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityRegistrantName", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Registrant Name", "label": "Entity Registrant Name", "documentation": "The exact name of the entity filing the report as specified in its charter, which is required by forms filed with the SEC." } } }, "auth_ref": [ "r797" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityShellCompany", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Shell Company", "label": "Entity Shell Company", "documentation": "Boolean flag that is true when the registrant is a shell company as defined in Rule 12b-2 of the Exchange Act." } } }, "auth_ref": [ "r797" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntitySmallBusiness", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Small Business", "label": "Entity Small Business", "documentation": "Indicates that the company is a Smaller Reporting Company (SRC)." } } }, "auth_ref": [ "r797" ] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "EntityTaxIdentificationNumber", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Entity Tax Identification Number", "label": "Entity Tax Identification Number", "documentation": "The Tax Identification Number (TIN), also known as an Employer Identification Number (EIN), is a unique 9-digit value assigned by the IRS." } } }, "auth_ref": [ "r797" ] }, "ecd_EqtyAwrdsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments, Footnote", "label": "Equity Awards Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r836" ] }, "ecd_EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsExclgValRprtdInSummryCompstnTblMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments, Excluding Value Reported in Compensation Table", "label": "Equity Awards Adjustments, Excluding Value Reported in the Compensation Table [Member]" } } }, "auth_ref": [ "r877" ] }, "ecd_EqtyAwrdsAdjsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsAdjsMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Awards Adjustments", "label": "Equity Awards Adjustments [Member]" } } }, "auth_ref": [ "r877" ] }, "ecd_EqtyAwrdsInSummryCompstnTblForAplblYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EqtyAwrdsInSummryCompstnTblForAplblYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table", "label": "Aggregate Grant Date Fair Value of Equity Award Amounts Reported in Summary Compensation Table [Member]" } } }, "auth_ref": [ "r877" ] }, "us-gaap_EquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityAbstract", "lang": { "en-us": { "role": { "label": "Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "EquityComponentDomain", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Component [Domain]", "label": "Equity Component [Domain]", "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." } } }, "auth_ref": [ "r12", "r123", "r155", "r156", "r157", "r171", "r172", "r173", "r175", "r180", "r182", "r184", "r201", "r271", "r272", "r304", "r401", "r474", "r475", "r481", "r482", "r483", "r485", "r487", "r488", "r494", "r495", "r496", "r497", "r498", "r499", "r502", "r521", "r523", "r524", "r525", "r526", "r527", "r532", "r533", "r537", "r596", "r617", "r618", "r619", "r633", "r691" ] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "EquityValuationAssumptionDifferenceFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Valuation Assumption Difference, Footnote", "label": "Equity Valuation Assumption Difference, Footnote [Text Block]" } } }, "auth_ref": [ "r846" ] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompAnalysisTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneous Compensation Analysis", "label": "Erroneous Compensation Analysis [Text Block]" } } }, "auth_ref": [ "r804", "r814", "r824", "r856" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ErrCompRecoveryTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Erroneously Awarded Compensation Recovery", "label": "Erroneously Awarded Compensation Recovery [Table]" } } }, "auth_ref": [ "r801", "r811", "r821", "r853" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Category:", "label": "Executive Category [Axis]" } } }, "auth_ref": [ "r852" ] }, "us-gaap_ExtendedProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ExtendedProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Extended Product Warranty Accrual", "documentation": "Amount as of the balance sheet date of the aggregate extended product warranty liability. Does not include the ending balance for the standard product warranty liability." } } }, "auth_ref": [ "r946", "r947" ] }, "apog_ExtendedProductWarrantyAccrualAdditionsChargedToCostsAndExpenses": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ExtendedProductWarrantyAccrualAdditionsChargedToCostsAndExpenses", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions charged to costs and expenses", "label": "Extended Product Warranty Accrual, Additions Charged To Costs And Expenses", "documentation": "Extended Product Warranty Accrual, Additions Charged To Costs And Expenses" } } }, "auth_ref": [] }, "apog_ExtendedProductWarrantyAccrualWriteoffAfterRecovery": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ExtendedProductWarrantyAccrualWriteoffAfterRecovery", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Deductions from reserve, net of recoveries", "label": "Extended Product Warranty Accrual, Writeoff, after Recovery", "documentation": "Extended Product Warranty Accrual, Writeoff, after Recovery" } } }, "auth_ref": [] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "label": "Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]", "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." } } }, "auth_ref": [ "r506", "r507", "r514", "r767" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value, Recurring and Nonrecurring [Table]", "label": "Fair Value, Recurring and Nonrecurring [Table]", "documentation": "Disclosure of information about asset and liability measured at fair value on recurring and nonrecurring basis." } } }, "auth_ref": [ "r506", "r507", "r514", "r767" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Fair Value Measurements", "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]", "documentation": "Tabular disclosure of financial instrument measured at fair value on recurring or nonrecurring basis. Includes, but is not limited to, instrument classified in shareholders' equity." } } }, "auth_ref": [ "r767", "r962", "r963", "r974" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Axis]", "label": "Fair Value Hierarchy and NAV [Axis]", "documentation": "Information by level within fair value hierarchy and fair value measured at net asset value per share as practical expedient." } } }, "auth_ref": [ "r370", "r420", "r421", "r422", "r423", "r424", "r425", "r505", "r507", "r508", "r509", "r510", "r513", "r514", "r516", "r544", "r545", "r546", "r746", "r747", "r758", "r759", "r760", "r767", "r771" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Quoted\u00a0Prices\u00a0in Active Markets (Level 1)", "label": "Fair Value, Inputs, Level 1 [Member]", "documentation": "Quoted prices in active markets for identical assets or liabilities that the reporting entity can access at the measurement date." } } }, "auth_ref": [ "r370", "r420", "r425", "r507", "r514", "r544", "r758", "r759", "r760", "r767" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other Observable Inputs (Level 2)", "label": "Fair Value, Inputs, Level 2 [Member]", "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." } } }, "auth_ref": [ "r370", "r420", "r425", "r507", "r508", "r514", "r545", "r746", "r747", "r758", "r759", "r760", "r767" ] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Value Hierarchy and NAV [Domain]", "label": "Fair Value Hierarchy and NAV [Domain]", "documentation": "Categories used to prioritize the inputs to valuation techniques to measure fair value." } } }, "auth_ref": [ "r370", "r420", "r421", "r422", "r423", "r424", "r425", "r505", "r507", "r508", "r509", "r510", "r513", "r514", "r516", "r544", "r545", "r546", "r746", "r747", "r758", "r759", "r760", "r767", "r771" ] }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "label": "Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table]", "documentation": "Disclosure of information about location and fair value of derivative instrument and nonderivative instrument designated as hedging instrument." } } }, "auth_ref": [ "r47", "r49", "r52" ] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r274", "r275", "r279", "r280", "r281", "r283", "r284", "r285", "r381", "r398", "r500", "r517", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r597", "r737", "r767", "r769", "r771", "r772", "r773", "r774", "r775", "r776", "r777", "r780", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r927", "r928", "r929", "r930", "r961", "r964", "r965", "r966", "r973", "r976" ] }, "us-gaap_ForeignExchangeForwardMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ForeignExchangeForwardMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency forward/option contract", "label": "Foreign Exchange Forward [Member]", "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." } } }, "auth_ref": [ "r658", "r663", "r668", "r681", "r687", "r704", "r705", "r706", "r785" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Disqualification of Tax Benefits, Amount", "label": "Forgone Recovery due to Disqualification of Tax Benefits, Amount" } } }, "auth_ref": [ "r808", "r818", "r828", "r860" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToExpenseOfEnforcementAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Expense of Enforcement, Amount", "label": "Forgone Recovery due to Expense of Enforcement, Amount" } } }, "auth_ref": [ "r808", "r818", "r828", "r860" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryDueToViolationOfHomeCountryLawAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery due to Violation of Home Country Law, Amount", "label": "Forgone Recovery due to Violation of Home Country Law, Amount" } } }, "auth_ref": [ "r808", "r818", "r828", "r860" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryExplanationOfImpracticabilityTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Forgone Recovery, Explanation of Impracticability", "label": "Forgone Recovery, Explanation of Impracticability [Text Block]" } } }, "auth_ref": [ "r808", "r818", "r828", "r860" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Forgone Recovery, Individual Name" } } }, "auth_ref": [ "r808", "r818", "r828", "r860" ] }, "ecd_FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "FrValAsOfPrrYrEndOfEqtyAwrdsGrntdInPrrYrsFldVstngCondsDrngCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year", "label": "Prior Year End Fair Value of Equity Awards Granted in Any Prior Year that Fail to Meet Applicable Vesting Conditions During Covered Year [Member]" } } }, "auth_ref": [ "r841" ] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 10.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Loss (gain) on disposal of property, plant and equipment", "label": "Gain (Loss) on Disposition of Property Plant Equipment", "documentation": "Amount of gain (loss) on sale or disposal of property, plant and equipment assets, including oil and gas property and timber property." } } }, "auth_ref": [ "r8" ] }, "us-gaap_GainsLossesOnExtinguishmentOfDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GainsLossesOnExtinguishmentOfDebt", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Loss on extinguishment of debt", "label": "Gain (Loss) on Extinguishment of Debt", "documentation": "Difference between the fair value of payments made and the carrying amount of debt which is extinguished prior to maturity." } } }, "auth_ref": [ "r8", "r34", "r35" ] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "Goodwill", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "label": "Goodwill", "documentation": "Amount, after accumulated impairment loss, of asset representing future economic benefit arising from other asset acquired in business combination or from joint venture formation or both, that is not individually identified and separately recognized." } } }, "auth_ref": [ "r130", "r287", "r575", "r732", "r738", "r768", "r779", "r933", "r934" ] }, "apog_GrossProceedsFromNewMarketsTaxCreditTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "GrossProceedsFromNewMarketsTaxCreditTransaction", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds received", "label": "Gross Proceeds From New Markets Tax Credit Transaction", "documentation": "Gross Proceeds From New Markets Tax Credit Transaction" } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GrossProfit", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Gross profit", "label": "Gross Profit", "documentation": "Aggregate revenue less cost of goods and services sold or operating expenses directly attributable to the revenue generation activity." } } }, "auth_ref": [ "r75", "r79", "r115", "r168", "r270", "r345", "r346", "r348", "r349", "r350", "r351", "r352", "r354", "r355", "r519", "r726", "r731", "r911", "r914", "r915", "r916", "r917", "r950" ] }, "us-gaap_GuaranteesFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "GuaranteesFairValueDisclosure", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Face value of performance bonds", "label": "Guarantees, Fair Value Disclosure", "documentation": "Fair value portion of guarantee, including, but not limited to, financial standby letter of credit, fair value guarantee, guarantee of collection of scheduled contractual cash flows from financial assets, and contracts that contingently require the guarantor to make payments or perform services." } } }, "auth_ref": [ "r962", "r963", "r973" ] }, "us-gaap_HedgingDesignationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HedgingDesignationAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Axis]", "label": "Hedging Designation [Axis]", "documentation": "Information by designation of purpose of derivative instrument." } } }, "auth_ref": [ "r13", "r493" ] }, "us-gaap_HedgingDesignationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "HedgingDesignationDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Domain]", "label": "Hedging Designation [Domain]", "documentation": "Designation of purpose of derivative instrument." } } }, "auth_ref": [ "r13" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Earnings before income taxes", "label": "Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest", "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." } } }, "auth_ref": [ "r76", "r111", "r115", "r580", "r594", "r726", "r731", "r911", "r914", "r915", "r916", "r917" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeStatementLocationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationAxis", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Axis]", "label": "Statement of Income Location, Balance [Axis]", "documentation": "Information by location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r305", "r312", "r328", "r511", "r512", "r515", "r614", "r616", "r676", "r717", "r770", "r992" ] }, "us-gaap_IncomeStatementLocationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeStatementLocationDomain", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Statement Location [Domain]", "label": "Statement of Income Location, Balance [Domain]", "documentation": "Location in statement of income where disaggregated amount has been reported." } } }, "auth_ref": [ "r312", "r328", "r511", "r512", "r515", "r614", "r616", "r676", "r717", "r770", "r992" ] }, "us-gaap_IncomeTaxContingencyLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxContingencyLineItems", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Contingency [Line Items]", "label": "Income Tax Contingency [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_IncomeTaxContingencyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxContingencyTable", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income Tax Contingency [Table]", "label": "Income Tax Contingency [Table]", "documentation": "Disclosure of information about tax positions taken in the tax returns filed or to be filed for which it is more likely than not that the tax position will not be sustained upon examination by taxing authorities and other income tax contingencies. Includes, but is not limited to, interest and penalties, reconciliation of unrecognized tax benefits, unrecognized tax benefits that would affect the effective tax rate, tax years that remain subject to examination by tax jurisdictions, and information about positions for which it is reasonably possible that amounts unrecognized will significantly change within 12 months." } } }, "auth_ref": [ "r957" ] }, "us-gaap_IncomeTaxDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Tax Disclosure [Abstract]", "label": "Income Tax Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/IncomeTaxes" ], "lang": { "en-us": { "role": { "verboseLabel": "Income Taxes", "label": "Income Tax Disclosure [Text Block]", "documentation": "The entire disclosure for income tax." } } }, "auth_ref": [ "r169", "r464", "r467", "r468", "r469", "r470", "r472", "r473", "r476", "r478", "r479", "r480", "r632", "r766" ] }, "apog_IncomeTaxExpenseAsPercentageOfEarningsBeforeIncomeTaxesPercent": { "xbrltype": "percentItemType", "nsuri": "http://www.apog.com/20240831", "localname": "IncomeTaxExpenseAsPercentageOfEarningsBeforeIncomeTaxesPercent", "presentation": [ "http://www.apog.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Income tax expense as a percentage of earnings before income taxes", "label": "Income Tax Expense As Percentage Of Earnings Before Income Taxes, Percent", "documentation": "Income Tax Expense As Percentage Of Earnings Before Income Taxes, Percent" } } }, "auth_ref": [] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncomeTaxExpenseBenefit", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_NetIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Income tax expense", "label": "Income Tax Expense (Benefit)", "documentation": "Amount of current income tax expense (benefit) and deferred income tax expense (benefit) pertaining to continuing operations." } } }, "auth_ref": [ "r117", "r121", "r183", "r184", "r200", "r215", "r230", "r466", "r467", "r477", "r601", "r766" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 13.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accounts payable", "label": "Increase (Decrease) in Accounts Payable", "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." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInAccruedIncomeTaxesPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInAccruedIncomeTaxesPayable", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 8.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Accrued income taxes", "label": "Increase (Decrease) in Income Taxes Payable", "documentation": "The increase (decrease) during the period in the amount due for taxes based on the reporting entity's earnings or attributable to the entity's income earning process (business presence) within a given jurisdiction." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerAsset", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Contract assets", "label": "Increase (Decrease) in Contract with Customer, Asset", "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." } } }, "auth_ref": [ "r899" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 11.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Contract liabilities", "label": "Increase (Decrease) in Contract with Customer, Liability", "documentation": "Amount of increase (decrease) in obligation to transfer good or service to customer for which consideration has been received or is receivable." } } }, "auth_ref": [ "r573", "r899" ] }, "us-gaap_IncreaseDecreaseInEmployeeRelatedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInEmployeeRelatedLiabilities", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 16.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accrued compensation and benefits", "label": "Increase (Decrease) in Employee Related Liabilities", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of obligations related to services received from employees, such as accrued salaries and bonuses, payroll taxes and fringe benefits." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 14.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Inventories", "label": "Increase (Decrease) in Inventories", "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." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingCapitalAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Changes in operating assets and liabilities:", "label": "Increase (Decrease) in Operating Capital [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOperatingLeaseLiability", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liability", "label": "Increase (Decrease) in Operating Lease Liability", "documentation": "Amount of increase (decrease) in obligation for operating lease." } } }, "auth_ref": [ "r885", "r899" ] }, "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInOtherOperatingCapitalNet", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 15.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other current assets and liabilities", "label": "Increase (Decrease) in Other Operating Assets and Liabilities, Net", "documentation": "Amount of increase (decrease) in operating assets after deduction of operating liabilities classified as other." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInReceivables", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Receivables", "label": "Increase (Decrease) in Receivables", "documentation": "The increase (decrease) during the reporting period in the total amount due within one year (or one operating cycle) from all parties, associated with underlying transactions that are classified as operating activities." } } }, "auth_ref": [ "r7" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "label": "Increase (Decrease) in Stockholders' Equity [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.apog.com/role/EarningsperShareDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average effect of nonvested share grants and assumed exercise of stock options", "label": "Incremental Common Shares Attributable to Dilutive Effect of Share-Based Payment Arrangements", "documentation": "Additional shares included in the calculation of diluted EPS as a result of the potentially dilutive effect of share based payment arrangements using the treasury stock method." } } }, "auth_ref": [ "r189", "r190", "r191", "r195", "r431" ] }, "apog_IncrementalTermSOFRAndCORRAAdjustmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "IncrementalTermSOFRAndCORRAAdjustmentMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Incremental Term SOFR and CORRA Adjustment", "label": "Incremental Term SOFR and CORRA Adjustment [Member]", "documentation": "Incremental Term SOFR and CORRA Adjustment" } } }, "auth_ref": [] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "IndividualAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure", "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure", "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Individual:", "label": "Individual [Axis]" } } }, "auth_ref": [ "r808", "r818", "r828", "r852", "r860", "r864", "r872" ] }, "apog_IndustrialRevenueBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "IndustrialRevenueBondsMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Industrial Revenue Bonds", "label": "Industrial Revenue Bonds [Member]", "documentation": "Industrial Revenue Bonds" } } }, "auth_ref": [] }, "ecd_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r870" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]" } } }, "auth_ref": [ "r800", "r876" ] }, "ecd_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Adopted", "label": "Insider Trading Policies and Procedures Adopted [Flag]" } } }, "auth_ref": [ "r800", "r876" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "InsiderTrdPoliciesProcNotAdoptedTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingPoliciesProc" ], "lang": { "en-us": { "role": { "terseLabel": "Insider Trading Policies and Procedures Not Adopted", "label": "Insider Trading Policies and Procedures Not Adopted [Text Block]" } } }, "auth_ref": [ "r800", "r876" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntangibleAssetsNetExcludingGoodwill", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible assets, net", "label": "Intangible Assets, Net (Excluding Goodwill)", "documentation": "Sum of the carrying amounts of all intangible assets, excluding goodwill, as of the balance sheet date, net of accumulated amortization and impairment charges." } } }, "auth_ref": [ "r297", "r935", "r936" ] }, "us-gaap_InterestCostsCapitalized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestCostsCapitalized", "crdr": "debit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Capitalized fees", "label": "Interest Costs Capitalized", "documentation": "Amount of interest capitalized during the period." } } }, "auth_ref": [ "r530" ] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpense", "crdr": "debit", "calculation": { "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails" ], "lang": { "en-us": { "role": { "totalLabel": "Interest expense, net", "label": "Interest Expense, Operating and Nonoperating", "documentation": "Amount of interest expense classified as operating and nonoperating. Includes, but is not limited to, cost of borrowing accounted for as interest expense." } } }, "auth_ref": [ "r200", "r207", "r211", "r217", "r230", "r529", "r731", "r732" ] }, "us-gaap_InterestExpenseDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpenseDebt", "crdr": "debit", "calculation": { "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails": { "parentTag": "us-gaap_InterestExpense", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest on debt", "label": "Interest Expense, Debt", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense for debt." } } }, "auth_ref": [ "r83", "r376", "r384", "r748", "r749" ] }, "apog_InterestExpenseIncomeDerivatives": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "InterestExpenseIncomeDerivatives", "crdr": "debit", "calculation": { "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails": { "parentTag": "us-gaap_InterestExpense", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest rate swap gain", "label": "Interest Expense (Income), Derivatives", "documentation": "Interest Expense (Income), Derivatives" } } }, "auth_ref": [] }, "us-gaap_InterestExpenseNonoperating": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpenseNonoperating", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": -1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Interest expense, net", "label": "Interest Expense, Nonoperating", "documentation": "Amount of interest expense classified as nonoperating." } } }, "auth_ref": [ "r211", "r896" ] }, "us-gaap_InterestExpenseOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestExpenseOther", "crdr": "debit", "calculation": { "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails": { "parentTag": "us-gaap_InterestExpense", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other interest expense", "label": "Interest Expense, Other", "documentation": "Amount of interest expense classified as other." } } }, "auth_ref": [] }, "us-gaap_InterestIncomeOther": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestIncomeOther", "crdr": "credit", "calculation": { "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails": { "parentTag": "us-gaap_InterestExpense", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/DebtScheduleofInterestExpenseDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Interest income", "label": "Interest Income, Other", "documentation": "Amount of interest income earned from interest bearing assets classified as other." } } }, "auth_ref": [] }, "us-gaap_InterestPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestPaid", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest payments", "label": "Interest Paid, Including Capitalized Interest, Operating and Investing Activities", "documentation": "Amount of cash paid for interest, including, but not limited to, capitalized interest and payment to settle zero-coupon bond attributable to accreted interest of debt discount and debt instrument with insignificant coupon interest rate in relation to effective interest rate of borrowing attributable to accreted interest of debt discount; classified as operating and investing activities." } } }, "auth_ref": [ "r901" ] }, "us-gaap_InterestRateSwapMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InterestRateSwapMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsAdditionalInformationDetails", "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Interest rate swap contract", "label": "Interest Rate Swap [Member]", "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." } } }, "auth_ref": [ "r718", "r790", "r791" ] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "IntersegmentEliminationMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Intersegment eliminations", "label": "Intersegment Eliminations [Member]", "documentation": "Eliminating entries used in operating segment consolidation." } } }, "auth_ref": [ "r114", "r200", "r209", "r224", "r225", "r226", "r227", "r228", "r230", "r231", "r731" ] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Inventory Disclosure [Abstract]", "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/Inventories" ], "lang": { "en-us": { "role": { "verboseLabel": "Inventories", "label": "Inventory Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r286" ] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Finished goods", "label": "Inventory, Finished Goods, Net of Reserves", "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." } } }, "auth_ref": [ "r92", "r721" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.0 }, "http://www.apog.com/role/InventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited", "http://www.apog.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories, net", "totalLabel": "Total inventories, net", "label": "Inventory, Net", "documentation": "Amount after valuation and LIFO reserves of inventory expected to be sold, or consumed within one year or operating cycle, if longer." } } }, "auth_ref": [ "r140", "r720", "r779" ] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Raw materials", "label": "Inventory, Raw Materials, Net of Reserves", "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." } } }, "auth_ref": [ "r92", "r723" ] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/InventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/InventoriesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Work-in-process", "label": "Inventory, Work in Process, Net of Reserves", "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." } } }, "auth_ref": [ "r92", "r722" ] }, "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "InvestmentsClassifiedByContractualMaturityDateTableTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Amortized Cost and Estimated Fair Values of Investments by Contractual Maturity", "label": "Investments Classified by Contractual Maturity Date [Table Text Block]", "documentation": "Tabular disclosure of maturities of an entity's investments as well as any other information pertinent to the investments." } } }, "auth_ref": [] }, "apog_LargeScaleOpticalMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "LargeScaleOpticalMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Large-Scale Optical", "label": "Large Scale Optical [Member]", "documentation": "Large scale optical." } } }, "auth_ref": [] }, "apog_LenderFeesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "LenderFeesMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lender Fees", "label": "Lender Fees [Member]", "documentation": "Lender Fees" } } }, "auth_ref": [] }, "us-gaap_LettersOfCreditOutstandingAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LettersOfCreditOutstandingAmount", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails", "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Letters of credit outstanding, amount", "label": "Letters of Credit Outstanding, Amount", "documentation": "The total amount of the contingent obligation under letters of credit outstanding as of the reporting date." } } }, "auth_ref": [] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquity", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total liabilities and shareholders\u2019 equity", "label": "Liabilities and Equity", "documentation": "Amount of liabilities and equity items, including the portion of equity attributable to noncontrolling interests, if any." } } }, "auth_ref": [ "r69", "r110", "r591", "r779", "r904", "r931", "r977" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Liabilities and Shareholders\u2019 Equity", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total current liabilities", "label": "Liabilities, Current", "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." } } }, "auth_ref": [ "r58", "r127", "r168", "r270", "r345", "r346", "r348", "r349", "r350", "r351", "r352", "r354", "r355", "r490", "r491", "r492", "r519", "r779", "r950", "r980", "r981" ] }, "us-gaap_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current liabilities", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding borrowings", "label": "Long-Term Line of Credit", "documentation": "The carrying value as of the balance sheet date of the current and noncurrent portions of long-term obligations drawn from a line of credit, which is a bank's commitment to make loans up to a specific amount. Examples of items that might be included in the application of this element may consist of letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to a maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line. Includes short-term obligations that would normally be classified as current liabilities but for which (a) postbalance sheet date issuance of a long term obligation to refinance the short term obligation on a long term basis, or (b) the enterprise has entered into a financing agreement that clearly permits the enterprise to refinance the short-term obligation on a long term basis and the following conditions are met (1) the agreement does not expire within 1 year and is not cancelable by the lender except for violation of an objectively determinable provision, (2) no violation exists at the BS date, and (3) the lender has entered into the financing agreement is expected to be financially capable of honoring the agreement." } } }, "auth_ref": [ "r15", "r108", "r988" ] }, "us-gaap_LineOfCreditFacilityAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Lender Name [Axis]", "label": "Lender Name [Axis]", "documentation": "Information by name of lender, which may be a single entity (for example, but not limited to, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit." } } }, "auth_ref": [ "r55", "r59", "r903", "r948", "r949" ] }, "us-gaap_LineOfCreditFacilityLenderDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityLenderDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit Facility, Lender [Domain]", "label": "Line of Credit Facility, Lender [Domain]", "documentation": "Identification of the lender, which may be a single entity (for example, a bank, pension fund, venture capital firm) or a group of entities that participate in the line of credit, including a letter of credit facility." } } }, "auth_ref": [ "r55", "r59", "r903", "r948" ] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit Facility [Line Items]", "label": "Line of Credit Facility [Line Items]", "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." } } }, "auth_ref": [ "r344", "r903", "r948" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum borrowing capacity", "label": "Line of Credit Facility, Maximum Borrowing Capacity", "documentation": "Maximum borrowing capacity under the credit facility without consideration of any current restrictions on the amount that could be borrowed or the amounts currently outstanding under the facility." } } }, "auth_ref": [ "r55", "r59" ] }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amount of available commitment", "label": "Line of Credit Facility, Remaining Borrowing Capacity", "documentation": "Amount of borrowing capacity currently available under the credit facility (current borrowing capacity less the amount of borrowings outstanding)." } } }, "auth_ref": [ "r55", "r59", "r344" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit Facility [Table]", "label": "Line of Credit Facility [Table]", "documentation": "Disclosure of information about short-term and long-term contractual arrangements with lender under which borrowing can occur up to maximum amount. Includes, but is not limited to, letter of credit, standby letter of credit, and revolving credit arrangement." } } }, "auth_ref": [ "r55", "r59", "r344", "r903", "r948" ] }, "us-gaap_LineOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LineOfCreditMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit", "label": "Line of Credit [Member]", "documentation": "A contractual arrangement with a lender under which borrowings can be made up to a specific amount at any point in time, and under which borrowings outstanding may be either short-term or long-term, depending upon the particulars." } } }, "auth_ref": [] }, "us-gaap_LitigationSettlementAmountAwardedToOtherParty": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LitigationSettlementAmountAwardedToOtherParty", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Amount awarded to other party", "label": "Litigation Settlement, Amount Awarded to Other Party", "documentation": "Amount awarded to other party in judgment or settlement of litigation." } } }, "auth_ref": [] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "LocalPhoneNumber", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Local Phone Number", "label": "Local Phone Number", "documentation": "Local phone number for entity." } } }, "auth_ref": [] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebt", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt", "label": "Long-Term Debt", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt. Excludes lease obligation." } } }, "auth_ref": [ "r15", "r108", "r369", "r383", "r746", "r747", "r778", "r988" ] }, "us-gaap_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongTermDebtNoncurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term debt", "label": "Long-Term Debt, Excluding Current Maturities", "documentation": "Amount, after deduction of unamortized premium (discount) and debt issuance cost, of long-term debt classified as noncurrent. Excludes lease obligation." } } }, "auth_ref": [ "r133" ] }, "apog_LongTermInvestmentsMunicipalAndCorporateBonds": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "LongTermInvestmentsMunicipalAndCorporateBonds", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Municipal and corporate bonds", "label": "Long-term Investments, Municipal And Corporate Bonds", "documentation": "Long-term Investments, Municipal And Corporate Bonds" } } }, "auth_ref": [] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term Debt, Type [Axis]", "label": "Long-Term Debt, Type [Axis]", "documentation": "Information by type of long-term debt." } } }, "auth_ref": [ "r15", "r938", "r939", "r940" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Long-term Debt, Type [Domain]", "label": "Long-Term Debt, Type [Domain]", "documentation": "Type of long-term debt arrangement, such as notes, line of credit, commercial paper, asset-based financing, project financing, letter of credit financing. These are debt arrangements that originally required repayment more than twelve months after issuance or greater than the normal operating cycle of the company, if longer." } } }, "auth_ref": [ "r15", "r33", "r938", "r939", "r940" ] }, "us-gaap_MarketableSecuritiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MarketableSecuritiesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Marketable Securities [Abstract]", "label": "Marketable Securities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_MarketableSecuritiesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MarketableSecuritiesTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstruments" ], "lang": { "en-us": { "role": { "verboseLabel": "Financial Instruments", "label": "Marketable Securities [Table Text Block]", "documentation": "Tabular disclosure of marketable securities. This may consist of investments in certain debt and equity securities, short-term investments and other assets." } } }, "auth_ref": [] }, "srt_MaximumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MaximumMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails", "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum", "label": "Maximum [Member]" } } }, "auth_ref": [ "r338", "r339", "r340", "r341", "r426", "r463", "r510", "r572", "r613", "r615", "r623", "r643", "r644", "r696", "r697", "r698", "r699", "r710", "r715", "r716", "r736", "r750", "r763", "r771", "r772", "r776", "r777", "r781", "r952", "r982", "r983", "r984", "r985", "r986", "r987" ] }, "apog_MaximumNumberOfAcquisitionHolidays": { "xbrltype": "integerItemType", "nsuri": "http://www.apog.com/20240831", "localname": "MaximumNumberOfAcquisitionHolidays", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Maximum number of acquisition holidays", "label": "Maximum Number of Acquisition Holidays", "documentation": "Maximum Number of Acquisition Holidays" } } }, "auth_ref": [] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Measure:", "label": "Measure [Axis]" } } }, "auth_ref": [ "r844" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Measure Name" } } }, "auth_ref": [ "r844" ] }, "srt_MinimumMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "MinimumMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails", "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Minimum", "label": "Minimum [Member]" } } }, "auth_ref": [ "r338", "r339", "r340", "r341", "r426", "r463", "r510", "r572", "r613", "r615", "r623", "r643", "r644", "r696", "r697", "r698", "r699", "r710", "r715", "r716", "r736", "r750", "r763", "r771", "r772", "r776", "r781", "r952", "r982", "r983", "r984", "r985", "r986", "r987" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MnpiDiscTimedForCompValFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "MNPI Disclosure Timed for Compensation Value", "label": "MNPI Disclosure Timed for Compensation Value [Flag]" } } }, "auth_ref": [ "r863" ] }, "us-gaap_MoneyMarketFundsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MoneyMarketFundsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofFairValueMeasurementsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Money market funds", "label": "Money Market Funds, at Carrying Value", "documentation": "Investment in short-term money-market instruments (such as commercial paper, banker's acceptances, repurchase agreements, government securities, certificates of deposit, and so forth) which are highly liquid (that is, readily convertible to known amounts of cash) and so near their maturity that they present an insignificant risk of changes in value because of changes in interest rates. Generally, only investments with original maturities of three months or less qualify as cash equivalents by definition. Original maturity means an original maturity to the entity holding the investment. For example, both a three-month US Treasury bill and a three-year Treasury note purchased three months from maturity qualify as cash equivalents. However, a Treasury note purchased three-years ago does not become a cash equivalent when its remaining maturity is three months." } } }, "auth_ref": [] }, "us-gaap_MovementInExtendedProductWarrantyAccrualRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "MovementInExtendedProductWarrantyAccrualRollForward", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofGuaranteesandwarrantiesDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Guarantees and warranties", "label": "Movement in Extended Product Warranty Accrual [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "MtrlTermsOfTrdArrTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Material Terms of Trading Arrangement", "label": "Material Terms of Trading Arrangement [Text Block]" } } }, "auth_ref": [ "r871" ] }, "apog_MunicipalandCorporateBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "MunicipalandCorporateBondsMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Municipal and Corporate Bonds", "label": "Municipal and Corporate Bonds [Member]", "documentation": "Municipal and Corporate Bonds [Member]" } } }, "auth_ref": [] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NamedExecutiveOfficersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Named Executive Officers, Footnote", "label": "Named Executive Officers, Footnote [Text Block]" } } }, "auth_ref": [ "r845" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used by financing activities", "label": "Net Cash Provided by (Used in) Financing Activities", "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." } } }, "auth_ref": [ "r164" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInFinancingActivitiesAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Financing Activities", "label": "Net Cash Provided by (Used in) Financing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInInvestingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash used by investing activities", "label": "Net Cash Provided by (Used in) Investing Activities", "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." } } }, "auth_ref": [ "r164" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInInvestingActivitiesAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Investing Activities", "label": "Net Cash Provided by (Used in) Investing Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseIncludingExchangeRateEffect", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Net cash provided by operating activities", "label": "Net Cash Provided by (Used in) Operating Activities", "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." } } }, "auth_ref": [ "r88", "r89", "r90" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetCashProvidedByUsedInOperatingActivitiesAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Operating Activities", "label": "Net Cash Provided by (Used in) Operating Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NetIncomeLoss", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 1.0 }, "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 3.0 }, "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited", "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited", "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited", "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net earnings", "verboseLabel": "Net earnings", "terseLabel": "Net earnings", "label": "Net Income (Loss) Attributable to Parent", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r80", "r90", "r112", "r125", "r150", "r153", "r157", "r168", "r174", "r176", "r177", "r178", "r179", "r180", "r183", "r184", "r192", "r270", "r345", "r346", "r348", "r349", "r350", "r351", "r352", "r354", "r355", "r484", "r488", "r504", "r519", "r595", "r673", "r689", "r690", "r793", "r950" ] }, "us-gaap_NewAccountingPronouncementsPolicyPolicyTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NewAccountingPronouncementsPolicyPolicyTextBlock", "presentation": [ "http://www.apog.com/role/SummaryofSignificantAccountingPoliciesPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "New accounting standards", "label": "New Accounting Pronouncements, Policy [Policy Text Block]", "documentation": "Disclosure of accounting policy pertaining to new accounting pronouncements that may impact the entity's financial reporting. Includes, but is not limited to, quantification of the expected or actual impact." } } }, "auth_ref": [] }, "apog_NewMarketTaxCreditTransactionsSummaryTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NewMarketTaxCreditTransactionsSummaryTableTextBlock", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Estimated Benefits Related to our Outstanding NMTC Transactions", "label": "New Market Tax Credit Transactions Summary [Table Text Block]", "documentation": "New Market Tax Credit Transactions Summary" } } }, "auth_ref": [] }, "apog_NewMarketsTaxCreditTransactionBenefitNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NewMarketsTaxCreditTransactionBenefitNet", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net benefit", "label": "New Markets Tax Credit Transaction, Benefit, Net", "documentation": "New Markets Tax Credit Transaction, Benefit, Net" } } }, "auth_ref": [] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonGaapMeasureDescriptionTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-GAAP Measure Description", "label": "Non-GAAP Measure Description [Text Block]" } } }, "auth_ref": [ "r844" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-NEOs", "label": "Non-NEOs [Member]" } } }, "auth_ref": [ "r808", "r818", "r828", "r852", "r860" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgCompActuallyPaidAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Compensation Actually Paid Amount", "label": "Non-PEO NEO Average Compensation Actually Paid Amount" } } }, "auth_ref": [ "r835" ] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoAvgTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO Average Total Compensation Amount", "label": "Non-PEO NEO Average Total Compensation Amount" } } }, "auth_ref": [ "r834" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonPeoNeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-PEO NEO", "label": "Non-PEO NEO [Member]" } } }, "auth_ref": [ "r852" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Adopted", "label": "Non-Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r871" ] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "NonRule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Non-Rule 10b5-1 Arrangement Terminated", "label": "Non-Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r871" ] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Non-cash Activity", "label": "Noncash Investing and Financing Items [Abstract]" } } }, "auth_ref": [] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NonoperatingIncomeExpense", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other income, net", "label": "Nonoperating Income (Expense)", "documentation": "The aggregate amount of income or expense from ancillary business-related activities (that is to say, excluding major activities considered part of the normal operations of the business)." } } }, "auth_ref": [ "r82" ] }, "apog_NumberOfDrawdowns": { "xbrltype": "integerItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NumberOfDrawdowns", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of drawdowns", "label": "Number Of Drawdowns", "documentation": "Number Of Drawdowns" } } }, "auth_ref": [] }, "apog_NumberOfLinesOfCredit": { "xbrltype": "integerItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NumberOfLinesOfCredit", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of lines of credit", "label": "Number Of Lines Of Credit", "documentation": "Number Of Lines Of Credit" } } }, "auth_ref": [] }, "apog_NumberOfNewMarketsTaxCreditAgreements": { "xbrltype": "integerItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NumberOfNewMarketsTaxCreditAgreements", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of new markets tax credit agreements", "label": "Number of New Markets Tax Credit Agreements", "documentation": "Number of New Markets Tax Credit Agreements" } } }, "auth_ref": [] }, "apog_NumberOfQuartersSeparatingAcquisitionHolidays": { "xbrltype": "integerItemType", "nsuri": "http://www.apog.com/20240831", "localname": "NumberOfQuartersSeparatingAcquisitionHolidays", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of quarters separating acquisition holidays", "label": "Number of Quarters Separating Acquisition Holidays", "documentation": "Number of Quarters Separating Acquisition Holidays" } } }, "auth_ref": [] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of reportable segments", "label": "Number of Reportable Segments", "documentation": "Number of segments reported by the entity. A reportable segment is a component of an entity for which there is an accounting requirement to report separate financial information on that component in the entity's financial statements." } } }, "auth_ref": [ "r727", "r735", "r913" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Operating income", "verboseLabel": "Segment operating income (loss)", "label": "Operating Income (Loss)", "documentation": "The net result for the period of deducting operating expenses from operating revenues." } } }, "auth_ref": [ "r115", "r726", "r911", "r914", "r915", "r916", "r917" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease liabilities", "label": "Operating Lease, Liability, Current", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as current." } } }, "auth_ref": [ "r535" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseLiabilityNoncurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current operating lease liabilities", "label": "Operating Lease, Liability, Noncurrent", "documentation": "Present value of lessee's discounted obligation for lease payments from operating lease, classified as noncurrent." } } }, "auth_ref": [ "r535" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAsset", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Operating lease right-of-use assets", "label": "Operating Lease, Right-of-Use Asset", "documentation": "Amount of lessee's right to use underlying asset under operating lease." } } }, "auth_ref": [ "r534" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingLeaseRightOfUseAssetAmortizationExpense", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 9.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Non-cash lease expense", "label": "Operating Lease, Right-of-Use Asset, Periodic Reduction", "documentation": "Amount of periodic reduction over lease term of carrying amount of right-of-use asset from operating lease." } } }, "auth_ref": [ "r900" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Segments", "label": "Operating Segments [Member]", "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." } } }, "auth_ref": [ "r224", "r225", "r226", "r227", "r228", "r231", "r731", "r732" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/SummaryofSignificantAccountingPolicies" ], "lang": { "en-us": { "role": { "terseLabel": "Summary of Significant Accounting Policies", "label": "Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block]", "documentation": "The entire disclosure for organization, consolidation and basis of presentation of financial statements disclosure." } } }, "auth_ref": [ "r53", "r103", "r624", "r625" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other current assets", "label": "Other Assets, Current", "documentation": "Amount of current assets classified as other." } } }, "auth_ref": [ "r141", "r779" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherAssetsNoncurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other non-current assets", "label": "Other Assets, Noncurrent", "documentation": "Amount of noncurrent assets classified as other." } } }, "auth_ref": [ "r131" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized gain (loss) on marketable securities, net of $30, $(8), $29 and $25 of tax expense (benefit), respectively", "label": "OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax", "documentation": "Amount, after tax and adjustment, of unrealized gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale) and unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r146", "r147", "r148", "r596" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized (loss) gain on derivative instruments, net of $(257), $66, $107 and $(55) of tax (benefit) expense, respectively", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax", "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." } } }, "auth_ref": [ "r145", "r148", "r596" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized gain (loss) on derivative instruments, tax", "label": "Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax", "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." } } }, "auth_ref": [ "r149" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency translation adjustments", "label": "Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, before Tax", "documentation": "Amount before tax, after reclassification adjustments of gain (loss) on foreign currency translation adjustments, foreign currency transactions designated and effective as economic hedges of a net investment in a foreign entity and intra-entity foreign currency transactions that are of a long-term-investment nature." } } }, "auth_ref": [ "r4", "r74", "r596" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other comprehensive income (loss), net of tax", "label": "Other Comprehensive Income (Loss), Net of Tax", "documentation": "Amount after tax and reclassification adjustments of other comprehensive income (loss)." } } }, "auth_ref": [ "r12", "r14", "r151", "r154", "r158", "r180", "r521", "r522", "r527", "r577", "r596", "r893", "r894" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited": { "parentTag": "us-gaap_ComprehensiveIncomeNetOfTax", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Other comprehensive (loss) earnings", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent", "documentation": "Amount after tax of other comprehensive income (loss) attributable to parent entity." } } }, "auth_ref": [ "r6", "r11", "r104", "r151", "r154", "r180" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCOMPREHENSIVEEARNINGSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other comprehensive earnings (loss):", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Unrealized (loss) gain on marketable securities, tax", "label": "OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax", "documentation": "Amount, before adjustment, of tax expense (benefit) for unrealized holding gain (loss) on investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale). Excludes tax expense (benefit) for unrealized gain (loss) on investment in debt security measured at amortized cost (held-to-maturity) from transfer to available-for-sale." } } }, "auth_ref": [ "r5", "r147" ] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesCurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesCurrent", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other current liabilities", "label": "Other Liabilities, Current", "documentation": "Amount of liabilities classified as other, due within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r57", "r779" ] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherLiabilitiesNoncurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other non-current liabilities", "label": "Other Liabilities, Noncurrent", "documentation": "Amount of liabilities classified as other, due after one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r60" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherNoncashIncomeExpense", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Other, net", "label": "Other Noncash Income (Expense)", "documentation": "Amount of income (expense) included in net income that results in no cash inflow (outflow), classified as other." } } }, "auth_ref": [ "r90" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OtherPerfMeasureAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Other Performance Measure, Amount", "label": "Other Performance Measure, Amount" } } }, "auth_ref": [ "r844" ] }, "us-gaap_OtherRestructuringMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "OtherRestructuringMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other restructuring charges", "label": "Other Restructuring [Member]", "documentation": "Restructuring and related activities classified as other." } } }, "auth_ref": [ "r741", "r742", "r743", "r744" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingAggtErrCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Outstanding Aggregate Erroneous Compensation Amount", "label": "Outstanding Aggregate Erroneous Compensation Amount" } } }, "auth_ref": [ "r806", "r816", "r826", "r858" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Amount", "label": "Outstanding Recovery Compensation Amount" } } }, "auth_ref": [ "r809", "r819", "r829", "r861" ] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Outstanding Recovery, Individual Name" } } }, "auth_ref": [ "r809", "r819", "r829", "r861" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "auth_ref": [ "r833" ] }, "us-gaap_PayablesAndAccrualsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PayablesAndAccrualsAbstract", "lang": { "en-us": { "role": { "label": "Payables and Accruals [Abstract]" } } }, "auth_ref": [] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Repurchase of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r86" ] }, "us-gaap_PaymentsForRestructuring": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsForRestructuring", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RestructuringReserveDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payments", "label": "Payments for Restructuring", "documentation": "Amount of cash payments made as the result of exit or disposal activities. Excludes payments associated with a discontinued operation or an asset retirement obligation." } } }, "auth_ref": [ "r327", "r898" ] }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsOfDebtIssuanceCosts", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 6.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Payments of debt issuance costs", "label": "Payments of Debt Issuance Costs", "documentation": "The cash outflow paid to third parties in connection with debt origination, which will be amortized over the remaining maturity period of the associated long-term debt." } } }, "auth_ref": [ "r21" ] }, "us-gaap_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsOfDividendsCommonStock", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited", "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Dividends paid", "verboseLabel": "Dividends paid", "label": "Payments of Ordinary Dividends, Common Stock", "documentation": "Amount of cash outflow in the form of ordinary dividends to common shareholders of the parent entity." } } }, "auth_ref": [ "r86" ] }, "us-gaap_PaymentsToAcquireMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquireMarketableSecurities", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Purchases of marketable securities", "label": "Payments to Acquire Marketable Securities", "documentation": "Amount of cash outflow for purchase of marketable security." } } }, "auth_ref": [ "r920" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PaymentsToAcquirePropertyPlantAndEquipment", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": -1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedLabel": "Capital expenditures", "label": "Payments to Acquire Property, Plant, and Equipment", "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." } } }, "auth_ref": [ "r85" ] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupIssuersFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Issuers, Footnote", "label": "Peer Group Issuers, Footnote [Text Block]" } } }, "auth_ref": [ "r843" ] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeerGroupTotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Peer Group Total Shareholder Return Amount", "label": "Peer Group Total Shareholder Return Amount" } } }, "auth_ref": [ "r843" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoActuallyPaidCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Actually Paid Compensation Amount", "label": "PEO Actually Paid Compensation Amount" } } }, "auth_ref": [ "r835" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO", "label": "PEO [Member]" } } }, "auth_ref": [ "r852" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Name", "label": "PEO Name" } } }, "auth_ref": [ "r845" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PeoTotalCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Total Compensation Amount", "label": "PEO Total Compensation Amount" } } }, "auth_ref": [ "r834" ] }, "us-gaap_PerformanceSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PerformanceSharesMember", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Performance share units", "label": "Performance Shares [Member]", "documentation": "Share-based payment arrangement awarded for meeting performance target." } } }, "auth_ref": [] }, "ecd_PnsnAdjsPrrSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsPrrSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Adjustments Prior Service Cost", "label": "Pension Adjustments Prior Service Cost [Member]" } } }, "auth_ref": [ "r836" ] }, "ecd_PnsnAdjsSvcCstMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnAdjsSvcCstMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Adjustments Service Cost", "label": "Pension Adjustments Service Cost [Member]" } } }, "auth_ref": [ "r880" ] }, "ecd_PnsnBnftsAdjFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PnsnBnftsAdjFnTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pension Benefits Adjustments, Footnote", "label": "Pension Benefits Adjustments, Footnote [Text Block]" } } }, "auth_ref": [ "r835" ] }, "us-gaap_PreferredStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockParOrStatedValuePerShare", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Junior preferred stock par value (in usd per share)", "label": "Preferred Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of preferred stock nonredeemable or redeemable solely at the option of the issuer." } } }, "auth_ref": [ "r62", "r386" ] }, "us-gaap_PreferredStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesAuthorized", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Junior preferred stock authorized (in shares)", "label": "Preferred Stock, Shares Authorized", "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." } } }, "auth_ref": [ "r62", "r652" ] }, "us-gaap_PreferredStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesIssued", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Junior preferred stock issued (in shares)", "label": "Preferred Stock, Shares Issued", "documentation": "Number of shares issued for nonredeemable preferred shares and preferred shares redeemable solely at option of issuer. Includes, but is not limited to, preferred shares issued, repurchased, and held as treasury shares. Excludes preferred shares classified as debt." } } }, "auth_ref": [ "r62", "r386" ] }, "us-gaap_PreferredStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockSharesOutstanding", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnauditedParenthetical" ], "lang": { "en-us": { "role": { "terseLabel": "Junior preferred stock outstanding (in shares)", "label": "Preferred Stock, Shares Outstanding", "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." } } }, "auth_ref": [ "r62", "r652", "r671", "r1024", "r1025" ] }, "us-gaap_PreferredStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PreferredStockValue", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 5.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Junior preferred stock of $1.00 par value; authorized 200,000 shares; zero issued and outstanding", "label": "Preferred Stock, Value, Issued", "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." } } }, "auth_ref": [ "r62", "r587", "r779" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from revolving credit facilities", "label": "Proceeds from Lines of Credit", "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." } } }, "auth_ref": [ "r20", "r903" ] }, "us-gaap_ProceedsFromPaymentsForOtherFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromPaymentsForOtherFinancingActivities", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Other, net", "label": "Proceeds from (Payments for) Other Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities classified as other." } } }, "auth_ref": [ "r883", "r897" ] }, "us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Sales/maturities of marketable securities", "label": "Proceeds from Sale and Maturity of Debt Securities, Available-for-Sale", "documentation": "Amount of cash inflow from sale, maturity, prepayment and call of investment in debt security measured at fair value with change in fair value recognized in other comprehensive income (available-for-sale)." } } }, "auth_ref": [ "r162", "r163", "r920" ] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProceedsFromSaleOfPropertyPlantAndEquipment", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInInvestingActivities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from sales of property, plant and equipment", "label": "Proceeds from Sale of Property, Plant, and Equipment", "documentation": "The cash inflow from the sale of long-lived, physical assets that are used in the normal conduct of business to produce goods and services and not intended for resale." } } }, "auth_ref": [ "r84" ] }, "apog_ProjectFortifyMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ProjectFortifyMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Project Fortify", "label": "Project Fortify [Member]", "documentation": "Project Fortify" } } }, "auth_ref": [] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PropertyPlantAndEquipmentNet", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_Assets", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Property, plant and equipment, net of accumulated depreciation of $460,167 and $445,017", "label": "Property, Plant and Equipment, Net", "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." } } }, "auth_ref": [ "r9", "r536", "r583", "r593", "r779" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Credits charged to costs and expenses", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r161", "r277" ] }, "us-gaap_PurchaseObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "PurchaseObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Purchase obligations", "label": "Purchase Obligation", "documentation": "Minimum amount of purchase arrangement in which the entity has agreed to expend funds to procure goods or services from a supplier." } } }, "auth_ref": [] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure", "label": "Pay vs Performance Disclosure [Table]" } } }, "auth_ref": [ "r833" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "PvpTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Pay vs Performance Disclosure, Table", "label": "Pay vs Performance [Table Text Block]" } } }, "auth_ref": [ "r833" ] }, "srt_RangeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails", "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Axis]", "label": "Statistical Measurement [Axis]" } } }, "auth_ref": [ "r338", "r339", "r340", "r341", "r419", "r426", "r455", "r456", "r457", "r463", "r510", "r547", "r556", "r572", "r613", "r615", "r623", "r643", "r644", "r696", "r697", "r698", "r699", "r710", "r715", "r716", "r736", "r750", "r763", "r771", "r772", "r776", "r777", "r781", "r785", "r942", "r952", "r965", "r983", "r984", "r985", "r986", "r987" ] }, "srt_RangeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "RangeMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails", "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statistical Measurement [Domain]", "label": "Statistical Measurement [Domain]" } } }, "auth_ref": [ "r338", "r339", "r340", "r341", "r419", "r426", "r455", "r456", "r457", "r463", "r510", "r547", "r556", "r572", "r613", "r615", "r623", "r643", "r644", "r696", "r697", "r698", "r699", "r710", "r715", "r716", "r736", "r750", "r763", "r771", "r772", "r776", "r777", "r781", "r785", "r942", "r952", "r965", "r983", "r984", "r985", "r986", "r987" ] }, "us-gaap_ReceivableTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivableTypeDomain", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Receivable [Domain]", "label": "Receivable [Domain]", "documentation": "Financing arrangement representing a contractual right to receive money either on demand or on fixed and determinable dates." } } }, "auth_ref": [ "r64", "r70" ] }, "us-gaap_ReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ReceivablesNetCurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Receivables, net", "label": "Receivables, Net, Current", "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." } } }, "auth_ref": [ "r779" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]" } } }, "auth_ref": [ "r801", "r811", "r821", "r853" ] }, "us-gaap_RepaymentsOfLongTermLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RepaymentsOfLongTermLinesOfCredit", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Repayments on revolving credit facilities", "label": "Repayments of Long-Term Lines of Credit", "documentation": "The cash outflow for the settlement of obligation drawn from a contractual arrangement with the lender, including letter of credit, standby letter of credit and revolving credit arrangements, under which borrowings can be made up to a specific amount at any point in time with maturities due beyond one year or the operating cycle, if longer." } } }, "auth_ref": [ "r87" ] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDateAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date:", "label": "Restatement Determination Date [Axis]" } } }, "auth_ref": [ "r802", "r812", "r822", "r854" ] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date", "label": "Restatement Determination Date" } } }, "auth_ref": [ "r803", "r813", "r823", "r855" ] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "RestatementDoesNotRequireRecoveryTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement does not require Recovery", "label": "Restatement Does Not Require Recovery [Text Block]" } } }, "auth_ref": [ "r810", "r820", "r830", "r862" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestrictedStockMember", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "verboseLabel": "Restricted stock awards and restricted stock units", "terseLabel": "Restricted Stock", "label": "Restricted Stock [Member]", "documentation": "Stock including a provision that prohibits sale or substantive sale of an equity instrument for a specified period of time or until specified performance conditions are met." } } }, "auth_ref": [ "r26" ] }, "us-gaap_RestructuringAndRelatedActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringAndRelatedActivitiesAbstract", "lang": { "en-us": { "role": { "label": "Restructuring and Related Activities [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RestructuringAndRelatedActivitiesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringAndRelatedActivitiesDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/Restructuring" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring", "label": "Restructuring and Related Activities Disclosure [Text Block]", "documentation": "The entire disclosure for restructuring and related activities. Description of restructuring activities such as exit and disposal activities, include facts and circumstances leading to the plan, the expected plan completion date, the major types of costs associated with the plan activities, total expected costs, the accrual balance at the end of the period, and the periods over which the remaining accrual will be settled." } } }, "auth_ref": [ "r324", "r325", "r327", "r330", "r335" ] }, "apog_RestructuringAndRelatedCostAnnualizedCostSavings": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "RestructuringAndRelatedCostAnnualizedCostSavings", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Annualized cost savings", "label": "Restructuring and Related Cost, Annualized Cost Savings", "documentation": "Restructuring and Related Cost, Annualized Cost Savings" } } }, "auth_ref": [] }, "us-gaap_RestructuringAndRelatedCostExpectedCost1": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringAndRelatedCostExpectedCost1", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected restructuring cost", "label": "Restructuring and Related Cost, Expected Cost", "documentation": "Amount expected to be recognized in earnings for the specified restructuring cost." } } }, "auth_ref": [ "r326", "r329", "r332", "r334" ] }, "us-gaap_RestructuringCharges": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringCharges", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringReserveDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring expense", "label": "Restructuring Charges", "documentation": "Amount of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation." } } }, "auth_ref": [ "r8", "r331", "r332", "r943" ] }, "us-gaap_RestructuringCostAndReserveAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringCostAndReserveAxis", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Type [Axis]", "label": "Restructuring Type [Axis]", "documentation": "Information by type of restructuring cost." } } }, "auth_ref": [ "r326", "r327", "r332", "r333" ] }, "us-gaap_RestructuringCostAndReserveLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringCostAndReserveLineItems", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Cost and Reserve [Line Items]", "label": "Restructuring Cost and Reserve [Line Items]", "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." } } }, "auth_ref": [ "r326", "r327", "r328", "r329", "r332", "r333", "r334" ] }, "us-gaap_RestructuringCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringCosts", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total restructuring charges", "label": "Restructuring Costs", "documentation": "Amount, after cash payment, of expenses associated with exit or disposal activities pursuant to an authorized plan. Excludes expenses related to a discontinued operation or an asset retirement obligation." } } }, "auth_ref": [ "r8" ] }, "us-gaap_RestructuringPlanAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringPlanAxis", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Plan [Axis]", "label": "Restructuring Plan [Axis]", "documentation": "Information by individual restructuring plan." } } }, "auth_ref": [] }, "us-gaap_RestructuringPlanDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringPlanDomain", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Restructuring Plan [Domain]", "label": "Restructuring Plan [Domain]", "documentation": "Identification of the individual restructuring plans." } } }, "auth_ref": [] }, "us-gaap_RestructuringReserve": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringReserve", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RestructuringReserveDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Beginning balance", "verboseLabel": "Ending Balance", "label": "Restructuring Reserve", "documentation": "Carrying amount (including both current and noncurrent portions of the accrual) as of the balance sheet date pertaining to a specified type of cost associated with exit from or disposal of business activities or restructuring pursuant to a duly authorized plan." } } }, "auth_ref": [ "r327", "r333" ] }, "us-gaap_RestructuringReserveTranslationAndOtherAdjustment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RestructuringReserveTranslationAndOtherAdjustment", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RestructuringReserveDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Other adjustments", "label": "Restructuring Reserve, Translation and Other Adjustment", "documentation": "Amount of increase (decrease) in the restructuring reserve related to foreign currency translation (gain) loss and other increases (decreases)." } } }, "auth_ref": [ "r95", "r944" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsAccumulatedDeficit", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_StockholdersEquity", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Retained earnings", "label": "Retained Earnings (Accumulated Deficit)", "documentation": "Amount of accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r66", "r102", "r590", "r620", "r622", "r631", "r653", "r779" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RetainedEarningsMember", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Retained Earnings", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r123", "r171", "r172", "r173", "r175", "r180", "r182", "r184", "r271", "r272", "r304", "r474", "r475", "r481", "r482", "r483", "r485", "r487", "r488", "r494", "r496", "r497", "r499", "r502", "r532", "r533", "r617", "r619", "r633", "r1024" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contract with Customer [Abstract]", "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerExcludingAssessedTax", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_GrossProfit", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited", "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net sales", "netLabel": "Total", "verboseLabel": "Segment net sales", "label": "Revenue from Contract with Customer, Excluding Assessed Tax", "documentation": "Amount, excluding tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value added and excise." } } }, "auth_ref": [ "r113", "r114", "r200", "r208", "r209", "r224", "r230", "r233", "r235", "r236", "r414", "r415", "r574" ] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueFromContractWithCustomerTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilities" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Receivables and Contract Assets and Liabilities", "label": "Revenue from Contract with Customer [Text Block]", "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." } } }, "auth_ref": [ "r122", "r405", "r406", "r407", "r408", "r409", "r410", "r412", "r413", "r418" ] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenue to be recognized", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r118" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Expected timing of satisfaction", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "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." } } }, "auth_ref": [ "r119" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]", "documentation": "Start date of time band for expected timing of satisfaction of remaining performance obligation, in YYYY-MM-DD format." } } }, "auth_ref": [ "r119" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesOthercontractrelateddisclosuresDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table]", "documentation": "Disclosure of information about expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Performance Obligations Expected to be Satisfied", "label": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block]", "documentation": "Tabular disclosure of expected timing for satisfying remaining performance obligation." } } }, "auth_ref": [ "r884" ] }, "apog_RevolvingCreditFacilityCADMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "RevolvingCreditFacilityCADMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revolving Credit Facility - CAD", "label": "Revolving Credit Facility - CAD [Member]", "documentation": "Revolving Credit Facility - CAD" } } }, "auth_ref": [] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Revolving credit facility", "label": "Revolving Credit Facility [Member]", "documentation": "Arrangement in which loan proceeds can continuously be obtained following repayments, but the total amount borrowed cannot exceed a specified maximum amount." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrAdoptedFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Adopted", "label": "Rule 10b5-1 Arrangement Adopted [Flag]" } } }, "auth_ref": [ "r871" ] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "Rule10b51ArrTrmntdFlag", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Rule 10b5-1 Arrangement Terminated", "label": "Rule 10b5-1 Arrangement Terminated [Flag]" } } }, "auth_ref": [ "r871" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "label": "Accounts and Financing Receivables [Table]", "documentation": "Disclosure of information about accounts and financing receivables. Includes, but is not limited to, amount of receivable and allowance for credit loss." } } }, "auth_ref": [ "r64", "r70", "r238", "r918" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Receivables", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block]", "documentation": "Tabular disclosure of the various types of trade accounts and notes receivable and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r64", "r70" ] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Debt Securities, Available-for-sale [Line Items]", "label": "Debt Securities, Available-for-Sale [Line Items]", "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." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251" ] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Available-for-Sale Marketable Securities", "label": "Schedule of Available-for-Sale Securities Reconciliation [Table Text Block]", "documentation": "Tabular disclosure of the reconciliation of available-for-sale securities from cost basis to fair value." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.apog.com/role/EarningsperShareTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Basic and Diluted Earnings Per Share", "label": "Schedule of Earnings Per Share, Basic and Diluted [Table Text Block]", "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." } } }, "auth_ref": [ "r910" ] }, "apog_ScheduleOfInterestExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ScheduleOfInterestExpenseTableTextBlock", "presentation": [ "http://www.apog.com/role/DebtTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Interest Expense", "label": "Schedule Of Interest Expense [Table Text Block]", "documentation": "Schedule Of Interest Expense" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.apog.com/role/InventoriesTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Inventories", "label": "Schedule of Inventory, Current [Table Text Block]", "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." } } }, "auth_ref": [ "r16", "r71", "r72", "r73" ] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Guarantees and warranties", "label": "Schedule of Product Warranty Liability [Table Text Block]", "documentation": "Tabular disclosure of the changes in the guarantor's aggregate product warranty liability, including the beginning balance of the aggregate product warranty liability, the aggregate reductions in that liability for payments made (in cash or in kind) under the warranty, the aggregate changes in the liability for accruals related to product warranties issued during the reporting period, the aggregate changes in the liability for accruals related to preexisting warranties (including adjustments related to changes in estimates), and the ending balance of the aggregate product warranty liability." } } }, "auth_ref": [ "r342" ] }, "us-gaap_ScheduleOfRestructuringAndRelatedCostsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRestructuringAndRelatedCostsTable", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Restructuring and Related Costs [Table]", "label": "Restructuring Cost [Table]", "documentation": "Disclosure of information about restructuring cost. Includes, but is not limited to, expected cost, cost incurred, statement of income caption that includes restructuring cost recognized, and amount of restructuring reserve." } } }, "auth_ref": [ "r326", "r327", "r328", "r329", "r332", "r333", "r334" ] }, "us-gaap_ScheduleOfRestructuringAndRelatedCostsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRestructuringAndRelatedCostsTextBlock", "presentation": [ "http://www.apog.com/role/RestructuringTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Restructuring", "label": "Restructuring and Related Costs [Table Text Block]", "documentation": "Tabular disclosure of costs incurred for restructuring including, but not limited to, exit and disposal activities, remediation, implementation, integration, asset impairment, and charges against earnings from the write-down of assets." } } }, "auth_ref": [ "r31", "r93", "r94" ] }, "us-gaap_ScheduleOfRestructuringReserveByTypeOfCostTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfRestructuringReserveByTypeOfCostTextBlock", "presentation": [ "http://www.apog.com/role/RestructuringTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Restructuring Reserve", "label": "Schedule of Restructuring Reserve by Type of Cost [Table Text Block]", "documentation": "Tabular disclosure of an entity's restructuring reserve that occurred during the period associated with the exit from or disposal of business activities or restructurings for each major type of cost. This element may also include a description of any reversal and other adjustment made during the period to the amount of an accrued liability for restructuring activities. This element may be used to encapsulate the roll forward presentations of an entity's restructuring reserve by type of cost and in total, and explanation of changes that occurred in the period." } } }, "auth_ref": [ "r32", "r95" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "Disclosure of information about profit (loss) and total assets by reportable segment." } } }, "auth_ref": [ "r27", "r28", "r29" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of Sales and Operating Income (Loss)", "label": "Schedule of Segment Reporting Information, by Segment [Table Text Block]", "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." } } }, "auth_ref": [ "r27", "r28", "r29" ] }, "us-gaap_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table]", "label": "Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table]", "documentation": "Disclosure of information about share-based payment arrangement." } } }, "auth_ref": [ "r428", "r430", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458" ] }, "us-gaap_ScheduleOfStockByClassTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ScheduleOfStockByClassTable", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock by Class [Table]", "label": "Stock, Class of Stock [Table]", "documentation": "Disclosure of information about stock by class. Includes, but is not limited to, common, convertible, and preferred stocks." } } }, "auth_ref": [ "r36", "r37", "r38", "r39", "r40", "r41", "r98", "r100", "r101", "r102", "r134", "r135", "r136", "r202", "r386", "r387", "r388", "r390", "r393", "r398", "r400", "r627", "r628", "r629", "r630", "r750", "r882", "r902" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "Security12bTitle", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Title of 12(b) Security", "label": "Title of 12(b) Security", "documentation": "Title of a 12(b) registered security." } } }, "auth_ref": [ "r796" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "SecurityExchangeName", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Security Exchange Name", "label": "Security Exchange Name", "documentation": "Name of the Exchange on which a security is registered." } } }, "auth_ref": [ "r798" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentDomain", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segment [Domain]", "label": "Segments [Domain]", "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." } } }, "auth_ref": [ "r113", "r114", "r115", "r116", "r200", "r204", "r207", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r218", "r219", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r230", "r231", "r232", "r236", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r303", "r329", "r334", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r728", "r731", "r732", "r738", "r782", "r991", "r993", "r994", "r995", "r996", "r997", "r998", "r999", "r1000", "r1001", "r1002", "r1003", "r1004", "r1005", "r1006", "r1007", "r1008", "r1009", "r1010", "r1011", "r1012", "r1013", "r1014", "r1015", "r1016", "r1017", "r1018", "r1019", "r1020" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting [Abstract]", "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/BusinessSegmentData" ], "lang": { "en-us": { "role": { "verboseLabel": "Business Segment Data", "label": "Segment Reporting Disclosure [Text Block]", "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." } } }, "auth_ref": [ "r116", "r200", "r203", "r204", "r205", "r206", "r207", "r220", "r222", "r223", "r228", "r229", "r230", "r231", "r232", "r233", "r234", "r236", "r727", "r729", "r730", "r731", "r733", "r734", "r735" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting Information [Line Items]", "label": "Segment Reporting Information [Line Items]", "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." } } }, "auth_ref": [] }, "us-gaap_SegmentReportingInformationProfitLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SegmentReportingInformationProfitLossAbstract", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Sales and operating income data", "label": "Segment Reporting Information, Profit (Loss) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SelfInsuranceReserveNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SelfInsuranceReserveNoncurrent", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 4.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Non-current self-insurance reserves", "label": "Self Insurance Reserve, Noncurrent", "documentation": "Carrying amount of accrued known and estimated losses incurred as of the balance sheet date for which no insurance coverage exists, and for which a claim has been made or is probable of being asserted, typically arising from workmen's compensation-type of incidents and personal injury to nonemployees from accidents on the entity's property that are expected to be paid after one year (or the normal operating cycle, if longer)." } } }, "auth_ref": [] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpense", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited": { "parentTag": "us-gaap_OperatingIncomeLoss", "weight": -1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Selling, general and administrative expenses", "label": "Selling, General and Administrative Expense", "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." } } }, "auth_ref": [ "r81" ] }, "us-gaap_SellingGeneralAndAdministrativeExpensesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SellingGeneralAndAdministrativeExpensesMember", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Selling, general and administrative expenses", "label": "Selling, General and Administrative Expenses [Member]", "documentation": "Primary financial statement caption encompassing selling, general and administrative expense." } } }, "auth_ref": [] }, "apog_September2025Member": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "September2025Member", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "September 2025", "label": "September 2025 [Member]", "documentation": "September 2025 [Member]" } } }, "auth_ref": [] }, "apog_SettlementOfNewMarketsTaxCreditTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20240831", "localname": "SettlementOfNewMarketsTaxCreditTransaction", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": -1.0, "order": 17.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Settlement of New Markets Tax Credit transaction", "label": "Settlement of New Markets Tax Credit Transaction", "documentation": "Settlement of New Markets Tax Credit Transaction" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensation", "crdr": "debit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFCASHFLOWSUnaudited", "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Share-based compensation", "terseLabel": "Share-based compensation expense", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r7" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardAwardVestingPeriod1", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting period", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Award Vesting Period", "documentation": "Period over which grantee's right to exercise award under share-based payment arrangement is no longer contingent on satisfaction of service or performance condition, in 'PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents reported fact of one year, five months, and thirteen days. Includes, but is not limited to, combination of market, performance or service condition." } } }, "auth_ref": [ "r764" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Number of Awards (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period", "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)." } } }, "auth_ref": [ "r447" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted Average Grant Date Fair Value (in usd per share)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value", "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)." } } }, "auth_ref": [ "r447" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Total fair value of shares vested", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Vested in Period, Fair Value", "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." } } }, "auth_ref": [ "r451" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share-based Compensation Arrangement by Share-based Payment Award [Line Items]", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items]", "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." } } }, "auth_ref": [ "r428", "r430", "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Stock-Based Compensation Awards Granted and Weighted Average Grant Date Fair Value", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Grants in Period, Weighted Average Grant Date Fair Value [Table Text Block]", "documentation": "Tabular disclosure of the weighted-average grant-date fair value of equity options or other equity instruments granted during the year." } } }, "auth_ref": [ "r42" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationAdditionalInformationDetails", "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Award Type [Domain]", "label": "Award Type [Domain]", "documentation": "Award under share-based payment arrangement." } } }, "auth_ref": [ "r433", "r434", "r435", "r436", "r437", "r438", "r439", "r440", "r441", "r442", "r443", "r444", "r445", "r446", "r447", "r448", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458" ] }, "srt_ShareRepurchaseProgramAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ShareRepurchaseProgramAxis", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Axis]", "label": "Share Repurchase Program [Axis]" } } }, "auth_ref": [ "r953" ] }, "srt_ShareRepurchaseProgramDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2024", "localname": "ShareRepurchaseProgramDomain", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program [Domain]", "label": "Share Repurchase Program [Domain]" } } }, "auth_ref": [ "r953" ] }, "apog_ShareRepurchaseProgramMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ShareRepurchaseProgramMember", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Repurchase Program", "label": "Share Repurchase Program [Member]", "documentation": "Share Repurchase Program [Member]" } } }, "auth_ref": [] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SharesOutstanding", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Beginning balance (in shares)", "periodEndLabel": "Ending balance (in shares)", "label": "Shares, Outstanding", "documentation": "Number of shares issued which are neither cancelled nor held in the treasury." } } }, "auth_ref": [] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.apog.com/role/BusinessSegmentDataScheduleofSalesandOperatingIncomeLossDetails", "http://www.apog.com/role/RestructuringReserveDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statement Business Segments [Axis]", "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r113", "r114", "r115", "r116", "r124", "r200", "r204", "r207", "r208", "r209", "r210", "r211", "r212", "r213", "r214", "r215", "r216", "r218", "r219", "r221", "r222", "r223", "r224", "r225", "r226", "r227", "r228", "r230", "r231", "r232", "r236", "r288", "r289", "r290", "r291", "r292", "r293", "r294", "r295", "r296", "r303", "r306", "r329", "r334", "r602", "r603", "r604", "r605", "r606", "r607", "r608", "r609", "r610", "r611", "r612", "r728", "r731", "r732", "r738", "r782", "r991", "r993", "r994", "r995", "r996", "r997", "r998", "r999", "r1000", "r1001", "r1002", "r1003", "r1004", "r1005", "r1006", "r1007", "r1008", "r1009", "r1010", "r1011", "r1012", "r1013", "r1014", "r1015", "r1016", "r1017", "r1018", "r1019", "r1020" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r63", "r67", "r68", "r123", "r155", "r156", "r157", "r171", "r172", "r173", "r175", "r180", "r182", "r184", "r201", "r271", "r272", "r304", "r401", "r474", "r475", "r481", "r482", "r483", "r485", "r487", "r488", "r494", "r495", "r496", "r497", "r498", "r499", "r502", "r521", "r523", "r524", "r525", "r526", "r527", "r532", "r533", "r537", "r596", "r617", "r618", "r619", "r633", "r691" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementLineItems", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Line Items]", "label": "Statement [Line Items]", "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." } } }, "auth_ref": [ "r171", "r172", "r173", "r201", "r533", "r574", "r626", "r634", "r645", "r646", "r647", "r648", "r649", "r650", "r652", "r655", "r656", "r657", "r658", "r659", "r661", "r662", "r663", "r664", "r666", "r667", "r668", "r669", "r670", "r672", "r674", "r675", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r691", "r786" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Comprehensive Income [Abstract]", "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StatementTable", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Disclosure of information about statement of comprehensive income, income, other comprehensive income, financial position, cash flows, and shareholders' equity." } } }, "auth_ref": [ "r171", "r172", "r173", "r201", "r237", "r533", "r574", "r626", "r634", "r645", "r646", "r647", "r648", "r649", "r650", "r652", "r655", "r656", "r657", "r658", "r659", "r661", "r662", "r663", "r664", "r666", "r667", "r668", "r669", "r670", "r672", "r674", "r675", "r677", "r678", "r679", "r680", "r681", "r682", "r683", "r684", "r685", "r686", "r687", "r688", "r691", "r786" ] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "StkPrcOrTsrEstimationMethodTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Price or TSR Estimation Method", "label": "Stock Price or TSR Estimation Method [Text Block]" } } }, "auth_ref": [ "r805", "r815", "r825", "r857" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockAppreciationRightsSARSMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Stock Appreciation Rights (SARs)", "label": "Stock Appreciation Rights (SARs) [Member]", "documentation": "Right to receive cash or shares equal to appreciation of predetermined number of grantor's shares during predetermined time period." } } }, "auth_ref": [] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of stock, net of cancellations (in shares)", "label": "Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture", "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)." } } }, "auth_ref": [ "r12", "r62", "r63", "r102" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise of stock options (in shares)", "label": "Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period", "documentation": "Number of share options (or share units) exercised during the current period." } } }, "auth_ref": [ "r12", "r62", "r63", "r102", "r441" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of stock, net of cancellations", "label": "Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture", "documentation": "Value, after forfeiture, of shares issued under share-based payment arrangement. Excludes employee stock ownership plan (ESOP)." } } }, "auth_ref": [ "r42", "r62", "r63", "r102" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise of stock options", "label": "Stock Issued During Period, Value, Stock Options Exercised", "documentation": "Value of stock issued as a result of the exercise of stock options." } } }, "auth_ref": [ "r12", "r63", "r67", "r68", "r102" ] }, "us-gaap_StockRedeemedOrCalledDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRedeemedOrCalledDuringPeriodShares", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other share retirements (in shares)", "label": "Stock Redeemed or Called During Period, Shares", "documentation": "Number of stock bought back by the entity at the exercise price or redemption price." } } }, "auth_ref": [ "r12" ] }, "us-gaap_StockRedeemedOrCalledDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRedeemedOrCalledDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other share retirements", "label": "Stock Redeemed or Called During Period, Value", "documentation": "Equity impact of the value of stock bought back by the entity at the exercise price or redemption price." } } }, "auth_ref": [ "r12" ] }, "us-gaap_StockRepurchaseProgramRemainingNumberOfSharesAuthorizedToBeRepurchased": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchaseProgramRemainingNumberOfSharesAuthorizedToBeRepurchased", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Remaining shares authorized to be repurchased (in shares)", "label": "Share Repurchase Program, Remaining Authorized, Number of Shares", "documentation": "Number of shares remaining authorized to be purchased under share repurchase plan. Includes, but is not limited to, repurchase of stock and unit of ownership." } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Share repurchases (in shares)", "label": "Stock Repurchased and Retired During Period, Shares", "documentation": "Number of shares that have been repurchased and retired during the period." } } }, "auth_ref": [ "r12", "r62", "r63", "r102" ] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Share repurchases", "label": "Stock Repurchased and Retired During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased and retired during the period. The excess of the purchase price over par value can be charged against retained earnings (once the excess is fully allocated to additional paid in capital)." } } }, "auth_ref": [ "r12", "r62", "r63", "r102" ] }, "us-gaap_StockRepurchasedDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodShares", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share repurchases (in shares)", "label": "Stock Repurchased During Period, Shares", "documentation": "Number of shares that have been repurchased during the period and have not been retired and are not held in treasury. Some state laws may govern the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r12", "r62", "r63", "r102", "r630", "r691", "r711" ] }, "us-gaap_StockRepurchasedDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockRepurchasedDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ShareholdersEquityDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share repurchases, value", "label": "Stock Repurchased During Period, Value", "documentation": "Equity impact of the value of stock that has been repurchased during the period and has not been retired and is not held in treasury. Some state laws may mandate the circumstances under which an entity may acquire its own stock and prescribe the accounting treatment therefore. This element is used when state law does not recognize treasury stock." } } }, "auth_ref": [ "r12", "r62", "r63", "r102", "r633", "r691", "r711", "r794" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquity", "crdr": "credit", "calculation": { "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited": { "parentTag": "us-gaap_LiabilitiesAndStockholdersEquity", "weight": 1.0, "order": 6.0 } }, "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited", "http://www.apog.com/role/CONSOLIDATEDSTATEMENTSOFSHAREHOLDERSEQUITYUnaudited" ], "lang": { "en-us": { "role": { "totalLabel": "Total shareholders\u2019 equity", "periodStartLabel": "Beginning balance", "periodEndLabel": "Ending balance", "label": "Equity, Attributable to Parent", "documentation": "Amount of equity (deficit) attributable to parent. Excludes temporary equity and equity attributable to noncontrolling interest." } } }, "auth_ref": [ "r63", "r67", "r68", "r91", "r654", "r671", "r692", "r693", "r779", "r795", "r904", "r931", "r977", "r1024" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDBALANCESHEETSUnaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Shareholders\u2019 equity", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_StockholdersEquityNoteDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "StockholdersEquityNoteDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/ShareholdersEquity" ], "lang": { "en-us": { "role": { "terseLabel": "Stockholders' Equity", "label": "Equity [Text Block]", "documentation": "The entire disclosure for equity." } } }, "auth_ref": [ "r99", "r167", "r385", "r387", "r389", "r390", "r391", "r392", "r393", "r394", "r395", "r396", "r397", "r399", "r401", "r501", "r694", "r695", "r712" ] }, "us-gaap_SubsequentEventLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventLineItems", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Line Items]", "label": "Subsequent Event [Line Items]", "documentation": "Detail information of subsequent event by type. User is expected to use existing line items from elsewhere in the taxonomy as the primary line items for this disclosure, which is further associated with dimension and member elements pertaining to a subsequent event." } } }, "auth_ref": [ "r528", "r539" ] }, "us-gaap_SubsequentEventMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventMember", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event", "label": "Subsequent Event [Member]", "documentation": "Identifies event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r528", "r539" ] }, "us-gaap_SubsequentEventTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventTable", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event [Table]", "label": "Subsequent Event [Table]", "documentation": "Disclosure of information about significant event or transaction occurring between statement of financial position date and date when financial statements were issued." } } }, "auth_ref": [ "r528", "r539" ] }, "us-gaap_SubsequentEventTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventTypeAxis", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Axis]", "label": "Subsequent Event Type [Axis]", "documentation": "Information by event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r528", "r539" ] }, "us-gaap_SubsequentEventTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventTypeDomain", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Event Type [Domain]", "label": "Subsequent Event Type [Domain]", "documentation": "Event that occurred after the balance sheet date but before financial statements are issued or available to be issued." } } }, "auth_ref": [ "r528", "r539" ] }, "us-gaap_SubsequentEventsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsAbstract", "lang": { "en-us": { "role": { "label": "Subsequent Events [Abstract]" } } }, "auth_ref": [] }, "us-gaap_SubsequentEventsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SubsequentEventsTextBlock", "presentation": [ "http://www.apog.com/role/SubsequentEvents" ], "lang": { "en-us": { "role": { "terseLabel": "Subsequent Events", "label": "Subsequent Events [Text Block]", "documentation": "The entire disclosure for significant events or transactions that occurred after the balance sheet date through the date the financial statements were issued or the date the financial statements were available to be issued. Examples include: the sale of a capital stock issue, purchase of a business, settlement of litigation, catastrophic loss, significant foreign exchange rate changes, loans to insiders or affiliates, and transactions not in the ordinary course of business." } } }, "auth_ref": [ "r538", "r540" ] }, "us-gaap_SupplierFinanceProgramObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligationsDetails" ], "lang": { "en-us": { "role": { "periodStartLabel": "Balance at beginning of period", "periodEndLabel": "Balance at end of period", "label": "Supplier Finance Program, Obligation", "documentation": "Amount of obligation for supplier finance program." } } }, "auth_ref": [ "r317", "r318", "r319", "r322", "r323", "r740" ] }, "us-gaap_SupplierFinanceProgramObligationDecreaseSettlement": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramObligationDecreaseSettlement", "crdr": "debit", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligationsDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Obligations settled", "label": "Supplier Finance Program, Obligation, Settlement", "documentation": "Amount of decrease in obligation for supplier finance program from settlement." } } }, "auth_ref": [ "r321", "r740" ] }, "us-gaap_SupplierFinanceProgramObligationIncrease": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramObligationIncrease", "crdr": "credit", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Obligations added to the program", "label": "Supplier Finance Program, Obligation, Addition", "documentation": "Amount of increase in obligation for supplier finance program." } } }, "auth_ref": [ "r320", "r740" ] }, "us-gaap_SupplierFinanceProgramObligationRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramObligationRollForward", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligationsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Supplier Finance Program, Obligation [Roll Forward]", "label": "Supplier Finance Program, Obligation [Roll Forward]", "documentation": "A roll forward is a reconciliation of a concept from the beginning of a period to the end of a period." } } }, "auth_ref": [] }, "us-gaap_SupplierFinanceProgramTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramTableTextBlock", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligationsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Obligation Activity and Outstanding Balances", "label": "Supplier Finance Program [Table Text Block]", "documentation": "Tabular disclosure of supplier finance program." } } }, "auth_ref": [ "r740", "r941" ] }, "us-gaap_SupplierFinanceProgramTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "SupplierFinanceProgramTextBlock", "presentation": [ "http://www.apog.com/role/SupplierFinanceProgramObligations" ], "lang": { "en-us": { "role": { "terseLabel": "Supplier Finance Program Obligations", "label": "Supplier Finance Program [Text Block]", "documentation": "The entire disclosure for supplier finance program." } } }, "auth_ref": [ "r313", "r314", "r315", "r316", "r739" ] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TabularListTableTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Tabular List, Table", "label": "Tabular List [Table Text Block]" } } }, "auth_ref": [ "r851" ] }, "apog_TargetNumberOfPerformanceShares": { "xbrltype": "percentItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TargetNumberOfPerformanceShares", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationScheduleofStockBasedCompensationAwardsGrantedandWeightedAverageGrantDateFairValueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Target number of performance shares", "label": "Target Number of Performance Shares", "documentation": "Target Number of Performance Shares" } } }, "auth_ref": [] }, "apog_TermLoanFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TermLoanFacilityMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Term Loan Facility", "label": "Term Loan Facility [Member]", "documentation": "Term Loan Facility" } } }, "auth_ref": [] }, "apog_TermSOFRAndCORRAMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TermSOFRAndCORRAMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Term SOFR and CORRA", "label": "Term SOFR and CORRA [Member]", "documentation": "Term SOFR and CORRA" } } }, "auth_ref": [] }, "apog_TerminationDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TerminationDateAxis", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date [Axis]", "label": "Termination Date [Axis]", "documentation": "Termination Date [Axis]" } } }, "auth_ref": [] }, "apog_TerminationDateDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TerminationDateDomain", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesScheduleofEstimatedBenefitsRelatedtoourOutstandingNMTCTransactionsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date [Domain]", "label": "Termination Date [Domain]", "documentation": "[Domain] for Termination Date [Axis]" } } }, "auth_ref": [] }, "apog_ThirdPartyFeesMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "ThirdPartyFeesMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Third-Party Fees", "label": "Third-Party Fees [Member]", "documentation": "Third-Party Fees" } } }, "auth_ref": [] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TimingOfTransferOfGoodOrServiceAxis", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Timing of Transfer of Good or Service [Axis]", "label": "Timing of Transfer of Good or Service [Axis]", "documentation": "Information by timing of transfer of good or service to customer." } } }, "auth_ref": [ "r756", "r955" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TimingOfTransferOfGoodOrServiceDomain", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Timing of Transfer of Good or Service [Domain]", "label": "Timing of Transfer of Good or Service [Domain]", "documentation": "Timing of transfer of good or service to customer. Includes, but is not limited to, at point in time or over time." } } }, "auth_ref": [ "r756", "r955" ] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Amount", "label": "Total Shareholder Return Amount" } } }, "auth_ref": [ "r843" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TotalShareholderRtnVsPeerGroupTextBlock", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Total Shareholder Return Vs Peer Group", "label": "Total Shareholder Return Vs Peer Group [Text Block]" } } }, "auth_ref": [ "r850" ] }, "us-gaap_TradeAccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TradeAccountsReceivableMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Trade accounts", "label": "Trade Accounts Receivable [Member]", "documentation": "Amount due from customers or clients for goods or services that have been delivered or sold in the normal course of business." } } }, "auth_ref": [] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangement:", "label": "Trading Arrangement [Axis]" } } }, "auth_ref": [ "r870" ] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TradingArrByIndTable", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangements, by Individual", "label": "Trading Arrangements, by Individual [Table]" } } }, "auth_ref": [ "r872" ] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2024", "localname": "TradingSymbol", "presentation": [ "http://www.apog.com/role/CoverPage" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Symbol", "label": "Trading Symbol", "documentation": "Trading symbol of an instrument as listed on an exchange." } } }, "auth_ref": [] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TransferredAtPointInTimeMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized at shipment", "label": "Transferred at Point in Time [Member]", "documentation": "Contract with customer in which good or service is transferred at point in time." } } }, "auth_ref": [ "r756" ] }, "apog_TransferredOverTimeInputMethodMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TransferredOverTimeInputMethodMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized over time (input method)", "label": "Transferred over Time - Input Method [Member]", "documentation": "Transferred over Time - Input Method" } } }, "auth_ref": [] }, "apog_TransferredOverTimeOutputMethodMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "TransferredOverTimeOutputMethodMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized over time (output method)", "label": "Transferred over Time - Output Method [Member]", "documentation": "Transferred over Time - Output Method" } } }, "auth_ref": [] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsScheduleofAvailableforSaleMarketableSecuritiesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instruments [Domain]", "label": "Financial Instruments [Domain]", "documentation": "Instrument or contract that imposes a contractual obligation to deliver cash or another financial instrument or to exchange other financial instruments on potentially unfavorable terms and conveys a contractual right to receive cash or another financial instrument or to exchange other financial instruments on potentially favorable terms." } } }, "auth_ref": [ "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r260", "r261", "r262", "r263", "r264", "r265", "r266", "r267", "r268", "r269", "r381", "r398", "r500", "r517", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r548", "r549", "r550", "r551", "r552", "r553", "r554", "r555", "r557", "r558", "r559", "r560", "r561", "r562", "r563", "r564", "r565", "r566", "r567", "r568", "r569", "r570", "r571", "r597", "r767", "r769", "r771", "r772", "r773", "r774", "r775", "r776", "r777", "r780", "r886", "r887", "r888", "r889", "r890", "r891", "r892", "r927", "r928", "r929", "r930", "r961", "r964", "r965", "r966", "r973", "r976" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Adoption Date", "label": "Trading Arrangement Adoption Date" } } }, "auth_ref": [ "r873" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Arrangement Duration", "label": "Trading Arrangement Duration" } } }, "auth_ref": [ "r874" ] }, "ecd_TrdArrExpirationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrExpirationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Expiration Date", "label": "Trading Arrangement Expiration Date" } } }, "auth_ref": [ "r874" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Trading Arrangement, Individual Name" } } }, "auth_ref": [ "r872" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Title", "label": "Trading Arrangement, Individual Title" } } }, "auth_ref": [ "r872" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrSecuritiesAggAvailAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Aggregate Available", "label": "Trading Arrangement, Securities Aggregate Available Amount" } } }, "auth_ref": [ "r875" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date", "label": "Trading Arrangement Termination Date" } } }, "auth_ref": [ "r873" ] }, "us-gaap_TypeOfRestructuringDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "TypeOfRestructuringDomain", "presentation": [ "http://www.apog.com/role/RestructuringAdditionalInformationDetails", "http://www.apog.com/role/RestructuringRestructuringCostsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Type of Restructuring [Domain]", "label": "Type of Restructuring [Domain]", "documentation": "Identification of the types of restructuring costs." } } }, "auth_ref": [ "r326", "r327", "r332", "r333" ] }, "apog_UWIntercoLLCMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "UWIntercoLLCMember", "presentation": [ "http://www.apog.com/role/SubsequentEventsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "UW Interco, LLC", "label": "UW Interco, LLC [Member]", "documentation": "UW Interco, LLC" } } }, "auth_ref": [] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "UndrlygSecurityMktPriceChngPct", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Security Market Price Change", "label": "Underlying Security Market Price Change, Percent" } } }, "auth_ref": [ "r869" ] }, "us-gaap_UnrecognizedTaxBenefits": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "UnrecognizedTaxBenefits", "crdr": "credit", "presentation": [ "http://www.apog.com/role/IncomeTaxesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized tax benefits", "label": "Unrecognized Tax Benefits", "documentation": "Amount of unrecognized tax benefits." } } }, "auth_ref": [ "r465", "r471", "r765" ] }, "apog_UnsecuredSeniorCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "UnsecuredSeniorCreditFacilityMember", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Unsecured Senior Credit Facility", "label": "Unsecured Senior Credit Facility [Member]", "documentation": "Unsecured Senior Credit Facility" } } }, "auth_ref": [] }, "us-gaap_VariableRateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateAxis", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Variable Rate [Axis]", "label": "Variable Rate [Axis]", "documentation": "Information by type of variable rate." } } }, "auth_ref": [] }, "us-gaap_VariableRateDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "VariableRateDomain", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Variable Rate [Domain]", "label": "Variable Rate [Domain]", "documentation": "Interest rate that fluctuates over time as a result of an underlying benchmark interest rate or index." } } }, "auth_ref": [] }, "ecd_VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "VstngDtFrValOfEqtyAwrdsGrntdAndVstdInCvrdYrMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year", "label": "Vesting Date Fair Value of Equity Awards Granted and Vested in Covered Year [Member]" } } }, "auth_ref": [ "r839" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited", "http://www.apog.com/role/EarningsperShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted average diluted shares outstanding (in shares)", "terseLabel": "Diluted earnings per share \u2013 weighted average common shares and potential common shares outstanding", "label": "Weighted Average Number of Shares Outstanding, Diluted", "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." } } }, "auth_ref": [ "r187", "r195" ] }, "us-gaap_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2024", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.apog.com/role/CONSOLIDATEDRESULTSOFOPERATIONSUnaudited", "http://www.apog.com/role/EarningsperShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted average basic shares outstanding (in shares)", "terseLabel": "Basic earnings per share \u2013 weighted average common shares outstanding", "label": "Weighted Average Number of Shares Outstanding, Basic", "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." } } }, "auth_ref": [ "r186", "r195" ] }, "apog_WellsFargoBankN.A.Member": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20240831", "localname": "WellsFargoBankN.A.Member", "presentation": [ "http://www.apog.com/role/DebtAdditionalInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Wells Fargo Bank, N.A.", "label": "Wells Fargo Bank, N.A. [Member]", "documentation": "Wells Fargo Bank, N.A." } } }, "auth_ref": [] }, "ecd_YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2024", "localname": "YrEndFrValOfEqtyAwrdsGrntdInCvrdYrOutsdngAndUnvstdMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested", "label": "Year-end Fair Value of Equity Awards Granted in Covered Year that are Outstanding and Unvested [Member]" } } }, "auth_ref": [ "r837" ] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "7", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-7" }, "r1": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "30", "Paragraph": "8", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479637/805-30-30-8" }, "r2": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "SubTopic": "230", "Topic": "830", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r3": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r4": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r5": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-12" }, "r6": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-20" }, "r7": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r8": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "SubTopic": "10", "Topic": "360", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r10": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "SubTopic": "30", "Topic": "805", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479581/805-30-50-1" }, "r11": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(c)(3)", "SubTopic": "10", "Topic": "810", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-1A" }, "r12": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "505", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r13": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-2" }, "r14": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "SubTopic": "10", "Topic": "220", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482739/220-10-55-15" }, "r15": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "SubTopic": "10", "Topic": "210", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r16": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483489/210-10-50-1" }, "r17": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "14A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-14A" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "220", "SubTopic": "10", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-5" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-4" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-3" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-4" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-5" }, "r26": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "260", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r27": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r28": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r29": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "280", "SubTopic": "10", "Section": "50", "Paragraph": "30", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "360", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-1" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "420", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r32": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "420", "SubTopic": "10", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r33": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-5" }, "r34": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "50", "Section": "40", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481303/470-50-40-2" }, "r35": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "470", "SubTopic": "50", "Section": "40", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481303/470-50-40-4" }, "r36": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481142/505-10-45-2" }, "r37": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-10" }, "r38": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-3" }, "r39": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-4" }, "r40": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-5" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "505", "SubTopic": "10", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-8" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-12" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "718", "SubTopic": "20", "Section": "55", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481089/718-20-55-13" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-2" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479328/805-10-50-3" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4A" }, "r49": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r50": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4C" }, "r51": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r52": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "55", "Paragraph": "182", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480401/815-10-55-182" }, "r53": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/205/tableOfContent" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r57": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r58": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r59": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r61": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r62": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r63": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(31))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(32))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r70": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r71": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r72": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r73": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r74": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r75": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r76": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(10))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r77": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r78": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r79": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r80": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r81": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r82": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r83": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r84": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r85": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-13" }, "r86": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r87": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r88": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r89": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-25" }, "r90": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r91": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 4.E)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480418/310-10-S99-2" }, "r92": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "330", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.BB)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480581/330-10-S99-2" }, "r93": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.P.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-1" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.b.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/440/tableOfContent" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/470/tableOfContent" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "480", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480244/480-10-S99-1" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/505/tableOfContent" }, "r100": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-6" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-7" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/810/tableOfContent" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "19", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-19" }, "r105": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4B" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r107": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(13))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r108": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r109": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r110": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r111": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r112": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r113": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r114": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r115": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r116": { "role": "http://fasb.org/us-gaap/role/ref/otherTransitionRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r117": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Subparagraph": "(a)", "SubTopic": "20", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482659/740-20-45-2" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r119": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r120": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-9" }, "r121": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h))", "SubTopic": "10", "Topic": "235", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r122": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/606/tableOfContent" }, "r123": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "105", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479343/105-10-65-6" }, "r124": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-1" }, "r125": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "205", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483499/205-20-50-7" }, "r126": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r127": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-5" }, "r128": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r129": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(14))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r130": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r131": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r132": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r133": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r134": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(27)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r135": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(28))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r136": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(29))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r137": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(3)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r138": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(30)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r139": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r140": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r141": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r142": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r143": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483466/210-20-50-3" }, "r144": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-10" }, "r145": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r146": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r147": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10A", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-10A" }, "r148": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-11" }, "r149": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-12" }, "r150": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r151": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1A" }, "r153": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r154": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482790/220-10-45-1B" }, "r155": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r156": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r157": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r158": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r159": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(24))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r160": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r161": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r162": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-11" }, "r163": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-12" }, "r164": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-24" }, "r165": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-8" }, "r166": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r167": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(e)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r168": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r169": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r170": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-04(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-3" }, "r171": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r172": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r173": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r174": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r175": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-1" }, "r176": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r177": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-11" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-3" }, "r179": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-4" }, "r180": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r181": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r182": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-7" }, "r183": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-8" }, "r184": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-9" }, "r185": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/260/tableOfContent" }, "r186": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-10" }, "r187": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-16" }, "r188": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-2" }, "r189": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-22" }, "r190": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-23" }, "r191": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-28A" }, "r192": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r193": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "60B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-60B" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482689/260-10-45-7" }, "r195": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r196": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r197": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-2" }, "r198": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-3" }, "r199": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-15" }, "r200": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r201": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-1" }, "r202": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482987/272-10-50-1" }, "r203": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/280/tableOfContent" }, "r204": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r205": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r206": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-21" }, "r207": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r208": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r209": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r210": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r211": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r212": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r213": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r214": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r215": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Subparagraph": "(j)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-24" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-25" }, "r220": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26" }, "r221": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26A" }, "r222": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26B" }, "r223": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "26C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-26C" }, "r224": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r225": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r227": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r228": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r229": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r230": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r231": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r232": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "34", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-34" }, "r233": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "40", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-40" }, "r234": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r235": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-41" }, "r236": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "42", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-42" }, "r237": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-13" }, "r238": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481990/310-10-45-2" }, "r239": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481962/310-10-50-4" }, "r240": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r241": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r242": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r243": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r244": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r245": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r246": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r247": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r248": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r249": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r250": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r251": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r252": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r253": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r254": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(aaa)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r255": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r256": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r257": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r258": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r259": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r260": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r261": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5" }, "r262": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r263": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r264": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r265": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r266": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r267": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5B" }, "r270": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r271": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "4", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-4" }, "r272": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "5", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479654/326-10-65-5" }, "r273": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479344/326-20-45-1" }, "r274": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-11" }, "r275": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r276": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r277": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r279": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-14" }, "r280": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-16" }, "r281": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-5" }, "r282": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479130/326-30-45-1" }, "r283": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-4" }, "r284": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-7" }, "r285": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479106/326-30-50-9" }, "r286": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/330/tableOfContent" }, "r287": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482598/350-20-45-1" }, "r288": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r292": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r293": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r297": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482686/350-30-45-1" }, "r298": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r299": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r300": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r301": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r302": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-1" }, "r303": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-3" }, "r304": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476166/350-60-65-1" }, "r305": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r306": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "360", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482099/360-10-50-3" }, "r307": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r308": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r309": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r310": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r311": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r312": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r313": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/405-50/tableOfContent" }, "r314": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r315": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r316": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r317": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r318": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r319": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r320": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r321": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r322": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r323": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-4" }, "r324": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/420/tableOfContent" }, "r325": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r326": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r327": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r328": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r329": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r330": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r331": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.P.3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-1" }, "r332": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.b.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r333": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.b.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r334": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r335": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r336": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r337": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "440", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482648/440-10-50-4" }, "r338": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-4" }, "r339": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483076/450-20-50-9" }, "r340": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r341": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "450", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.Y.Q4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480102/450-20-S99-1" }, "r342": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r343": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r344": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r345": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r346": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r347": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r348": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r349": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r350": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r351": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r352": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r353": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iii)(C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r354": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(4)(iv))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r355": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1B", "Subparagraph": "(SX 210.13-02(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1B" }, "r356": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r357": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r358": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r359": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r360": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r361": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r363": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r364": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r365": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r366": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r367": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1C" }, "r368": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r369": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r370": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1D", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1D" }, "r371": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r372": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r373": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r374": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1E", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1E" }, "r375": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r376": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r377": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r378": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1F", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1F" }, "r379": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r380": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r381": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r382": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1I", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1I" }, "r383": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-4" }, "r384": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-6" }, "r385": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r386": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r387": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r388": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r389": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r390": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r391": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r392": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r393": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r394": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-14" }, "r395": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "16", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-16" }, "r396": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r397": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-18" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-2" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.3-04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480008/505-10-S99-1" }, "r402": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-1" }, "r403": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-2" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479837/606-10-45-3" }, "r405": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r406": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r407": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r408": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r409": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r410": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12" }, "r411": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-12A" }, "r412": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r413": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-15" }, "r414": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-4" }, "r415": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r416": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r417": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-8" }, "r418": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-9" }, "r419": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r420": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r421": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r422": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(A)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r423": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(B)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r424": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(02)(C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r425": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r426": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-5" }, "r427": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/718/tableOfContent" }, "r428": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "1D", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-1D" }, "r429": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-2" }, "r430": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480483/718-10-35-3" }, "r431": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480454/718-10-45-1" }, "r432": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r434": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r435": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r436": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r437": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r438": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r439": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r440": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r441": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r442": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r443": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)(iv)(04)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r444": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r446": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r447": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r448": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(02)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r449": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r450": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r451": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r452": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r453": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r454": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r455": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r456": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r457": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r458": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(f)(2)(v)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r459": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r460": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(h)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r461": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r462": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(l)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r463": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "720", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483359/720-20-50-1" }, "r464": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/740/tableOfContent" }, "r465": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "10B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482525/740-10-45-10B" }, "r466": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-10" }, "r467": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12" }, "r468": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12B" }, "r469": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-12C" }, "r470": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-14" }, "r471": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15A" }, "r472": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "17", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-17" }, "r473": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "21", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-21" }, "r474": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r475": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(d)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482615/740-10-65-8" }, "r476": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.5.Q1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r477": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 6.I.7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-1" }, "r478": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 11.C)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479360/740-10-S99-2" }, "r479": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "270", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477891/740-270-50-1" }, "r480": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482603/740-30-50-2" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(d)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r483": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r484": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r485": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "323", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478666/740-323-65-2" }, "r486": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479907/805-20-50-5" }, "r487": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(d)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r488": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "805", "SubTopic": "60", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147476176/805-60-65-1" }, "r489": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r490": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "25", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481231/810-10-45-25" }, "r491": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r492": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "810", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481203/810-10-50-3" }, "r493": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4E" }, "r494": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r495": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r496": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r497": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r498": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(h)(1)(iv)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r499": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "6", "Subparagraph": "(i)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480528/815-20-65-6" }, "r500": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-5" }, "r501": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480237/815-40-50-6" }, "r502": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r503": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r504": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r505": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r506": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r507": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r508": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r509": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r510": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r511": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r512": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r513": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r514": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r515": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r516": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r517": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6B" }, "r518": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-10" }, "r519": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r520": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "230", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477401/830-230-45-1" }, "r521": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-17" }, "r522": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r523": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r524": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r525": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r526": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "20", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481694/830-30-45-20" }, "r527": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-1" }, "r528": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "830", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481674/830-30-50-2" }, "r529": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483013/835-20-50-1" }, "r530": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483013/835-20-50-1" }, "r531": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r532": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "8", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479832/842-10-65-8" }, "r533": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "12A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479165/842-20-35-12A" }, "r534": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479041/842-20-45-1" }, "r536": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "842", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-7A" }, "r537": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "848", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(a)(3)(iii)(03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483550/848-10-65-2" }, "r538": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/855/tableOfContent" }, "r539": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2" }, "r540": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "855", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483399/855-10-50-2" }, "r541": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r542": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r543": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r544": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r545": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r546": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(bb)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r547": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r548": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r549": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r550": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r551": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r552": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r553": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r554": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481444/860-30-45-1" }, "r555": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r556": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481420/860-30-50-7" }, "r557": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r558": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r559": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r560": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(4)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-3" }, "r561": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r562": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r563": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r564": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r565": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r566": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r567": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(a)(7)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r568": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r569": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r570": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r571": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "860", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481229/860-50-50-4" }, "r572": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "910", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482546/910-10-50-6" }, "r573": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "912", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478345/912-310-45-11" }, "r574": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "924", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 11.L)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479941/924-10-S99-1" }, "r575": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(10)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r576": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-03(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478546/942-210-S99-1" }, "r577": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r578": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(26))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r579": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-04(27))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478524/942-220-S99-1" }, "r580": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.9-05(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477314/942-235-S99-1" }, "r581": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A" }, "r582": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477268/942-320-50-3A" }, "r583": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "942", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478451/942-360-50-1" }, "r584": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r585": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(12))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r586": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r587": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(21))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r588": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r589": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r590": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(23)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r591": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(25))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r592": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r593": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r594": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r595": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r596": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r597": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r598": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(20))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r599": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r600": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r601": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-04(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477250/944-220-S99-1" }, "r602": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r606": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r607": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column J))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-16(Column K))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477965/944-235-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-9" }, "r617": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r618": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r619": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r620": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r621": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(g)(2)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r622": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "2", "Subparagraph": "(h)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480016/944-40-65-2" }, "r623": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SAB Topic 5.W.Q2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479583/944-40-S99-1" }, "r624": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-1" }, "r625": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480424/946-10-50-2" }, "r626": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r627": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r628": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r629": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r630": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-03(i)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479886/946-10-S99-3" }, "r631": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-11" }, "r632": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480990/946-20-50-13" }, "r633": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r634": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477796/946-210-45-4" }, "r635": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r636": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r637": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r638": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r639": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-12" }, "r640": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r641": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r642": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r643": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r644": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r645": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r646": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r647": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r648": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(12)(b)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r649": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r650": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(13)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r651": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(15))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r652": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(16)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r653": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(17))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r654": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(19))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r655": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r656": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(2)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r657": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r658": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r659": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(3)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r660": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(5)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r661": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r662": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r663": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r664": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(6)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r665": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r666": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r667": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(c))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r668": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r669": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(9)(e))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r670": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r671": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.6-05(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-2" }, "r672": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-3" }, "r673": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479105/946-220-45-7" }, "r674": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r675": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r676": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(2)(g)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r677": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r678": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r679": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r680": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r681": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r682": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(a)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r683": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r684": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r685": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r686": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r687": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r688": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(7)(c)(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r689": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-07(9))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-1" }, "r690": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(1)(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r691": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r692": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(6))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r693": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r694": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2" }, "r695": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "235", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477968/946-235-50-2" }, "r696": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r697": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r698": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r699": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r700": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column A)(Footnote 3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r701": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G)(Footnote 8))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r702": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5", "Subparagraph": "(SX 210.12-13(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5" }, "r703": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5A", "Subparagraph": "(SX 210.12-13A(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5A" }, "r704": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column A))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r705": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r706": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r707": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5B", "Subparagraph": "(SX 210.12-13B(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5B" }, "r708": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r709": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r710": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r711": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-2" }, "r712": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "505", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478448/946-505-50-6" }, "r713": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479196/954-310-45-1" }, "r714": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "440", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478522/954-440-50-1" }, "r715": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "976", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477332/976-310-50-1" }, "r716": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "978", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479230/978-310-50-1" }, "r717": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "985", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481283/985-20-50-2" }, "r718": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)(1)", "SubTopic": "10", "Topic": "815", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-4D" }, "r719": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r720": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483467/210-10-45-1" }, "r721": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r722": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r723": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02(6)(a)(4))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480566/210-10-S99-1" }, "r724": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "210", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483444/210-20-55-22" }, "r725": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "52", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482635/260-10-55-52" }, "r726": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "31", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-31" }, "r727": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r728": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(bb)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r729": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r730": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "47", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-47" }, "r731": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "48", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-48" }, "r732": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "49", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-49" }, "r733": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r734": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r735": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "54", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482785/280-10-55-54" }, "r736": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "310", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12A", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481933/310-10-55-12A" }, "r737": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "326", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479081/326-30-55-8" }, "r738": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482548/350-20-55-24" }, "r739": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477128/405-50-55-3" }, "r740": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477128/405-50-55-5" }, "r741": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r742": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r743": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.b.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r744": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SAB Topic 5.P.4.b.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479823/420-10-S99-2" }, "r745": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r746": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69B" }, "r747": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69C" }, "r748": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69E" }, "r749": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "69F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481568/470-20-55-69F" }, "r750": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "505", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481112/505-10-50-13" }, "r751": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r752": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r753": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r754": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r755": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r756": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r757": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "91", "Subparagraph": "(g)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479777/606-10-55-91" }, "r758": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(ii)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r759": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(d)(iv)(01)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480506/715-20-50-1" }, "r760": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "17", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480482/715-20-55-17" }, "r761": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "11", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-11" }, "r762": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480576/715-80-50-6" }, "r763": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "715", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480547/715-80-55-8" }, "r764": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r765": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-217" }, "r766": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "231", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482663/740-10-55-231" }, "r767": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r768": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "100", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-100" }, "r769": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "101", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-101" }, "r770": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "102", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-102" }, "r771": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "103", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-103" }, "r772": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r773": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r774": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r775": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r776": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r777": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "107", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482078/820-10-55-107" }, "r778": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482949/835-30-55-8" }, "r779": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481372/852-10-55-10" }, "r780": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "860", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481395/860-30-55-4" }, "r781": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "29F", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-29F" }, "r782": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "9C", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480046/944-40-55-9C" }, "r783": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-1" }, "r784": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r785": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477439/946-210-55-1" }, "r786": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477802/946-310-45-1" }, "r787": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-12(Column A)(Footnote 2)(i))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-1" }, "r788": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.12-12A(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-2" }, "r789": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.12-12B(Column A)(Footnote 1)(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-3" }, "r790": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column A)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r791": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "5C", "Subparagraph": "(SX 210.12-13C(Column B)(Footnote 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-5C" }, "r792": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "320", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "6", "Subparagraph": "(SX 210.12-14(Column A)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477271/946-320-S99-6" }, "r793": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-10" }, "r794": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-11" }, "r795": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Topic": "946", "SubTopic": "830", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "12", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479168/946-830-55-12" }, "r796": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r797": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r798": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r799": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r800": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r801": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r802": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r803": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r804": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r805": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r806": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r807": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r808": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r809": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r810": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r811": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r812": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r813": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r814": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r815": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r816": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r817": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r818": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r819": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r820": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r821": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r822": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r823": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r824": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r825": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r826": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r827": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r828": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r829": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r830": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r831": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Forms 10-K, 10-Q, 20-F", "Number": "240", "Section": "13", "Subsection": "a-1" }, "r832": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r833": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r834": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r835": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r836": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "ii" }, "r837": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "i" }, "r838": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "ii" }, "r839": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iii" }, "r840": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "iv" }, "r841": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "v" }, "r842": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1", "Subclause": "vi" }, "r843": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r844": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r845": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r846": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r847": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r848": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r849": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r850": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r851": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r852": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r853": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r854": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r855": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r856": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r857": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r858": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r859": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r860": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r861": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r862": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r863": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r864": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r865": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "A" }, "r866": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "C" }, "r867": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "D" }, "r868": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "E" }, "r869": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2", "Subparagraph": "ii", "Sentence": "F" }, "r870": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r871": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r872": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r873": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r874": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r875": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r876": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r877": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Number": "229", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "C", "Clause": "1" }, "r878": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "A", "Number": "229" }, "r879": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Number": "229" }, "r880": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii", "Sentence": "B", "Clause": "1", "Subclause": "i", "Number": "229" }, "r881": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r882": { "role": "http://www.xbrl.org/2003/role/recommendedDisclosureRef", "Topic": "272", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483014/272-10-45-3" }, "r883": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "15", "SubTopic": "10", "Topic": "230", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-15" }, "r884": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(b)(1)", "SubTopic": "10", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-13" }, "r885": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(g)(1)", "SubTopic": "20", "Topic": "842", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478964/842-20-50-4" }, "r886": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "a", "Publisher": "SEC" }, "r887": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(1)", "Publisher": "SEC" }, "r888": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(2)", "Publisher": "SEC" }, "r889": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "b", "Subparagraph": "(3)", "Publisher": "SEC" }, "r890": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r891": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r892": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "c", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r893": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-4" }, "r894": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-5" }, "r895": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482765/220-10-50-6" }, "r896": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(SX 210.5-03)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483621/220-10-S99-2" }, "r897": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "14", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-14" }, "r898": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "17", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-17" }, "r899": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r900": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "28", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482740/230-10-45-28" }, "r901": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "230", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482913/230-10-50-2" }, "r902": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r903": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(f))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r904": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(g)(1)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r905": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "235", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.4-08(h)(1)(Note 1))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480678/235-10-S99-1" }, "r906": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "23", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-23" }, "r907": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "24", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-24" }, "r908": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483421/250-10-45-5" }, "r909": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "250", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147483443/250-10-50-6" }, "r910": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "260", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482662/260-10-50-1" }, "r911": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "270", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482964/270-10-50-1" }, "r912": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-15" }, "r913": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "18", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-18" }, "r914": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "22", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-22" }, "r915": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "30", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-30" }, "r916": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(ee)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r917": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "32", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482810/280-10-50-32" }, "r918": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "310", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "40", "Paragraph": "7", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481628/310-20-40-7" }, "r919": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-1" }, "r920": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "11", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481830/320-10-45-11" }, "r921": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r922": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-2" }, "r923": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r924": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-3" }, "r925": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r926": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-5A" }, "r927": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "320", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "9", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481800/320-10-50-9" }, "r928": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r929": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r930": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "321", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479536/321-10-50-3" }, "r931": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "323", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481687/323-10-50-3" }, "r932": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479319/326-20-50-13" }, "r933": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r934": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(h)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482573/350-20-50-1" }, "r935": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r936": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482665/350-30-50-2" }, "r937": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "30", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/405-30/tableOfContent" }, "r938": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r939": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r940": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(e)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477092/405-40-50-1" }, "r941": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "405", "SubTopic": "50", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479468/405-50-50-3" }, "r942": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "410", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481931/410-30-50-10" }, "r943": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482047/420-10-45-3" }, "r944": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "420", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482017/420-10-50-1" }, "r945": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org/450/tableOfContent" }, "r946": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r947": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482425/460-10-50-8" }, "r948": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r949": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481544/470-10-50-6" }, "r950": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(ii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r951": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1A", "Subparagraph": "(SX 210.13-01(a)(4)(iii))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480097/470-10-S99-1A" }, "r952": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "470", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481139/470-20-50-1B" }, "r953": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "505", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481520/505-30-50-4" }, "r954": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "10", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-10" }, "r955": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "606", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479806/606-10-50-5" }, "r956": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480429/718-10-50-2" }, "r957": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482685/740-10-50-15" }, "r958": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1A" }, "r959": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480434/815-10-50-1B" }, "r960": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "815", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "1", "Subparagraph": "(e)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480175/815-40-65-1" }, "r961": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "35", "Paragraph": "54B", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482134/820-10-35-54B" }, "r962": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r963": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r964": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r965": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r966": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(bbb)(2)(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r967": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r968": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r969": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(1a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r970": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r971": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r972": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2" }, "r973": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2E", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-2E" }, "r974": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r975": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-3" }, "r976": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482106/820-10-50-6A" }, "r977": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "825", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "28", "Subparagraph": "(f)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482907/825-10-50-28" }, "r978": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482925/835-30-45-2" }, "r979": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "835", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147482900/835-30-50-1" }, "r980": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r981": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "852", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481404/852-10-50-7" }, "r982": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r983": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r984": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-3" }, "r985": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r986": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r987": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "860", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147481326/860-20-50-4" }, "r988": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(16)(a)(2))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r989": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r990": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.7-03(a)(5))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478777/944-210-S99-1" }, "r991": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479432/944-30-50-2B" }, "r992": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147477363/944-310-50-3" }, "r993": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r994": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4B" }, "r995": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4C", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4C" }, "r996": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4D", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4D" }, "r997": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4G", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-4G" }, "r998": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r999": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1000": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1001": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-5" }, "r1002": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1003": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1004": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1005": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1006": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(4)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1007": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(5)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1008": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(b)(6)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1009": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-6" }, "r1010": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1011": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1012": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1013": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(b)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1014": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1015": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7A", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7A" }, "r1016": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1017": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1018": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "40", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "7B", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480081/944-40-50-7B" }, "r1019": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1020": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "944", "SubTopic": "80", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147480109/944-80-50-2" }, "r1021": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "205", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478009/946-205-45-4" }, "r1022": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "6", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147478795/946-210-50-6" }, "r1023": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.6-04(18))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479170/946-210-S99-1" }, "r1024": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(4)(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" }, "r1025": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "3", "Subparagraph": "(SX 210.6-09(7))", "Publisher": "FASB", "URI": "https://asc.fasb.org/1943274/2147479134/946-220-S99-3" } } } ZIP 82 0000006845-24-000254-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000006845-24-000254-xbrl.zip M4$L#!!0 ( ER1%F"LI0W,!D! &"K$@ 1 87!O9RTR,#(T,#@S,2YH M=&WLO6MWXDBR-OI]_PH=9LZ>JK4$I3O@JN9=E,O5[7=7V1[CFMYSOLP24F(T M+21:$BY[?OV)2$EO_UZ?]I-O_W\_TWX8MOS2;$BX3+@)@1 ML86?3C06HC$1?O>#/YPG4[ASS6CD!Y-F,[[MTI^^!,[C.!(42='2R])O@PM5 M-BTBJ:.F:6A*4],DNSDTAF:3D+:F=2U#E8:2^'@AVY:BJ[+4-)2VW-3:BM8T MNSK<8 PU3=?5CFIU1?NB+<%ELJE;IF)H1I<,5=5J$XMTI0[\9]GTO>,(Y@SS M]L*+YV'@VLXOC7$432\^?, _6W[P^$&1).-#_&4CN=1YCN;7_?SYLS6_UO%< MQR.X/!^BP/1"G+T9P7K"4Q2I*2E-64D?\APZ*P_YJ::ODS_\[_=O VM,)F;3 M\<+(]"R2WA4&BU>/S'!([X$/\05:>A$,XH_L <+3U0_X]= ,R6(ZFRZ6U:4I M+E#I-54Z?0RQ[=;73A\ 7*],QI_[CRMOP@Y;E M3^A54F?QR.>UF2>K*G>[W0_TV\82N9TW%NGUPMO$R1XM?+$RVEG8?#3-Z3J5 MDB]6+G9"7U/D]EOCB*](;M@\-T0RO>C"-8%A&\1K_A@T>I_&Q+1[GR8D,@6\ MM4G^G#E/OS0N?2\"YFT^O$QABE;\UR^-B#Q''^BC/O3^Z[_^ZU/D1"[IX7HW MT[7^]"'^\-.'^-%#WW[I?;*=)R&,7ESR2\-VPJEKOEQXOD=@ ,[S!5Y(@OA7 MQ[:)1W^%[V] @@2.%;__.;HGHU\:5A/(Z9D3?!)Q+JX\>-W+)8PN,-UKSR;/ M_T->&H(#V!DU%;W1D^C_C(ZF?_JP\M0<+^F#(+-1F'UUS<>&$*/VEP8@_6+D M/!.[.3)=Y)?DK4:C1S_8_X6I\/SJA);I_I.8P5?X))R_H=WHP7H?,*/5%]S! MY;Z]^HI.H_=W9?\77,Z"8&4"5Y[]!?:!U=6SX9/F!)XRQCN;MOG2)-Y\"-U& M[[L96&-!SC<.54]'DO#4Q6!L!N0SR#3[TI],B1=2H=,/0 8]$ER'SR^+2^[, M%_RH_],,;/KC'R2,8)>+5TE.AV?(4J-WI_PSY]B,XXQ-AK&IZV/[L,IC 1D1 M()-%P@S1@.+P(J3[#(Q>H.+Q(@*!\$LC="93%V4?_6P M.200J PBF0KEY?7_K&[QKV^>CV#UZ5,J+]._0)4+(MR=<%?5FI(*_Z7W+;Z; M#]->NA0UUL4KXF_2O].7?%B9=_8R* PL0ZS31O',P("2YC-+O]EG9BIK,UNA MV2$STYB;&0!7*6)F.@,S>\V4QM+!95AB]W@1]"+8O 0[[D"]3%Z0=O/]^#/L/_L@ V47@:?@WT\B'SK MC_A9GSYDOF*^'/.15+9YR*6K="6O>=^VJ3IONG>F8U][E^;4B4RW-NM?NBY9 M\OK?D\@$&]"^,@//\1[#VBQ\Z:INV<"WK-EDYF*XYC8:DP"O"\@8G_9$KCW+ MGY#:T*)TY;SV3'" U6LLV8:'J%0RBX9&%>M0NJ5QBI*#!<*5;AO56;]D@4"E M6VVGHHRR0*S2#=$Z<].JHF04Y)Y5ZFXA5V2M%;;^=;>6CVVM%;;P=3>3&;#6 M"J,%>T&BPJ;&#=&\FD<%D1ZE=$/T%(4!"X2KN^5\5 .L"@+5W4*NS "K@EAU MMY:/:( 5E46BU-WHK<@ *VK]U;H;P,VV:%%W>WG([NG\J6>ZF#^%F&7J35/P2UL'>IN MGU;OIJN(<'4W!JW'05$:ONEO,1K;7E-3_HL%?=+>2*K+7" MUK_NUO*QK;7"%K[N9C(#UEIAM& A7[JDJ7%#-*_F4<%14*WVT5P6#+ J"%=W MR_FH!E@5!*J[A5R9 58!L?2Z6\M'-,"*.LJMU]WHK<@ *VS]ZVX ']L *VSA MZV[Y,F" %48+9HWA!V<"H+X=/="ZJB2X'?WJ^_9M,"#!DV.158JD%P7$[D=W MON-%UQX\X#13A'5FP\UUH%E%"A:SWH ZT*R:$G8ZL[Z!.M"LFII6.K-N@9UH M1DM/+A'L]HD$2*MK;SJ#9T=CWS[-+8U99T%-R%;-KF8PZS:H"=FJV=@,9CT/ M-2%;-7N;P:S#XB"RW3*'+OG\LO@=.PVM&>(V M21^UN+ N1^H,9MTAM29/405"#68]'X>1AXK#=;)<^K!6PS.A[LD3\6;DGDQ,QXL;9M%&9)Y%;H>N\TB; M;ET]3XD5$3O5.P;P:3@R*2$&Z:8>D^Y3.0]NV3X^)Z%)E]:@*O=-;! M[5/3-3W[T@^F?@#K_MGW[-JHA&UFG4VLKGQA"AZS[J(O,(LGD"B85)8N_;T3 M_K%JMU[#9 (21O>P\(.?YG3+NN_\]M^(_0A"[0L)G4[9AW+=3I!"G?1[:,^O0VHWV7_V !6NGJTQ]C^%/[&! M,H= '@@PZS3[:CK!/TQW1CZ_S'_]#9Z(_<-?OH%NZKX"0WH1C8*'] JY-F1@ MUA]6!!F4NI"APVPZSS&X@07IS X4F$T1.@9'F1I*X]J"@%E7T8FO^TF[9T[;15<8!IAUS]10 -<5 \SZ MBDYZV66)6>?0%S*,,O/6?WCP]EE [ 'Q'#^XA-^.OSD>N1W%;RZ;U.VFW"V&U,PZH*HE]>I37Q?J??+=)\=[Y"C;%67, M^K8XRBI V>NB,LLXVU)49OG20XJ3R!+#/C;6(!F7L &P8 6!4P)B6>*.60\B MH]C:(.LN^U\XRC:CC%D7):,H.T4)QL16RK";]%S-129PP:P;]TSU[G(RNF2) M65#1_VQZ?]RT^BWN-& 18#*SONXM $-8 MW8Z^8_T]LK5+&P=7->!BUKO.I5>5 "LL4B&X1.!O8*F2 +\HWY:NH.>$+#/G4GZ+&@]C)[#O M8&5>3I@BS+I?V1%&Q2E2S+H83T&?V9W7+_TGXIDKKI2^]>?,"6GGZ-]\U['- METO?BSM)UP=>S'HJCT?C])G_, ,'J[S?SZOUIM]\-D/ZZ:%O"H/HXAX/AL2/ MQS^_.YXSF4W*WRDJZ%\CR\SZ1\\%7>;S":.+70\I ^B:^]L'MU_O^YY]>7M_ MW^<"+!_$%'9]I.<$L5.68@J[GE)6(';M60'!P9ON:[3U[7_/P@B_XZ(M)^[8 M=:">/>Y.6MXQYUU]&W<)$FP@-X#$3;JIU*HEAZRPZ4-%IG+BDNQ?5CFO/WN$ M]<;F2"?*!,RY4"LD2%F@9\YSNF6-!V0:T7M.&/?,N1NKI4E9T"_=[Y87;PH, MBO9,W(XW>FE1>&/.183ZW6!L!N2>3&>!-39#:9(5-(^JS)KR_:Q[MRZ\^2>H!6+C3X' MD6_]<:(["G/6[A:J+'5DI0QQA+RA2NC"G-%;*+?L)!'/R<.L,F> 5T_O4_;L MJLP9]P7+7:8XO"R5AMF4G2J)6!;;ED5$)MT>E[X7TCQ)]+-=1V02KE+R%N8( MWWF/@_BQA9U1&$0@T_")GV>AXY$P3%^P[. &"\2)B!7- M/]"D;(8ASE2^LJ MLK@U)OTN'".;O IZ4^DGXX1AA2>O3F/0\<8RPY$#6F/.3U0LCO[IF M>**'R33FG'4<&JQH'\SY"SDT6%$ZF',MS6BI M1.M@SLO)0<*>_L&]J#4"246:B,[=J#4"244ZB<[]J'E!\LT,'LG ,EV"+82L MK96R:JJ(Z-Q[RCHR*M(^=.XS91T95:DLWJD:%2T+QG,^;'J M0:Z*]BB#.8]2/Y*MJ[#.9\+TQ'^JO:LICS@S!-I:IV*N9\ M$DQ3J:H-BCFW!--4JFI?8LXS49.X;U4[%'-NBIK0JZJ]ZG1\%F>1?-,^':?% M6>3!M&OMM3B3E)1VK7T59Y(=TJZUA^),$C7:M790G$G.1+NN_HEY'S8_F/H! M7-KW[-MH3((3W9;JZJ&HBDY5[4QU]5%4R$^5;$YU]4U4R$^5[$_,^B1HN;P9 MFJ^.]WCGFMZ2\G 7^/\&R_:K'\!;MO7]K.F.U&'6^W#M6?Z$S/GHFV_11*/7 M_!-&MZ,!Z'>%I>*>/2*8]6_LA(@!<5T@W*_$(X'I@ECMVQ/' MPF,Y6@I#"[..%I8H4X5NU&'6N\(E>T6(8-:5PR4[@VAAUJ?$#&7R]I$*H\S6-YY E>H.LTZF:LE8LSK5'69]4"MD1'T*]DSXC 1/K\J/7TVFKO]" MR( \P=;J682Y/?0LY$$]G&1G"*2:2:0NLSZ]G8%T"3,*3"M::FK)')08(CBS M+KN="4Z#'RM7,T?O<]B#NO5PYYTCDNJV"3'K?CP'@: NA0(.(R.S/L-SX,;B MR%@/9UXEM@7;IX[DP6$7-F6;#=\_.8UI52]7=) MENA)XHK#.F04B3L?N>J0%S/U]U]6AYGS4A[@:6>(E;K2JAX^P&J\R5Q[R$), M/=R--4',>2@/]7=M5@:9<],=ZN_4S V5NI**>Q/KJSE4D*ZN2.?G5#PAQ:$2 MQ-3?N7F& 8LJD"+7WZ=90<"B$DIQ3R)7'')"YAP=BEQU. PS]7=LGF7 HA*L MU-^E64G HA):<5\BUQ[R(>8,78I<>3@,,O5W;9YCP*(2J-3?J5E%P*(24C'K M361NWR[GC(NB,.NE8V\?+(L$S+K?V-E7REIZ9MU8C,N?HDZ\*@JS3B'6Y4]Q M)U\*J_"ENZ9EUG:0KWK?^G#FALR@L2''_XW?:T=SROWV[+,R(F0U#\N<, MAGGU!#\>7J:OE.)7%Y2O$7>;RJX:\?*ENVK$'YSGBX"$_BP H1'_.2:F30=O M.T^]3_"# L5I2Y:BRZ9NF8JA&5TR5%6K32S2E3KPGV7_"S6(Q3UA].("8& [ M:(Z)\SB.+C1]&GW\Z=C1^$*6I/^W0:_K?0JGIM?[- P^P-WQ[_%#UAZ% VZ: MKO/H75@$*0]/B,RA2](+AGX V]:ONN:TY!R(![322O(2^+_XZ&7:WV^KH*HX\@O6)[/3%R:1:,*D/ MZY]W.ZVNE/V5U)+IYQ_H\X+TRV3!U&G4H/? 1'!E?FFHC5=S348O3R,A]%W' M%OX2<^+'Y/O(GV9\.35M&[;I"TF [^;O_T#79<>%Q_&DW\/P_. B??@(H-4< M@1[@OES\[0%8+!1NR$_AWI^8WM_$T/3")AB;SBB^,'3^0RYD U:?_ODSGGD; MGD-)E:R$K"!>?MQKP2I8&!SMX.KRQ_WUP_750.C??!&N_O?R MM_[-KU?"Y>WW[]>#P?7M38534'::PN_]P6_7-[\^W-Z(PI?694M0)%WK;AQV MPE&(.0V>7_XLI%>ST#)G\:]M__OOO\B&]'&7::E'F=9N^/IZ>_]=^ 3RVO.] MF]D$'F()B5B_)R-Z"+0A>";NVC9Q+K[XUFR2;&D-*M%'<$%/EII_IU)_\92> M4"$P=R-I3+&MA-V%I'HL9(^]C[2E=MY]1&W)NO+F-K+SCJ2U#*VSRXZT:?M) M=Q!E^HQ[R#)3N&2TO@3^='>D] /'=(4?GF/Y-A&^#W:586M0B96,W!SR]QEH M621P7^X):/110QCYP<2,0 5ZCBY&SC.QFU$PFS.1@G#LMC7CXVL^FL,OLO=8 MQW_/0BR!<]!2[L9TW9:^3>+0I?S[C_[]P]7]MW\*]U=WM_)7[6D[+2D;C>_I)3: MA4G*ML(EY29=(H#74;-\LZ@5#_?]F\$UE8A5"4O&9&$T M!TLJ#$>!/Q%B5>[PGY%?V*-V$88&.YO-I3^9."'ZL82O#LAF8*DA"2YR[#)7 MU!^%-\?WINRJ-WI2TU -?:_]XCC&TM%M0/THT^KL1/J\)+XGC[3KBA?=P#7 U$X?KFLL60:?B:&;()_>[JV;0B.G'!'PG! M?,*"&0KAE%CHDK8%QQ.<*!2L,=7/WK,^JU5T,LE S&J0>_ELU6Y+-M1"5$A9 M;LG=MU7(G1\EM0PYWZ@V?ZZKQ:C(JMKJ=+625.28Z1C2Z_)*7.R/%0<&87^F MH<1+?^9%P23T(_, S7GN[S_F M9:=(U0?S^3J);\;]SE;UIDZCI\E-J2MW#7W-UE[7X ODC%CT%;V,KY61;/OQ M'84W&C0^QK^%?\\")[0=BZK\L!<[RZQ +PL>3<_Y#_W[_R^K!7F5)J;YM!Y@]$?_S#9XGIQ*J"Q(* M("3\3L)(:'>BL3"( D(B41C,'&!B79&*]="PJ^WP8/_<[X]XRESNC^; M4]]U0KYR&U:.;A"WP1WH-[ 9[*[^X-GP(^H_ITV$.Q]6V?W_G&FL@28KK#1Z MNJZI:YZ>4K65$C2^'??)9"U0+9D&@$5G:KH">2;6#!O2PL3VQU"(B$NF8]\C@D=U?A'U6G>&Y!#, M@)@"QF(NA'>[E'(R<$X@D8S 60C=!9Z3T26PAQ[Q1<$S2W@(;=*G1?;O<>2N6ZWY/( M7T5AA0%L&($3.?#$V--, B#0=!:$,W0Y1[X 5U#+2U;>#=_C=H.AL+X57>PR M5SJ*NJ:]JD:K:[0+OZ43VHY6BN:URS M(3;N1"Z-SA#3&@L62++PY)3X79;6^:HG\?-*EC,KAVR^F QJ M@OE!?I4(@SACX;7'"$7%*V=1&\0J*%DW9FB;?PH#9 3ANQG\0:*-%(H/'.4R M3*M5/*\]&WWZ1!B^@%U 8(:@U_T!PI+0T LJF4NI#^_DQ' 'BN.,;TXF M\EZDYM,[96FV0T &7#3$IJ)X$[T>[L2A) ^CASGI2.A(T:[J2H)MOH2M;1EB M.Y+^=W@;3CX\C.C/52: K$P_I^?Q< MK;7W65G[&W\/]TR=A!5R+3#LQ(DBX'/B N,&OH?;F_LB8 W<%X&>^S4MZJK] M8D9FG/?X2HPMGK%LC]_/X$I-TE%(W9/'F1L'1@?-A[+%53R>N0 BX?O6QHQ5 M+E]R)MG,\8!P2,3-7+YTN7SA\F7.ETXHF((+4R&":5D@7[!H@TU9,D %(O-3 M 8#3S/@BG(!8@G<$Z=8&8)W $KR@L@3/ N4"U^Q1> S\G]$X_;8%NA.A [/) MR/%H5CP-1F&808$Y;A@>_5K^F%ZV]8*-PTNO0WTIN7;#4-,K'2^6G6!S-I54 M UQ6^UH,9X#N<=I245NZ6DRNI=R2Y6XQGL)N2RG(?2G#HAC%^%197"FMU3:. M>6ZK)@Z,Q4F/X!+$QJ,?O&38U/0B*E"LY**%>8VUVKYEBR>F'2!K0NAH^[NT MHELM^1H8!MYNP?W,0U.,SVQ'>O77P5TUF'=ZV#O/CFN>3-,I*"BIS M/'&3I0-SOJB#U#M[>3Z(+:%X;G-S*/XSL73.%,EYE4>ZDFEEOJTG_K&N["Y' M_OF>KW3Q+N.UV\Z32A%E.!AD 5FO)0]C W M'SV'3TY(=3W/]"S$.FB >((5+\:BL[89V*& 9S8<>U/NH_K.?/^VR_#8;#YQ M;-LE+"F/;R<>+)=0G?HQ 2\"@M&K)[)65'7A6J5>4FEQBSD,?7<6K=^RK0YK M_',<+-;[D32' 3'_:)JCB 07IOO3? F10.54?]U<7+)VP8=P3%QW'BAX!UQ+ MHP!Q68JWG>SOBTI)* S0>]4A&> *[+Q=J5NWJZJ#9O\D(5OA1&9"N34,)_9I M).[6BGPL$IY4S!/3QJ MJBC)1LHEZ5![<;IGF J48/U4D[4M:S2FYCQU5!1^DH (_F+$NX;_:GN>H?9E MO!G1(78O*-]N%*%W**UV"87GCYPC'PNF#46Z:'WQP8_/@^LOU_W[ZXS:Z P4 MK6(P*V /(;!'!:9-CVKK+:U=4(DI'%59)9BV!5BKL9E+K(B6QU=^NE'=^A2M MV%HJ$685CPWTIZ3\T,7, _&"5S5Z=["E%'2JZ."*OH6>J;KKWS\(UR4&'IWWZ8&8=4LGG(V4G MIE(_QMK@L(W(1)#S>"\9Y*RLJ57%63G'DH.SU&7.FK=R"X5W/SQS9CL1L=]? MG">7E9=RQY%;!'(-/,OK48N?9MM\-ET3"W\,QH1$X5Z8+>;\:( 3W2QY.9'S M$5G;0$HN5[A<*0-RW5=RY9Z$,S>*?=Y3$C^9BY>3H;7.Q0L7+\>#'.86K8B7 M)9T;) S&? ,RQK:[3T2X,@,/8YUEC1F.A:^N_Y-+ MF),A=YM+&"YAC@BYSIL2AB;NC'T7'AS^3;CZ<^9$+US6G KA.US6<%ES/,BI M,BUE#6.*?&%%Z&2%,+B8.16:=T],S-0C?JOP^"W[[-%6&[WOIF<^4IDW3U?^ MXH36+&YYBQ6,^I[IOH0.U<@6HA(DJ!V?=,)KN)O[I$$BW_%4IA/19'\J$.$#-_T;Y:GKAS,\)-(?^K,H*9@LW#OA'UQ(G@P(E%.S M:.LA)34N)>O ("IU]44!T(9*R+O MXB-0I&+P).AL,(5Q=)$X%O'$/@YA#J< M0S :O5M:MX ?0F"'K?@AA+KO.]U&[QMY--U8I:"=!;A.<3JTY3I%%<(OZ4O4 MYR*P!FR"#<;1F21\-:W(#[CT.QVR<038QB-[H_?"6FD,/3#>NQ!0G MBRTWT4.?TX^0MD%-]$0N)D\'!5Q,5B(F=2XFZ\ @G:(<3USXL4A;5>+"KP+A M9W#A5P,&P1X)5\]C9^CPK-X3(NEYRSPN'8J"DM;H#6!=S6CO3(3RN^MQ,5(: M[57Y+3&RM=IO4OZVE(*_&=0_4H'<[(JS:A%5A[$87ZGM#HX(1(4AIGA[+#FR MO1N]!UHIF):3 +1EGX7:4&XX0;>15:ZTHK+.<7Y,2_AZ?=._N;SN?Q.N;[[> MWG_O/US?WJR73]X1Q6HC8Q$22=]$L1Y#E"Z" V3PHHNFEJLS:J&+\"J;X?A# M^+BR-K+>DA18K1<D#+YP(7F;MX.I9JF5:EFE0 MJ]:#G7W7\=H3HK$_@X?:H2B09XM@SPWLB2+89F2^S^%,VQ^.QRR=_KJ10W8" M;W_V. LC04U:X9SI*GPW VLL*!EKL(4GAJ;UQV/@@Z[;3(9J682 FKU3& M',T;T!&&9$DGV@R*C>NP(UH.6\=]'W[

6&THC^CT6T9,O8RUD0 &L+YOZH M>37EW(1A]?Y]Q<@KV@OTWR[3(,"Z;)CM8N$OY,^9\V2Z*Y9505(DS]))0AUZ MQ?[U]1+EFN+'UWY:IN:VL++1?M]=3E]OKX5]Q=[U9V'PTS>D%(JSOV?C/ MU0)>_>C2# +L<_L/[&ZW6Y,]-6VRITJ-GBZ+=/=_U6 ONV7./HR[,XF*VV(10.C0)6"5>R3:VU@89&-]M)V4PZA K:?0B"$99_:JJCK;48@=#X6W+7W! 3S ^>U2"[:_?,6 M)^VJH]:;D[8(XY02+\!'>1E(:_3:75'ORHSH:QPX1Q3!AP!';_2,KJAH$B/ M*4A#KH'@I06*8*W+=J!R#6:;ARDAQ.].-+Z*R+:SH%B&I*C3A,O2!#L.=>D0]GWX MZ<]2L7$7^%,8T(LH3%T31;YGTP2C*9[*4 GE9I=/HR>C,E@]V M>O!8"(.HV2)U]T5--T%-AY4(VLFKP==>9'J/#A;5B)7>_?,TN;Y22)YF2H_8 MYPR&YM6SY]9>T4&=8R_M$59.3B3D^O(#")H]WRA_1&$T2U=-+HG MIB_7)F6H'$=QN9D:-3Z+GWO^IR--=DJ+RBL^M$:O*[=%Z7#Y49-\*,Y9G+/V MROW*RUEZH]?I:*)D%&4CL17M9=> RJX^]\TQAXZ[Z)\V&)L!&?LN+&GXWW_I M*'+[8])IC9$*=2I0T?9GZ)=CL$3=+J,[>==I6J/.76"+%ZH[RT)U?42A M,#5?L%@%KT_'RV\5E1A,@747XVJ_!'3= %W$$"7UA-Q,G"-.E2.VIY$7P!%M MX A-;.NL<,3Y%*8 ^@4S@K.<3(D7QL$ MGM)8,IGVY+(.39?K2JRDRW$T'5%0%XZF;J.GJV*'&32=:]70VEII\YI(AQKL M//Q94F&D5$B\["MTN8YE M'+';8.Z;3HK:$3M:+:JE<>2Q(NH/1UX[+M#3EHHJK,Y3-@_!QC??>VQ& M))@ V8>5=HXY9Z[;)N^!2 ] HR] HKU/,1F=1L]01)AT'2ICA81 @+/?.(^].J$]0 (08AKTPP(Z-?WYTI],G A["L25"9#N,/!7$EIX=^-' M1##>5UF>8/7^O&+P.70N/,?]I1$%,[*>O#M?A;YG7Z9K8,'4Y] T8CS4:MY: M ?-NS^=]\EI*5ED.LG]9CEWVECK>?^P>7>F#D_N;>/&%W*',4 5,_B^PG!\( MTX",".QRN OYUA];NW+=D8 "[$T=[?KFZWH7F.0] WS-G1G5M8;!J/5M9XL+QV*R/0L=X9:VH&PA,^[:-@SJ*Q'P!U;&'C M9$)\87C8/.B@P_[\;;MI+O/)=:0W%CM[?/GH?NCXY$9/D:3,0-/Z^L<#_IAW MQ?>9T748SE[/9N0\$[OY'Q+X&1-1CK+0M[,HC$ A GF38VQJ[K'M ]+]QJ8= M96RYR0D:/WZS'90[P-:A+Z=ZK+]8H^K;[)VX=;C%R; *$[I);,7'W"+L&(T> M5<64CXSXZCAVCNA9. P[;=:PU-WRM27U:R3%K?RZF:=HI0E0L: M"FC)4DM=]Z.N?="4/ZC%:,K;%*2EB1RHAG;SJ\G;M) "!P M43H5LG2M[9,L7G]>&]A&!77[Z$"#5F2QJ^EB-^,X97:?Z+(!=Z"T(! MMH-51*G3%15CW=F^]H&(V113 G\\$??E (V:QUL**5XRQT"&2K0URM(%G;HM MJC(K01:.G:/6*3D,.VV*'8.5.._YG!'OPX!QH4T7E#[';CJ>8)E3)S)Y>]+J M"N3.:7(')+GV+F."Y.4I[%:JZV*G[56C3WE)<&/ M2V#YDVE QL0+G2I#2B:;Z7BY3Z=H#HI%O M0*H;$MV.'LSGW )1H<K'/HR/L MW*IGA<=/JN6EC XZM8F^X81@<5/"W.R&50\E0]24OPV;@OFJ$6O#F<$#+MH3,,6FR.HR>;6_FXA?H=.39MOID M"[CW/;L Z684UC&]<*I69&UQON9\766USV+XNEU8OW8F^)JJ-1\B;)&99HDM M92,G5-$U(-O4#VGP\R+ 1FU@['_\Z=C1."79TEW)5*3%+>801CV+UF\I#5_T MB1<8G76LMQ>/.DA BFA3Y-TWO!C%#/C^!]D8]HHRM.79\CQS,]RT%;&3.$ MZ7'F.Y/ M\R5$U"VMP\3QT@%I.HQX9X2,1J6M2LP_( 3\@/8=O0"N)0%>!6,RF1F+, Y0 M!OYE.WU :#T@BV,F/YX=1]Q^^F#VLFA?)EUA(-Q^%6[OKN[[#]?P[09..S;+O/OAF3/; 8'P?B-[3\S@$9"-0ENG MASBHB%U(2"K28<"N.0W)1?K+QS3"Y'CTM?2FC\FS$K&*3/+:5D2(Q%\O^*YNDXFQ+P9$/!&^PW7C4+@"R6_OX&TY MQ848.,^;EV%'_%1J%';R:Z9Q$._:$Z*Q/X.'VJ$HD&>+@)H_)4'LD1- ,35W M*?:S:VV1',8&VXCISQYG822HLB@HDJ+MXJ7<9>[GMGZ*0==/Y1#C$#LFQ/:- MM^R[.FS%8&X(#-UTBR^)7-CRG;:/]:QSJ!S?APW;U?"@W>FU9%]5.44=UV"\+ XD!H&T12D M)+JC%,K-67BVHBVJRL&,51/G"(=<(=KF(9!K ^1T46USR''(Y=!+#X$"%WAU:GRB94^C6F$9B-_14*7<4$RLN+B@3V(Z@";*AQ\GY"X)!G&T13TM$D?=1D\1%>[:.DD<;=$U"\21*J$\TKL<1Z>( MHRV*8Y$XDL%L%A6#E9C@B31R8O6J@IS.[&K@M(5,XF?>7_L^WQ8_!6K?RV(I MMG#GL9MU,83'M@[?S'@G* 9ALD6Y?@,F.;RKL11=(HHVJ):YQ(V&*52 M>ZGUF!\*= M1J^CB'*GJ"(M',*G >&MCF]V(-REF1=&89YSMC(OZN;WO9Y; 6GN!7?\5JON M _)/@GAH&0;23PGTXB.1&KRMVND6E9G(,L82A MG33>PS&$P2F)(6BHHQ?4P.SF#<0:K(*/D( ;3@<%4456*.B?. M&8PIG'$&*R#9YB &,QH]0Q;U-FJ17SXY",3 MG\W0L>;VYZ+1 M33$[%RW20K3@*=A6&3TUMU"D(B\IYRG.4YMYRBB&I[!$;DL_N,L,YRG.4VS- M?!^>D@OA*5UJ])16IX124)RG6$ 6YZD\/-4NAJ=DY"FCA'X5)?#4R5<:^N*X MLXC81=F5![BO3EEZ9$WQ].1#/MLP05Z6A%"*L0[?2#1@S'7+L<_2W,JWX=[ MODJMN(,SQ#CV.?;9M+7>P+Y&K2TN]SGV:X/]?#;1&]C7$?N'=[[_132Q*Y;X[Z\C&=(,>.UBZHJQ8 /A./K<)6T,'S)%%_=PTT> MCB\V\;6?4EH8OI087QTNOTX47_NII87A2P5\*:(LL8(OJIA^B,RA2^!?VWGJ M?8(?Z6N3A=8UH,34#QT>\S!1F1TYGNE9 MCNG"B.&#"?&BL#4G6;IZ\:1ZGX8!+O"K+].Y+I'((EAZZ_CL0V>NKXYP^2>. M%G'KM"5+T653MTS%T(PN&:JJU286Z4H=^,^R_X6=JI.;QD$Z@RGP3W,8$/./ MICF""5Z8[D_S)434+:W#Q/'2 6DZC'AGA(Q&I:U*S#_ Q7Y<3.T"^(X$>!6, MR61F+,(X0)GVE^WT:3=Z#\CB@C\2L%@W-X/; M;]=?^@]77X3! _SS_>KF82#Y"8-(40!BP:TY#/ MH^QVMXE(RKT/(/&)\!VN&X?"%6P$]@[.M%-V?HI! MUT_E$.,0.R;$]DWRJ*[PS@4:O[\H+8>3WU^_^X]TUF[.%$MQ MU>013;S^0FFG#W$\FWC11;-+8ZU5,-$/+R P[/\06W@T'2_A&P$$[<0,_B!) M^)=8L\")'!**@D7[U<8(P2+X]H/YG"7 .VCCKPEO4?CKNX.LI!!H#K]5-*ENH[=^[NF] MF(\^6Q33XTREC2G9ZYW#!-.S\\UFBQ9PI-E@ O!Z\ARRSE++.T%X-XR[TP#) M A).B849:^[+JX07?B3VR-[$32!!//2?3,=%N?C5#P9 ]B5TV/^>A1%FVX&J M>3O:@ PLNB,753V2 4OLQ%%UU-VA"'QAZF[&GL"1Q1JRCK!%%X$G#;MZ\L/5 MIXBJ/56E(E"E-WK,G*D^MK>D9H9A8A-2^Q 9<,#G^C)"L'QPBB8T>,%"\LP MUX:YIH?ML6%>FN'XJ^O__(W8CR35VON8RG]/+-<,0V<$5,"A;, BUB?)J B4 MUXS:$D K=0KM1B\C>'T<.["0"6"C FF=!K'YEPM2:T*M"DB!7:ZOFW_O4_MO M;O:EEF!AYM_Y'K!C6.[TO0UN@H[4Z'6T=<;=75OGYS<9U*N.LA-L!A4]?,Y* MA;MRD'7B #K*3KP90$JCI^HYRX.6@Y/3A0/#.LUF8Y(RZL9NV*T:J8^[< M\KQ20( A#7]Z MC1 ?&L%R$*X&DNI8A@SHWJPI.M3]P?EWM7.,.K&1I)@&%>;)F ME94V#\L39X\MCZ[NID&^.S^@?!A%@3.&1]>H]P-D5VKTVAFG3[A(/"$L M'DFIWA.!G.4=SCB[.3"N2H]5&3]5$ M*<-)P#F:SI=T&[V1R\IU,C$(ZF>B\D\GQQW)&G4SZ@]^$ MK]]N?^?=2\KN7M*66HJFL]?^@LF>'%JWRWMR\%84O!4%[Q/ W/HQVR?@&.VV MLU?F=DI0B0+UOH]'FVE]B-+.KQ2UJOL^_+B#._E6[0+9K),%OC=)'F*D\A2G1,CMBS\6 ^7\7E M53_'Y59S\Q4>&Q$EN:@S;UQ]+AM+I535*QI5*DIKI7-(F9OC:,]I9@R,D6S& M7_57G8\1@,Y:X1V68J=-NG A_-!T,5"+/:@HT.B-GL% MV)SDV2&@U.MHCD"O:E7NB*#%@8\5]-?9I[\E/LH2%>B7IX- U5[-KI&87 M#R.9UOU7V ^(U#^/^')L>H_P..SEND@*QOTUI!$#US&'CLL3A,\X0?B>6,1Y MPE/P/)/AF*6D5Z4K2-0 M> O)/[WVENB2VX)BQW]1*.[WN>'=QJM-XJV[-'% MHDAM]#JBHC* HO-Q@%U[3\2+_*#,D].GZ9@H5QHOT24W'VG8[%S4I?6Z:+S1 M%7,P*B.CK%@XZ;'+E)4,D?/1E+&R%ZYU8D!Q;;ERU]8Z8Z4T^MV)QI>S$*9+ M NI/SN(DH]'+4F^X-ZO^"-I?-+^!H)R"NHWZCFR\_.U?RZ7G+@GE$H3 U M7]#TX9IT5?'C=?9*:7,7DR8W4]%F@:JJ,Z+]<#15%QUT66F*PS8:#SY MM'[;33![=4R;1E>&\8DA;BDPT*)Q76)<3::N_T+(/=9;)_:W12@LK_!0,#"N MB!VE@'Z-W(Q@"E[[;T@%P@L#YFU1-W@J:A7>GJ48.3,Q:-"0&H'4^BGCJ7CFXYM+Y*DM'$N )I>:% M<\C"&[O.2AA\S6CGRU-BF$-/J:KV&YC)*9OI>5WE\' K5[/W.>TE6+,@P/H+ MV:<+N,;-4#(C)=A<);HTI]A=ZR9_AH/2:?3:HG90X1FN:;,(J=QBO#!(8<5I ML2LS *DB-6RUS;( O]FUB425:O=AW,NBMD.]Y?3\K&2P9W^X?182XRK/-E.- NX8Z]"._'.?*$-QQ[\OO7G MS G(2O71OF'DI^+J M#YQMTOHPX.@@D37>(O98,GD66&,SC"7QA-:]Q;"9$!)K%E3NK:LA(Y6J2W^? M$V@PIT]NE0=#YJ*BK?/1_#I*D%+2:S>$ M4. M>O8(4/CB8)C0L[$+AV-S7;]RF0R*6DJ2 WA(EV@WN\-XB.O[+.)H=X6_"!S) M%$?:047-NSR+ =DTX*QM@*CHNV](ACDNVC($Z)B:/YDEGC"D@K)5YK[+1@>6"&LBT^'^L+O$$G =ZWCT) MH\"Q(F+C%WW/7OU@ZX MI,L2()8*N;5%C%FK8N?P*EK\E"7#>"YE'V(&3MX$N-VU5@AD) M0_+H>!XZU+!"(P4$CY:4MD]I)>Y3>9G3D( YVZ(BKX=,>.V9^D.MPQ+49+"P M95%K\W*/+,A\ I\?)NW?T._*=4UGK7*E+/G7TORY.^.9?5FDLB2+,%% %J6, M9I(,=@3A#,D9L@2&[++$D'B\OR-J2E&G^WG$[)"R/C>^UZ1*0Q+^?&&DIH\* MQ++]&=9'9;!!SRZC.P.E<[U##_K*3Q$]ZFM?GT* MN*LEO%U[M+.P_7D6W?C1/TET9SIV[BU)PZJ\FG*P9X2=DPN<1TZ51[:4VFXD]E?*!UX.%?VWGJ?8(?Z=4)2'0-4#3U0P?7^R(@K@FJ&OGX MT[&C<8J@I;OB1;J0%K>80]"*9]'Z+:7!G3[Q I'H6&\S@$(KY!-"U88)C.8% MHQ.>CUE;D8_@IQJ]"99'F@X,.D<8P0O&D>I^& 2[PJR_3N2XA MS8+'D.#XK$]GWEX=X?)/'"URG].6+$673=TR8:LRNF2HJE:;6*0K=> _R_X7 MMEI/;AH'Z0RFYB-I#@-B_M$T1S#!"]/]:;Z$B+JE=9@X7CH@36FU=1CTSB 9 MC4I;F%@2@#CRL24L0!@D" GP*AB3R:+<'?R1K+\+@ ?[Y?G7S,!!N MOPJ#W_KW5[_=?OMR=3_XFW#U]Q_7#_]\F^F..)MLEGOWPS-GL#<2^_W&D4[, MX!$X VT]?54QFDN+I'E'*G.I;0A3<,UI2"[27SZF M_QZ$#H31^3IR>"&E_P MVJC#]\5?)^S8[;8Z71DY,MGTDAU?'=L M&E2GU6WK?$Q\3*<]IL[;8]JBP.;T I5COK1;>GZ%+LY^NO:$:.S/X+%VN);] M\\9\MSCGWEB66# ??6'>]*[&1^"%P=A$W]CM+ *]U<,)'&5%W@3*,77AO,N% M)0,PQWPVC=HDR<(6=5>;NRT4)]-EQ9A!?'[W0RL ML:"(@D+3)Q@\Z+!3SL(1_;V[+O)&AV](-86UN(CTMM,WUB^6U(O( M4F>]QTY*]Y+7*5N-9# C@*?HY$;[Z>7H',SG6<'/;4R.6G&R=\4[5VXN;S=Z M;5$UUF,XG,DYDW,F/P:3;TEQ*(#):4E<1>S(Z^<+.9MS-N=L?@PV5TIGG3V[FULMD;I4Q MYC[2J>9JR1^G45DK:50.I2'M+X-G."+SF75NJHAK"29[W0\4#ANQT]F,]9ZIS6Z.D9S3$Y9DX!,UL,@7TQH[.$ MF;/P^U^'X8PFP8.B3YO&S]5^"S]V77H.G(<$BF*F#5GO6TJ=T( ?DHK87V8! M+$9J-B#B!& 90OPV>ML/9;&3X'0ZF3"27>TY8]%'$7/J'K_>H>>[J$3D0&)'AR+!)OF M<-=[K:&S;PAP*VZ2_7@=-FJCUSGD1#9'#9NHV6+)YT)-3BV.=B/J&(=T4>>H M8A-5NQQA+PE5.J!*%66%PZH.L.+12[;IDX_M=PE?EL3VF-VFBY+!@(YR%F'+ M^.A8F%B'2,1)W.J'1RT9L YM N2P;X-+TW5W-0S;H.$?LFERWV[UH-G?+MR, MF(TF8:?14P[)X>. 81,PNYF$>P"FV^@9TGI19HZ8NB-F-W-O*V+RJ7Q=J='3 M1$5:[V;, <4>H'B\F&WZE&'H%S6W*?S*[6Z"FR MV%77_?NGU"" !<=2B4!G3Y 4UP!D=?9U9>^L/70;;Q_<_J.KT_:8\GH2,.=M MSMNEBI+$N9MS-^?NHW)WZ3UONVULAMD1#7T]S9%S-^=N MSMTE]L!4UGK=EM8#L]NA/3 EN8!\3,YDK*#M3)DL%X^II6^A7>Q]V16[^FGW MON0I+KSQ9;E\/:\56!^FX6%##@X.#@X.#@X6P'%XX2JEQ'ZCJB0U>JHDZL9Z MOC$'3^7@X9*%@Z-$R5)BKU-5DAD3+">6P[1[KU,7J,<[G?)#79P^G#ZX49;UD,3^L7G-<50HKE1E8G46\B#=, M9:%AJK*E:74A#5-5">N3LF*B#T&YFERJ$C:TYOBI"W[R*9-K5=5* M;)>J2D86DOAQ9O9 Q(\S<_IP^C 1HRFS6:HJM7FS5-XLM;8.#N[8Y/3A]#F2 MK;FE #-CW?54"0^?B%VUPTAW/0Y'+BXX?3A]&!'G]>J5JDI=MJ0Y[Y5ZEE=Q MLI_E56<1%"ZR%=(9N_[RMD+:*8:W3RLD598:O4,:VW!W'EY(Z9ZDR5JCF@#D]P!34!VD=,"K6?>);4AT0PR/,;-/GL-S>HAA: M:_0TB?>J/0[)L<3\@4V,SM@YRIW7G#Z)JPXIZ2(TPSKZ5/EWS,-&AQ%]__.G8T1B]8RTI]B,FN$W> MG'S=@J\^K'^NZBW%4#._DEIRSL]5+=\=FP;5:74-C8^)C^FTQ]1^^TE;]B!& M4M_UU&M/'WF!Q>4<:Y<#$=>>$(W]&3S6#M?"@&_,-S//?:=EL4!PD^#H"_-F MT"<^PB'$J>3"4B[Y45;D3:"\WOF6%['JY<+X%IZCN#,#@9YP7]U_SPY&BS*/ M M9Y; )S)94>SY:S[DEDPH>V<&4&'HQ[EU/WI[D2?^P_]M[(>X%=[:K]. #M\2".(F<_TV(8^!$6GI]C4*LM:;%S>G3)DZI0-LN&HFE+R635%;?04);/18YWR0?+"I:+C MT.7"G3VQLGM"6.X%J"N?9V5];6/RP].^-#Q:IDGU3O7F3,Z9G*F9YV)RM70F MUQL]63/$3D9O6<[FG,TYFQ^#S7>IU'H8FQN@L;=5L:U)G,TYFW,VK^:43K 8EV#6\CG5],M>]UO M2"20W0-,O [ZP34K>9UZ3A].'TX?]NF3RTS8TAD*]IDX/H^Q^MQ:"W;@5$6] MO6X8C!_,Y2YV3 ML4QO]U!=CF.&2 8A1 ^5+$UF(_;Z6('0PE MH]%;5Q6/WO:;@XB'@&I.GR(MOV)8NPUJ!@\#'1$"E#3-(=*&!H-2XO# #W>, M%#[XB\(R6%?FVDNJRE"Y-WR])=V3/V=.Z$1D M0((GQR+Q'G9/+/_1HT^AVUGN!(=.HZ>(>K*P?Y^?>VSI!9]\HY%;<)/OQ.FSD1B^C" 1'3 M1^&AHI.#S;:S9KE@DT_YUU201**:4422HXH]5/$ )-OTRYZ LO1N?XLHI+QX;0P,?Z0AM3]PX.23!A_-@%RV+?!I>FZN]I]^H$*/'?= M5@^:_5B/.[8X?3A].'TX?8JW$+ZDNTSK9VX_QNO@A*F^%&G(QS62%=.#6YY"Z9 MX^W2&^OJ&@;DVV*GV^;%KG6Q+9RUVHV>)DNBPLU?GM["VVKR MR!VG#ZSMQLTR/O$ M\EEX5TW691X_WL/IP^G#Z1&.HV*/'&EK[;'+;&IG8(M6#J(: M@"@7AH[1F]70&CU6G'PA[73;U]7(_90,JW[;=E M+, N=Y7J'9,<9#S\P.G#Z<.*D"XD/%2(C%:HC.XPT/WT?()'0C#O:!_$>D-G7S-L[T;F;6P_RT!C(HZ:LHVOHW4T;NMT M)^>RZ 11M5O#Q%)096#[!$T^)(60HXIM&Y'3ATFNKY#IVXV>(1H* ZU2SR)4 M%]>8"!/3$&E(8[<\4'?D0V4YNY)N-@H[C1X#V;@<,I68A/D[G;>[_+SA*>)E M-V,P/UXZ4J.G:0RX;#EB*C'T]D ,=L'3#BD1SA'#MA''Z<,D1Y?&T JHF%T& MMH"SB-H5T-K^C+T>W"O%ZG M YJBU:D]6'9\9YO[E=YT0.?[#K;85$2IO/45?SG" ^ M3()@=J(DPJ /SS;@[,O9]T39-P_W[I(8>A#/=C%#5%5$5>:[?GEQ#=L)IZ[Y M@JM+-DL9?E7=KN)D/\NK.-G/\BI.]K.\BI/]+*_B9#_+JSC9S_(J3O:SO(J3 M_2ROHF3_$)E#E\"_MO/4^P0_TJN7W#X6\2(2))["WJ=A\&'N%5N[+7%?:4JK MK4^CCU,_I(T0+@*"O9^?R,>?CAV-4R?@THV)MTI:W&(.0]^=1>NW%.R,DZ74 M%T>?>(']'ASK;>^<0JM3$B*8%C8U,[T7QWL4/#^"]T4^^B^I7\V,B"V,',_T M+,=T8<3P 2U6TEI;P)U6=Q-12EB+-V?>61WA\D\<+;I5G;9D*;ILZI:I&)K1 M)4-5M=K$(EVI _]9]K]4N9'>- [2&4S-1](38)\"H8D\G,6(1Q@([UOVPG4;O1 M>T#Y@%TQ+M$G3^OLF+TL\I?)F)M""12,-[_"8,'^.#[U[^)$;(+N9.&S1S A1==-/&3TL5)-@7E5BE1EIW>_G%U6:26CLL@)/&IF]D$ M'FJ]"DC)KT-0M\&CZ3G_H8QV.9?]\$??L^\"$L("TS]O1U_3S6 PWPN^.*'E M^N$L( _PBL^N;_VQB$S)<3#,\6;$[D?)9S@ $EKF%+>$8 ;293";3,S@!?ET M +N#,W(LTXN$/NQ.,[S[4;B#,5D.5E!>F=DZQC8#$&Y,QD(GLQAC4YX']'9< ML,]FZ(2WH\7XZ/!>XI\9RZ"\GO"&71$[.3FCEXIP3&>%-)@NT7R7S?Q8P\Z6 M1P]CLEUCP6GUI_XCZ#Q7J'E, RU9+>/>3B,(,_O)G@> '0@1/O(SU MHO?"V'PBPI 0#Y=E:@;P L>CBE-@TR-"/YUH3/].H J/AK=/79CA(_%(8+KN M"WY/IE%\+S[^AX<"5*!L% KO?K0&+>'7?O_N?4O ^3A>' *F./4L=V:GMP*% MOL)7@BPU_RZ$8W_FVC Z 50.>@$LQ+]G7AR4I@-;F@L]=]C^N'C _V"@F5[Q M0LQ (!Z^Y;L96&-!H8>=M);P.X&5(?2B$'A@9:()3^)[X[7!3_^D$*V!$*JX^GPX<5%:DO.!/ M"6H+, BX9^;"$^,B>R.76+C:8Q(0I!V.*Z!:@0E*+ZRS*\)5UBR@$_#,"(19 M3(?T.7!I\G VGS5(M!$2),^+W2>FQ. ZEB8TE(>8;*:R>$Q58[7D[X7].SY M5($=8/ELD'=H7N![HJ77PL2 MN1Y&H\_?>]H!@N',W^EA[^6C;MPZP9)N;LL M!"Y>DH.![\&O5DSA+5)1K854Q,'S.#I<(@S K&:T^X\9_(9$@">G)1 MI."9;^'+V^L@G97PV8=_A'=?^X//[P6'-J,0^H,?] %-J0T23P0]91+_;CV9O(52. ) ML#8*A%1.X44.[@_.1!C2[1 _@7?@G!T;!?/\^Y310;[/'[F849A,'!D>)0M\ M"ZP^GWK\/O4 :<.C@ND.9 5VOLD-&2/,7DHQ!>T9R8?Y"@)0QF M,+64*BF-81[S^<62RYQ.77QJ0*+ #U&*@9!S7T2\E(Q&\=^4]B,'TYJH4 OA MSD?'\_"]U(@6OH"PI"B6=3%!\C*A4D+@?@?TR?4H#1[E1K"-/@)&3;JKV''K M1!PC/)DND0W[X-AQXX6?7T 7-"'>3P=0@(*=J@L * >V7"M"=*%2L=C_YL2" M&7R@H,_886!%R2ODD"?3G<7$H#2.'P_+C(_/@M_&K3W>BG2ZA*,9[G6O5W+= MO;/7-L*H3)Q#8$DF@K1;%W;==6$'ZJ(/K/1@/J\*.5Q NL1P#?'&5%91)@U@ MK*@T>E:LK\P9"90JV,8]4 *0]$[\W B>NT3#5WR6+112R;00'RO:8\(4,!C0 MI99>$Z#"!$J/#[!T'7JMF*B:B+'1+*"RWG2Y@3WP_CS6"J],5_ZB(7XWBX$IT6*P#?D M%@YR1>#&([#,VDBUY/'93+%,,+P'EA55Z01TJ*P&/J*,II;2*T"VH &P/+DE M#MFB0W]XY38X3!SNZ !KU\L!ILS7,)?E<$^>B#2MNY.8L8/E\Q0!"79(LX3JK8Q3-/Y"GU ;A1_]LTQAR )(V>I M3]AK,.[OY:++E+%X"J-F5[)T!QBFL$&;CX\!>4Q\E\D3:40@ ULZ8];H9F?7 M".29_Y/*/VHLV8N)4I4@ H$7P28L4WO,KAIR^,OUX$TEI2'$Q+,@.2-R=?M^"K#^N?J]U6 M1]4SOY):HS^]0?NL4%V+@/&]>AAWQ4^UQP_Q9*O%! MV6LT7OU9B.[#M2.H^W/+QG-D&4?)V(;&JQ##+O7I=IG[N:U?COI^ARY1+=>G M"'P=#*Y:KEPFLO8MI;\OWQU/TF^W9*38P*/&R'\PZ #S&#M3M#**+K=?V')6 M?%I_QT7=_;!^[OE7=")_QXGG*J>AO7TB?XM?ZNHY<3^B[P;^LQ_,Y]Q']@TL M\"6)>L:1_?WJ0N>1"U44C>:,R!EQC1'UZAD1*^WIBJAH,F=$SHCGRHA;JM@? M@Q$[C9[2;@,CKE>>XHS(&?%,&+%=/2/2"G":V.GJ=6#$6G>CR&\J^S NC.@1 MX9WC36<1)L2,?7L7Q^A9]'4L@R>W=((NGR=A#J"ERAW1Z*S7@^:M0T\ 8EMJ M!!X#8G(,,:5]L/[%(<8@Q(PMK2Z. 3$%5'Q5%U5CO94MA]@)0&Q+7X1C0$P% MB&FR:.@'NW,*@EBM6R8?I)_ZL^A0!?4$FQ"6P7=;^@H<@^^T1J^CBHK:+D]4DC,D:LJCJZRT>.<1. &*51QLU M":.-1D?L:*Q [!S][L8B"]UQ>O5^<5EJ M](RV*G9U@[,Z9W7.ZF6Q>N7Y6YHL-WIM61?5SL%'"YA@]8PZ[T75.62S[L6\ M4@A+@\VN1K% MEMCS?])B3UBIP@J([42"Z].J/UA'*41X..$8;A^:(88AO<4#X^M:PM7J![02 M$=P);(0?#K%VU)-#:%V-I0IZ2>G'4*0U9AW .2W*] @_Q:4IPI?V2A$^FPPC M/Z!U17&V4_.%5F@;.\#IP8N8UD":EY2RS!"'@?6P_$ED(?XZ))SCTVZ28F/D8$'P6OCN=6$2"2?CZ:3\#K#.%:S):?HQ-\&I M$]9G,F,HF%@(![_T?""0]TB"^2AA%AE%FC8693I&#X<,3JRTHT%WUR(]K5:29K\9CWS MDZD&9'1;JM%FL)P,DS5NU$X1-6YXC9+=%H798@9MOB^BR*V30\IZ2+DE&+@@WGD%^%+'[09B=6 MVW(BM2A6TQN]MB0:[8.3%?EQ+191M.70:5$H,AH]0Q8[[8.5(WXB*U_*ZW(4 MH,KC5[M5ZGJ$!3H=\93;NKDA M46YIA%6IVFU1U@[.6R^4@/P&]A_V9T/-46M;>?#<#:9F $\)&XLCUAZ>CI<_ M*;$4()U^;_RH>FBR.7Y?3SEJ&JEM1P'F5:0@ZRZ7+\CR;@:1E!B93D4 MK#'H8?%A1,L/DP;M>*+0XU&4O&OZ[J!2"2&,'WY[S=MW@?_DA/"T#-[.S=$Z M1E$T>;VRY)K:5$T Y;@Z29WX]0NQX[Q#,.@"?[*P^*@?/>UY#R-VJDV!J2'; M%E#@Q)SZCSM[)WX/G(CXHU$?CZ;>QU1[R>)6+--9U.9;:WZMX?YZ2X^QFS;Z M2B9DWV- ?"\M9"_-Q9Z4>7;U=CL/5_%P%>O9 M5DJGH&PK)J)7A8O)\ZG1E);NBHO6Q,X!US&'CNM$3AWJ-KV> *WZ$R;V4F0Z MGOE(Q&7/AQF@;S?$P!IYMD@8XJ5)V:'E D4S#S\D=E+5*12BERFBSWT1'HE' M EIJB58""N)*:-0^2WK'X).)G83RXJI0R=,BGWYH)6726H)PGPY3B,^<91Q M6]2:"N?#P0)&8^+2&[DX_@H:8U MQNI1@@LS<'$=+'\R=0E].4PM(/.W884I+-E$2U+!'&:)E;HZESDQEB"T3)'Y M,J\L?@9Q%F2PR8@$6,,I7>7E=8'5RX]0]EAS4")MD"0BI!X#O'1.X3B^#4-(2FPU:8FM,"G9 M@Z]X,MT9"5NG34!K;'J/A +>RA"U5A;#_$3&FP Y0-0@S5!D.).D'%K*O/,$ M@:20V3+!2$(R?TK%E$!K.BW)A"7^.2!7(ZOJ(Q9[C/J>_2V9SLNF1(WN691= M4KNM#IL5COB@ZCPH[>U'U2$79+M^NN1E2P56DQ8^!&4 ^-IR_7 6[.0+?].[ MUJUG.LC#&'95X3NF>X7"%29ZG>E"#)SGS]J"1/V5JI[F? MV_HI!ET_E4.,0^R8$#O[3,3[=<=2J@#1;)X,VY$Z9::!XP?""S&#)O%VT0MX M^B)/7RRSV5N6JV#N(DA0ONB\G3>8H=)SOMKA?=)YR4+.@ Q-O, 6;"4SH-SH M*:+":X9R!CQ;!MS2&*UD!E1@!Y1$M1Z%1#D'<@X\?K^RDCE0A2U0*Z(I(2_E M>PSC.3:10S-RPE&"+0RN9D?5>68O2X;CW8)(MW,:#2@E'6)?>W?8_,R?A7.H%59@/,7D[NP$Q %0.$WF7.02C\TG3 U= M=)6U9W'O1[PTZ5<:C3%QDX:01)IAN#'A%.9*XE,W<3HH;8**6:NC ,#7$GZE MN=*N^R)BKG!(E@:"N:HCI+*P(7]QD7&=9C+2H60D,L(@QXXU?BM)M27D2V^< MFX28B0GSR^24M!'O \W/O!T-E@R*#:F/:B=F6P<>;O>CY#-\_VI")$W_#8#Z M">.#Q6)ALG88^I83)Y_C8LR\,.76S4G!D? J3AUW#%[M4SQ_CDA34VEFMQ\$ M))SZ,8'3)8TO7]A58DKZY:I6BW;$2SG,X<4:O[W./\UH#AHOSVEFB-:U=!5/ MK#KCF71D(IJ#%8W5>'_9^]+FQ1' MD@7_BBQG>EZUF9)& G%DO4VSK*NW=KN[^G76O+;]]$Q(0:(I(=$ZDF)^_;I[ MA Z0. 0"!(19'PGHB/#;/?PX!UG0T,>ZC]VWW2/[]YP.0-&KO8Z!R?\U8[:&L]E\K'@LF\J!H1W.+H15-#56WU\S,P/'7S5 V4..:\L M"_;^L!R0%H!K9[>8(X!1'*V_I1#^.],ID=9>L5QR_\7E(LTY_;:E&YII6*;> MZ_:&;-3I6'UFL6%[ /]8]O^@ORUNF@19Q/.%W8\"9GZ[-[$7YH/ISLU%B"C/ MXPX0MP+X59BMAM-%<-UU6>$,Q]C_KK01LDW.7 "KSHX1Z_.5/SJD[:/*;2R=YG M#T1RY >+#VD7@>(Q7;=7/*;K]HK'=&?8^-MEC+1;!F(@V56^:]>J@Y*@MJ9I M/<^BF\^7<0K2]W$0P%]KSCZ[_0+XUASY$:A/XHR6DU89-#?/SSGYB>-PT#(Z M@ZH'CKU!:Z@/ZSIP[%:[8^V!8Z>E=6L[!:US43UY"BI/0:N4]U\C%'XU VNB MZ$T_"3Y+E8$Y5S#-)7# _Y.5]O(P]N&Q'6=WD7,YKJ%(XD__>#;/;AHL\#' MQL6R)O#L*@XQ@A4*A(^#N,UHWSUJ/;5W>/6NK(MI($'M*KUK)"@-"$I7]6%= MYS.7ED5R#I+XY'A..&&V\N+[MIR1=GX!G2#D9\3'8?S$&YP,:QM5V@ _0Q)4 M90%=(T%AOPY#-09U]>N0)O2.63V*DQVMT&A+F>;3% =?IODQ50:HR0_R6AR?A+8[J9G M.6 ?J81=\LSD_?*5"I+'.(P*(&,OC;[\KP3&#-T*V&*[UJ2LIY>3!0ZMF,&"U7Y/7#"J?(4BM]4Y9?(;BEOZ.L?567.%'B&O=+,PDP@>0]J MX3X$6"K3,K2I\+7-E'B&*99CYSNS[T&)X(\+4R44U>E%&6Y<9@3>=$3CU82W83?:]'^X2 MN[I&(/P<^&&H_-,+&*P%8?&SZ>S4)OQ5=_$#&T69RYCJ/51[[\S0J7[D-L!*>K7? MOHB&/)())1.>@0E7F&Z%)9\\^W\SU_[J_RJB"N_C:V/IZ4IGW7BO';\BU4<((13LK)DH_,EX Q2OO!P3E3QL!CB$ V8:8I7/A7[ 3\YY:"(W_R MMUIF$#@L2*X*1?(2/@:T8@3_;D@R0BJE-*99',S\D+J^S0+_U:%9/I2F$]'& M\3IZL-AON#0[B!K-T7/*-]6J3@ ']QW[G.WRO6N&H8-3B]XMDOEFL>DFPO\# M['%->ENO=R'I;0#M-.? E.<2# ;KS3&$]97/&$-$<5\R%:>#HK3GU1EM$AG M9P&TE(1^5)H+%4[\N:>,F.O/6TK2.CNY!@0@_+E0;&<\!L(8!_ZT[%&4#&>& M"OC*@3\'9J*;:/08T1+N$ D9QWLI0("S@,W@@CSET7@K^ G_[\>1 CQHNM%B M/<%=3>Y:O]W2NT;SDI\:F9'5'6[N9BYR_II84GS3WQ6/_#^AV*2Q;V1?MWSUV5$T; M7L)1B&1*R907PI2H=$GG5F9([*ZHMH?R;+(I9@(-*DBM!#"O>7G9V'EER=PG M>6#9;-9\0A0"9XK2P$^ .F32\##5.;Q['*C&X*0\';H_R]M8/_3927:=3 M5U^!(ZN )' &"V7KB?3\5\EM-.FJ$S4G/)]=L?\XN\-]FSU:B-R0YW,P=&Y6 M!=:=+-;7CE,>="B&FQVYD-PMN?OX!N[^R2]]_3C)U^?@ZJO-FREO3/0!;GNE MQ#E,GBET;&K NLLS)OYDRHQF>B,2W8424SX$^&4LC)3 C)@2SLU9J"H6S:JS M%LHLCA1_1ED'*F57 (W/S<#&U!EK8L+]288#S^$Q/?.%B80?D3X$[S'#T+<< M.H.CU 5X""S+4]AW>(:'-\!OZLI2\&V6/YW":B-8"! 14\9NC+D4M!Z>%.1X MG.N0R:.)&8G61"$\&PQIP XE5;R:L.L8_E[,>"Z(G6(PY-M*6W#E$(HMCP!$ MJC+QYTH86Y.E'S$?Q+0L8$3*-?$##J#2:YWI#$!$2579FY)YJ'3;+!M^6TSC M:"IWE%/99\R]0G&'&35M:AQ%A\+4> J(!%94)#JDG@FS@18 <31X$K]!O"59 M9(ZG6&8(Q$/HI>R:]#$S<\$!#="$WP&QWLL]/9MGV<#')%\+<6#!6AP@%=.B M1[>4)R**0BY0-"GCCY3DE8EI*Z;B^8A%V"ZE&N&#_EXI^=)8TC]&,:DW(=7? MQ(O H@2B2U5*+U,I'>P%WBI&1!1 LYN0&K MK#I-C+-Q7[#H3VP4Q&:PX,K' M(!CT6DH]26Q-I--5:4A$RDET@Y0#"/[D!SR[\*>$UKC$T*2R[^EI64"E[+) *(^Z&W'RZ6QI=AV68BBT_>H M;^.=:HOKU[$A[D;$@$OGFE1YV.#09JG76JBD=+&4@9/F*GI4N.C@C1(4E+7+) $->98 X_"HX$[P.#@11LL M?2_\'+ )\T+<*[X':#)R7&4^<< *B0#X)(U(N=H*<*(7"MIU0@4V$;GX)MC' MR^IB^5+2-&($N0?P!EGAH4)=U0T;I]#73GAR7'UQ7+VV?ER]G#Q_^9/GU_?U M;6H'WT]I!KXR929:]1?B*6"\H#/A,M#3 MI=6&JM [9#NNOM-R8YM#0ZP0GHB0XY\ZN-[<<_D#^?YAUV ,*B,T*L%C&R%/ MH2K&PH?5A8"6-G]L*6"_VSZ:D(FYNTC?,UY%W_(^5S57I1*;],#ZB1[]Y-F_ M9$_^E6/)_N+]@8'! /0D7/";C_65_".= *PIO.EO++RYFB(.PVBUNPUL0-P? M#.2B=EO4L"LK2VZYLN2_2/#S4-'O)/WYWXY'9OD35SV\@7](7[U)-,*-0NP+ M:G[.FANNX[7!K!^B^#Y>+2Q]^1'HZ6+R_NKWU]3IB%/FADV@_K6]%CS/;9(?,DQ[*CV@[]N\>NKL*Z&S*+5S*'9([US#&LD3EX M^YY_L\ OXXL!CNL:Z)K^5C*&9(RF,\:6#-.ZE<:P84KC2FIQSEK7LZ%(K>'6 M-C"&YO+)CFVL6E>'KR[/<) MEMXADBKHY4&[-KTL:X&;2%1K++Q#B6J[4AO4UJI>$E8#"6N-A70"NJJM"N17%(?[)/*%TV*3E7SAHQUU;&*W77VMRV8WT--;&HDGV;,\5%_%!.A.*J26?K?)SMVJ=_]]@?:)(\KI$\C,/)8] D\I#6R34W3"O/ MGD-P*66?,I4M)1.+8Z[^VJSG,R MLXJW,)3>PE733W\O^BG8A,/VW:/>E"[$DD1J)9$MZ;X[DXC6(!*1ALHZ0R7Y M.6T% #QQ?L-2WG]4P_SRRZE^Q3X3BGY @> NVD#>7_W^JX]&'%+)UU1Y<>GW MWX[775,EWP;N/]C^O>":C+(M7I%I7V>QTO8\PZ$.'D!/-?0K&I(DF>-:F6.X M)3^PODJ^87WI@I(Q)&,L-1;2">BJWS"ZNITX M7*&23\Q/^:F.BCYY4KV3/*]^Q(XKA& MXJA[B-6G][L0NE2N0=E7#1EN3'OE5DT[EZJ1*_I'1 MQDXGJCZL:]RPI)Y&4<_.R?![4D^G6=0C3R*.56W3!)/F2*5O34T3O/3[)3/> M\+%@O:5O4MOOI.WW*UW:W=?H2E_CJNFGGKHFHVWL M3(H]_9[?+B.CW3(0^+BA%.>K=+0_.LN(J7P@M@!/"=#./R:[()8U'6=#>LK_ MB=T%&/J\AD]5YDRA28TT3#GR%5-Y#W\[D?+T$C : JV\P0'1J]_^J,R=:**\ M,[UO.%'\B>!NJLIOK:>6JIBA8MI@K#MA%)#D5LP7N$FEA#X^UMEE.,0\;"E? M2YZNS +_U;$9'R9MHOX(<:XQK#)DG@/?6?R.L6FA0EC0&&KXYP6>\(+G$+/ M\40.X12D>X2+C& M:'*X^6HZ+DT!C2:@Y5XF@."* -#."0"<,&+L (#-HK"MEPG#SQY09XRPPE2A MI:4!?UD/=AS,_< &@DO7H[7O'L= SO<+9@:K0D<)V*OOOI)GND*=2/:F0 Y. M&Z^(@LX94:!A1X'M*( %@JJ'K=F!.5= H$P5UP>.3$#04M*5A+!;FP:[LPT@ ML^#F$8YN5]Z;GFD[\-'&L>)!J+QY__3A1\5U )CPPNHLW3TG.+$\R]@*S7\^ M?^"2L0A)96HN$#(C6@K);2'9UD(!<6+[1EWLW;U[!%M5 M*>5N79LPN(RB782%;9#:-@&Z M41S@&G$3N+J\73!L*5_B*(Q ;.$^1]4X=P[61%667 XS%?"9Y\@RID+/KTQ$ M*0D_ 2+02ED><=Q2E*>R[U7:8 GG34Q[/9.5[FMP-%&SJ:.4H?7O'CT_*L)C MQ)A'[.>UE**_M*^?U30SM]2D#!@XHQ:\!)$[ _)U_#C<1,;(*'\RUPV53V;P MXI.M6]W 5?F#IARI2[RTCSDZ/*?N G.T,]BJO#@0$,IKMX8H\\>6X.>5/6KK M3.XEI80;#3.94$TQ#=&#@7$0Z51^JIAL:U6SP% M&O7V[B;(5C6P"R-5UP>:5D4?5-R^MD99+&^?:XRECC]NT R0?V_0P8:,'WY'A4O4-^*RS>8WQ7I%_+ M(HV)CTAJ!-DML)'90F%FP3E0!%]BQAE!;0XK0"\RHSK_5^%ONO8Q-&_,( Y&,;*'Q@V5]X =&T&C^'(+P\K<^??92$]W%NO:STR M!+>XDJO6X[)/_5[LXS<6X0]?_8_O/G_]\$2K%=96F>+M(2<;)=XF&?^K0$CS MX_%M>T"#?;<8VV!SU @'OOVO?K+DCYP#.#S V5D#CSY)MB(\0$Y'1=\:I#6Q M,K'_=.8Z1%P\+.'F:2L'G\QX0>8-$^Y=A=?-^;2 6S]C6#P L8 50]*-"N;5 MZ.VW$Z+$18L^:F^!'@EVP)KP@#G&V;ZQU5M1A7.I2QHY!K/0#.E0!5#EA HL MP.31,+BQHH):DWV^@2R?LI7];[Z9,H6$9R5%TT1)G5*R$L V%19P MJ-(A!N/66ZJRER_*3J-,_,H%GL&K\_3E6Z"R0_ P?@,5XP=LBZC/W3I)"&## M6-=5$ K ))&#(CE5#6QWVFOB!_D]BI6&1'6T8<6. X3$JA%2M'CHO"@"+6B" MZ%P+%@'O2K!(@/!? J'/#$PS$UV#&L"BK0'+"A$I4]0((7\S6T,C2!TKXKS> MY!!QGQ"R7;W5-T 0SWS^^@?R2H #WLX=.YHD:4VY&WFJST,[N\4<@>R(H_6W MY-9HT:G[Z74)99!H^@I@<_^=!%G*Q N['X&,_'9/9Q\/ICM'HOAI:4]3Q[M? M@>'J]M=NH>-[@+1R@.9$'@5K,ELS%J428!,^[?M64I@9'VETS$0 M&N^1W\%$^L^?S,\(?;.;SFY^$D?#F_9<__GCZ49FY<4@!)&9:_*0M>(%/(UB6C<$AVMF! M9D9+^03+S'::7RPW9^B=@>F]8 Y-X$^K6R7K_(?RXTE8BQ,^ST!:V%^\_S8# M!VD5UZ:EB@*(+]44.D8/]**Y]L->!M2V4[:#EDHQKQ++\@>.!$YA0#^DM(D& MCH*.;0<_!^VQ"SJA-G3HVPXW#EJJ@4LM0XW+2'JH.WUD-JTHJ7^ ZV_\EJWG3T8:AO5?F+FXM MA%9PRX4K;EH8O03X)+XXI3F&\$5+^:=0>^!=I]^F3BM&V%#34;@M6I]P0@E3 MW*VUE=$"Z"/)DC+3B+E(B 3[^LE;)-%FS"GBGC$\%2@&-XJ\CW%;:IL5L409 MB;60=A(>-%^4 Y:C#P:*#=9^P/!EUXEW,J'71+;P=-#DI\*5CW6V'$3\PB)T MGI*3PMS)[!,AM"0FTAF WZ^7'-@HN0"][[WX: FY_/GXE2"KE8.9-32'<@E( MP098!!@<#C"R%(MNG2H%$T"\6$O]N7B,'I@C#BCZ9V%F'[P=3]21Q-GWF<-# MA,)UI%PF!',O3635VQV='@/KB:V<#82'070PODNV4FM3"I!(''AA20Y $?G8*LGH;\#^C;$GG<&"S')CN_(IH;Z- M.47#07ZJ6L!%MXU.]Z8$-2#!=3S$68(2]LI8HI-GB6[G2F/@A%54MF,3],PK M-KDFX14'F^326I":,U"RWP&=*-\LT3J;/S9$=58@'CI3]&/71AUKN688.F.' MGT.B_^8J>G*\'RTO?BM]WAJW.L%_Z$]CM%;\W.N4O67?'ND6!:!EV#+FH$R]JV!O6 MMZC-C]I23;ICHXV-EPT+EY54&O.P]6E*C0<[]6KY.@&OBQ(R)Z'R$0P^>X=V M$-<(B&?G^WHP[$@_9YT0DFZ3'OA F4G6#K7F;^A$VX_AH7;XXZ'8S]7S[\U^.D]@E]'DI@DL5.2V+XMGO:%3N.& M0J4I=%1G.JJ]X5-M@+RV&5N5]W\]76FV-$E=\8)WSZ;/^M5TJ4]JIU-7QYHJ M['Z.ED>2RR27K7+9EF:R=7!9Y^Y15WL]37*9Y+(;Y;(M(UOJX#(<(*D:VL'C M%R2722YKT,:K<-F65JEUNB%\S%ZQ>GFDAZN6QZ*5A]==$+UFSJQ8RQD]-+30,F M&FW'?:'JH=7.#W*N1$.BZX2>$AXQVN /#;L-Z?@N*>1\D>&U%$+-OB2!7"&! M5 MJKB40_>ZQIS5EDKNDD/,%Y-922.?NL3]H"('<5%#-(3.Y[F#:P0Y+XP"V M>W2^;(O-YO?#8H/E#,_=K[7\W@63P2B6M%ZBHRYI_6II?4?[> NM&W>/';VH MW"2M-X$>)*U7,_67:+W:R:K1PUR\=N\ZSG\D*UPM*^SHTVP1^WTP<7H-.+LZ M=6QY4S.RT_@T(K2L*A[+TMAYZZ[3)K.+6MD.8,WV8ZR\3:"P-BODJN5&S=!I MML@Y7JB^LN(=H.+5NG7%:&O"7[/3"B7O2MX]PB%*9=X=8M*OWI&\*WE7\NYY MS[>J\FX/.Q*IQE#RKN1=R;OG/7FLS+O:W6-7U4N"51?'NQ0 ^(F:..6[O.=' MN5]) S/J%IJ& 6;F@@_ISEH4EHPE:XGF306.M^5J4^M;["=J;W:OHT6OM)A0=W4H;;> M20.XG>T-WC'ALTBZ@L'N44L\:(-$=3BP32]ZN,=OCD[+A8X5U(ROE\)LIRYR M"<[?9Q/JGSS[/0'Y!0>*L/"#$^)HY3@HZ2?7ZW+: HPP^RD2W]T7N\R='A1O MEW'4;AF(D]P^>>OI9*>1\HMCC@2/I\2R(O12.MC8NZ^LR3\'2@FHSM_ZOYR. MWN&$12N#5J.EN,Z#N21UL)6S9P8+6'P<\#&.HSC$L;2ABE,,;7^*8P8B=X$- M'[%3Y5-@39P(9$Z,G6Z?6?#J6&+*W_)/(.JFV)#R>1%&;!K"I2\$&^HQ; 8L M&;E&O7FI7;0-4A 8)UI@ ^<9"\BB\*RE%J([AGE<[P.Z&T\*$RJC,T (,58^,ET@O_&QIF9,$@UPS"3!M0%OEA,H8SR M@P>Q9V:TF#%J\,OA0"HU-R%5Q9_XL*(Z>C53LC]P/A E,/<[,+A<_^4/WD;Y MJ_\,NPC+]!P.E.OU-K6'=<*$AD;\H31W/DS0.S%?&6^:S&6!38U#">G$,+PU M/HU;8U$&'R7$%2EDW2'=).V9Q:!;>*:'LRGXU/ \R=',L!4;9A/YT>N%ODW( MCGUW0IKCD3 -"Z^C=VVYF/O3#)#$>5]:8-E_ 2CNDP[;5EX--FDOY0+P3Q1 M<"\2':R#=]$%\B-VI8:UWSQ_[F&?7&<:TK3T.7-=&MKIX;PQG,G)J1! (OK+ MV^GE*(8 0G8,Q#+/@RU@BK)^O>)N8ET4JR]@:GK)L#71B%JQ)GPJ"%P#>(G!_(_XE# : MBQ4MU/P5R?ZFSGBP5'SACVC\,[LVLY;[_Z+M@4JXQ5R6++6O_^SE^? MD')BQRS6] #N]3?U !8]>]&I-)8C(A?6$GC0;>F#:NUI3]+HMC_<^JB2N%D" M3* /MOM5%]5?=&.8ISR$LF%/._;7:@HG">!QHEW"Z0K2UEHZ)CGTYT-Y].?/P>411UQ=I[ MXM9LY<.*P=VCKJF=7M%;;V#3HK.*N?UJMX>\]1]]5_CXA[\FQQ*!E69O0A-B<;]HJ54Q7Y M_*AY]$=AY?T>>OJK3I1N?3Z)]($B."22*(8CHE24;8TV5L L'Q;K["F4;K?L MNHYRG1VDTI^!$S%_/'[">>-_<&0MJ@JB?OONL:<:@V)1_^[U#4>MYY?FQ#;' M"$CD0)?H@.JHC>DP-YKI52=HFBWI]C\%/+(CU=? D6JK_>[!_8YJ1&8CA.+F M_+%Z&*.^5B&R?6)2.=/.5HS'3@=ANXNTI2:,![]2Z0GB.-Y/) %JN0CW?F\ZLC$ M0=5P:_G1O3AG9F'L1LEXVK'SG=GW,Y!%#(?X,II&&\:SF;LH/%4)>4Y0-B@; M,XE (03.UBPBD2,DGJE8('Y-/#(V@RA,UK)3EA%E?_"M\]G93O@M2ZC)COF3 MJO$CAS9"Z_9-RJ[< ,YT_#__?KU_8\*Z!(OY""Z I-$B774A4Y M?5SK;:2NS[]]6@J4@?\R8L&7,:Q3P I Q2'U]!(P>N!RC!ZV8*$?.0?/+609 M*;8S4NS>/49SOTB)N8Q8!;&@Y%8=BOS8"7-G:!RAZ>('8-[,&#,-*&/I$1 CD)'P/K- M&"/S+0FN=*2_"Y;RC]G?/<*2"Y,#D^R M(.FFW!I5 :)9 LPYB IEQ"B _>(!?9+:@A5@]@#!@GWGN7]I40R]>(R)O>/< MM@10;"? W7,S#'[!EY(DQ<,[^ ;A3:\(HR!.,A)%5F,>E$3[E!YL,W@7WD1I MB7ELEF+2!-4;[8S$D(FEE<,!;O]7[''&HU1C,EOY)?ETY\1F3\'J>P70MY0/ MZ6YI700 ?,B,:Z* ((R)J'A5HFMF<0!V,>/:B9XIK-[2E/V)[Z*:"B>8<^I8 MM"CX>ASCL>GRS<1[3HB)K&'HC!V$,#(7K,NA9%5ZS"YP?%KV32C_6V"7Y1+F M: ?>)_U1@=W)ZM. ]+!=[44?#H518A.Z@FW.UY&RB_@;X#AY0,A M1")I-E/BZ0OX'>E[_H.GE[L+A#:@U/.GCL4+(9(46O3],Q3C_L+DXX;UEX%L MC 4;%CEH$7Q!-%Z75;A3SBT7_8G(3R7^UQQ2GN,I^(/K^TAIU>;9G(>BV9R(U<%!CD1D\N:M=%#38^ZA(2@X<[9@*76M?0PTKZK8LH.41%R-YW6B66%A8-\F.Y-]J/ M*X=9=6>"G842SI('+#IKM'6C,>4+5YV-4VWSUY-OH^EK2A?(;?XY\,,P"3]^ M"OQI2>@TYTA7SK_I85IAVSAZ'<,%-423?'E"7!B)E(-P7L>XGWR[-]\ M3\1[*S,;3M=5>^VZ9OM)9FL(V4EF.TS);=9IPED%AZ4RP^%X8K7;K6O0V9%; M!E[Y"+1G-HL8GO^"4:T-CE9 =\50V],5D4-5=M[B-4G<-7W23^)6#.\>.ZHV M/%CPRO%#DE..SRE;.AO7[@@,J$]YNZ-)]I#LT7SVV*1(CF6Z#[ P3-4:4WA_ MZJ%>YZ"*KYA-?+0:\C/=OZ-/)PMCCP2:*Q*$Y[.G!_K=XU#5C9,,-KF*N*+D M9\G/AQ6ZUV_U=]"DZ76*]5V2B2432R:N72D?S3?IXJ%Y3[MT1B[I,[%N2,NP M-(-\>6S+L/ZI+5N[&U/>_1OM1S&))#;SE3%I"H\VX'GTHA("ZV R.B@.R;G\ M04UKBK6=2%1T-FFMZVLI^,R)!18*F53RO\ *":Q^\>-0<=D+;XZ/-KQT9H916N0F[!M8_'+[B)4I!'AY.LD@&7/ RY>HB$ST:N!X$KO,5;J8 M5.+, EZ9Q+"N*TK?@@(9ZZ/P>7XPPZX?!$)1(2,NXTC\P*ST@$SGF*"WX?-H M2 %L:N1$02H; $:P,VO"+X,] /1A(W;50FI-'RQIGUZA!T#*<,\LBEP"/:_^ M?^+O^^K3-/O?D;9WTT)9"?; P-9):U20J,+F=9$)74YPH[,9HY)QF@2!JR \ MCICKL%>&8RVP3XT2F50(2 W+0N7K)BNFR,-\]5T7"H??YA^VVC]#Y5,IHHDCT,3K)!U#(<6@5)E MZ8F&64U<8!2WC=%S9?9I77 Q$%4C3AV_7FX#%!39Q4Y2O MXF&??! MIK'_0TMYFRJR#6.EB%!S M:*""U2(*$\4O\-. ^7>&?EGS[_K[S;][1MWHL. 3X83]SLMBBX6<@UYQBMN@ MU^"!=\G&%+$S16Q-^5+2<63=N+M]*VO+&E!Q:)7 L(%MJ<1T4&+)L1. A?%7 M#)J.5^^/'=1H6?\=!\=XH3S$6G!N;"'<,Y,]5\[.)0KS4!B!2&4NRH[D%M1A M).&< )TE1DUQ L9%/+9ZP*%-:$3P7@[\&6^<%FNIW+;@$\"6NK/ ;519GKSB M1S[RR:.666)2WL@,Q4 SFCP&MXP8C5?"C@:T%UBUM_0*;)@0)F7"24^ ]"7_ M^-M U_IO:=J11T8=*==0"#HT (41NK2X-2!#Y>_AFDQJ!."7K(3;3B89*%@* MC[^J*&KQ2M?Y*W9 S"YR<]3\M':]4.F>K$9L(B0[B9:.MB29W30@:\/J17$] MGPD%JQ$U]LED0!H^E8[8$QT3/)9KF.!$7%V+G@&@->;,%FT+QD@SW"H7]DV( MVQ7J+;7^U_0=2$WEI0=A/V;246*)<->BU/O8=T%,D@< !"8$E/>,.;5Q%BH4,ZF#0SD MA.CG^T':'%(HD?5M,FJ5DIELL-[R[0QK\I@?* ML6^5RMLO=NS;166,R;%O#3P:EF/?MIED^=:F%8]^!S2&13\X+57.?6L>P^5B M>F!-VBPU+841*6>^G3J-8UC-88EA4A M,CD$[>1#T'9ETP^,LVEV&EZ588=MFA=DM#MR#MJEJ55US'8,Z\C\JUOV->=!>''OV(G M6N!0F0].:+DT+ZEXK#'4B]D)0[W)&1X3,V!BB_^A\$UNS>BHG+;!05 "F*:> M[/PIN]/I[Y'E%>2]3C$P3/M M5K&Q1#IXYLW&]?W. L+XQG7FQI8D"\VM*EUI\JSW9CCY'8!5,IQDV+U[!$(K MIFFB[:.$>/>/2;X!3Y$)G>^8Q1M-PN4L&4.EK$!3#%O(\$)H@DLKH:5?-UH, M0LN&T57[H:5_)+3T$"TE?:%*T,*A3@=[,S!7 YJ1(DS7ZQBN52X!Q,20E +; M79X?],[''%P@N \T;@7/6LTXFO@!#2XQ.?0PV3P9,1R'[*V:4WCO=,^/=HQ8-D?JD.M M=UJT+^^U%K3WVM@&1]N@R[-4PSR:DHW 'BIC;)N:KQUCO;:&FU0-;:"VAR5V M %\IY:P>B*$MIM9>&,*)E.W!!KVN IMA4 ?)S4D'31"/.F$J^D$\Y_1('JU3 MTZ%#8R&]>8E73C54QK!>#7%*BZ7-0R=2(194=X ZC$"#2XS68C(-UT>A\O)R)&C6 M8]XT 9GL6Y,LB'S=$+,_9(+D<$1KQT7*8O)AA%JD'"Q122BU,&\S/CE0ISSSU&=-<_RR[/!1)\&5Y M[&F6^7*2>:M(#36Z-CO&U :7%5,;[A=3RZ)G7\;OL!2&:W4A>9;+2$D,H3I/*K-Y#2H3$@B+F9)OQ"A5].WMS*$2)AS&/Y)B M)?%0U%RCM' &Y1^O4,*\4%1[W-3P9V*"(:PA>[?ON8L?57P]RJ887KI(KB01 M"S^@&$;913I1O!*7C,H3Q:5+S@"WE/ 2@@1*6;2IR9+ !W$%BD-EL>@\%#:& M C8";QA 2S>=(+$L7M$H7BDI36IL*R7#0O\K]DU=9.R&O' M; 9?ON;&=KF7PJ9I6* -%Z#E4X^((]/ON56$,5?Q"#1Y3T 9 &8B?EV^#W M3=&UP,(WJCN&_Y.%0JOD9498!3Q-5X$K..FHT-1*3P5@7E(\9?5L[Q8%&4DU M]5\XY?R,%!!^]KA[\RYML2/C&KA([,UT?KDTG%,\%K,%4)6 +L40D1F1)]"CK,;+O>\-6KU>M MBN($]1AZJS_8/"'S/(L:;IX >M&)-#N6-A"S-G1^PBDK05:[0ZT9=)B*/PFX M2H!+M*8BU*9">E-!Q:F@YE1(=1YW>.0>!3'PD',.C_PCBQ,(&S&S5X/5W\B ME6,F]\JU/:S:YX(2T]9%NCO;(MW[VM \">8S-2#C:0 8=_HZ,;U2Z[KRB4@/ M3T3P..3H4P>/E\TF"]=DX5JEW-*UB4>-X>.M7G(9+_?O'GMZRSCZ2,,Z./G4 MOL'9;)#?LS,($30C0T.Y0$M#/\32D+5W.QL3W88(H;,MU/Z/7D/0([=.983\>3\UY6:K9HQL'-:NHW M3XS6X#!;0-L6=CB.";,:=UT7V9F!ZL23,]'_.]=X5@1Y^!&D2#1R%Y0_HF ? M8\54EI8,2[#NG>_W$\>VF?< 3*6U[QZCN2_V=X\'EMONT.".2<"2$-Q]/C&] MQ&HZ(AV5)FND,P..."#@V!27F9]G(#@EH[A<5E$)U25G;_RH;>E .S*#%Q;E MS@!GJ[Y!*++UQ EQ+OT.C[>ST[ODR)^^"7DV/S^=QH[-N&R>>XA-5;'',S:[ MI^.WW/FCR'4=L6C.F+<^N9/?4M2:Z\I!:-S'5]IJDL"9\X&2Q%VAR.[U5)-I M^MUC,1WS!PK65E[^^+ CGD(N#@("%L6!IU"*F^\D:\?!"JUB6 M:ODO'M8E94_B-ZU&>\I$*E9;]DL47"I3T5HD&R7V@O1-RT:*Q1-)TVE.A2Q= MGE&\]!W"+ZV&X*ZR$Y*Y8XFGC-#*25\H'.="1J&P7#'A=C8+_._.E$^WV9QB MVBGT;SD:4GAH[9,?B*_P.FW)#$%O_L&. ])8&6:PNK.[:ON*=@!\E@''2Y9( MF;E5BH!UA>3-ZF2^"@&*3,JU]O8]62]2=. X4 ] M[;(*7K3V?A4OGST<-/75_+ZA<4Q/+RG+T+4&EK,8O)J%;TJ!7;'M$X JEZGP MG9? HZFJ]$\L#Z'9*026R/PNH@3I?)I_MIY;RIC95(/Y+Q!2(8XBHU+39"XB M74(5:J0_@#Y6+@6]\=[T3-M4E7>!^6_'S55>T@0:SQ35D$MW474E:B"LJLC5 MM2XM"9?,O@-L/.%9CT6OCU#T_8 ;LG8L&M6FK*XUM_N='Z492\O+YJWQRMRE M->8>FGMFKB/&TAK;:C)N#VL)Q6@XJEM%91K;J(V3D0RBO*@^^F"=L.206\F7\42SC M':TBO98E%Y6%>G40Z[K1*G85_V&YZU/%/?1.N@<,5Y?%_'[(8C3P_L1Z=W'B M+"\E_+0:PFD4(6@G!6*7"*&8S'(8(?1/N@>,GW9*VKIL)01T<+B,28R&$KF' MSQCYXL2+2P\^E+D0 $1D@[[%:42@3NV8Q)WII6VC$N&6D!)VU4@$(Y=2-](P M04_R6-:8HKJH,23?,QM!R^5]SF%'8(Z8Q\:8;%AW".6?N3]\(<9FT_ASF1NDGZ6(FW/"CQ#@?-]98_YL^! M:4^'^O+L#PX>G]AK:L"QW]U.<_HX_)LIV\OF M](G4$C2?D/,]"X2ZF77O2C)!DG&P<9B=1*.PC*/T8IQ\:Y'0L3DH2X[]E3?) M;Q]_?_YQ??FW*+O&[!R1P'<))=Q=H]4>-JY:6FOUM*%.@?Q0@'Q['Q?#X9+F(+9;]@4S'U+U9M' M&M5'9.ZT]UN#7Y)%)$E,DM@I2:P)O39VKP%8\H*.7A:P\T0J=%Q*G!5J\Z:] M+::>)*US12_=K%.][(=QYA)68_.LII4ZM^4VSU\R/!))5.WNW,&I=)K:[]U* M0PM)ESO39>^<=*EQNFP?7*DIZ?+:Z'++*,_CTJ7.Z7*XKLA"TN7-TF7_G'39 M(;H<:!=!EV=H9W.!-OZ?JR8\3RG @[IHI30CZ.@>,S6Z(H<$8Q'0%]]8O)YEDJ>E@F KIX;'LP_S>G MF8PDJ0K6^'%("O.A#N^0)DFJF22UQ9 ^#DEA"\W#VV=*DFHF26VQ@8]#4CA0 MLC$DM6]P^[9LVP_KTVUVC&"CK3OSL:R7CSZ3T>UF2H3]HMN"/@K.<66_>,#] MXGZQ#T,#_6))F0VRJ(]-F4.BS*$\>9&464^$NR[*[/(SP>% RDQ)F;7$N&NC M3#P5U%6M?1&4>:(H=SHUY@+=@.?\G!GV772-2X?8PB8MZL?'L_5+G(41L\PX M9+F*.ZK>,L$KN*>T?2S >\/G%_+.D"]42XS%?+#=Q+40

Q/W M725+1G(=("K;C[%*X'8DR!9_X DPER#NF5EQ0(.!/PK2^ 24\3XKX2A6QCQ1 MS4>9Z- Q.EY1;.R,JOH4EZ2B.FSWHU%1Y^ZQO+0;XT_?8JVK;2/*Z./+:8D4?C;R,N\=^U0/BHY+7FO;)RZT*ZFRHO&.U=O_"JK7U M_:JUG]D+'JK\P69^@"U^-G4YZ_:*==O=7G/KMM_%(5P6AHK8)$[_-.MO=\9! M4 *8!K<[FX#;L[X/2\CAM5$EEHQ]27Q]3DS(T0+P8;%])'CZ4IL"9.!$Y]C"WD@!"FB/SG18@M;LX'K+O'LT)% M\-59]V^S$/@H5!7FO<"O+( _Q^8(A*D9B,YX00_N#'@+9XJ<^ T?ZYB MHT#LLS8W75?%W,2 C0-X)=T%&POXA ^.Y:Q'W'?L6>?3-(Y1[+A(K6%+D0+@ M=@3 SZX92K8_Y_XMWQ1IQAFSJ\H$+KE?FKN"B$K[KEC :W["_70S@Z+WL73.0&L#?O8K_$WJ*9^;DXG%9T5G"D:<*9<]<9/8P M;F#E)R$[9O MX^9"9BWDC 55]'RC.U/.%R*$SV1*K85$9JQOSRNEPN5+A5]P0-C],_J%"G;0 M1PI\\\OSE^,,M)."8;?]PQ/BL8FB&AZZ1N/SB6S!PG4LE!1VC$V=$P->F %C M[L6IZ!]@ VDA0!+)@,,S$.>A.)/=:.)??.?2)#;EL4@)@=Y#;':>3+(SP]SW M-,1.23I4B_B'$)T4%\:FV:_,BUF^;2:UTDPN1L!#-C,#/JL$'BM.ZA&M(4L6B(?VV$?<@NLQCT*L <1Z*XW!B>EO(-]%FTZ< MHI(,?4S7H2HN!NYH4 MX>R\^ML2%9]K@+3+7)>H1DTHYR=E3]#6C0$SNXVT_ M0TY8IK? FCAXMC.=F4Y Z[ F*&-"_,&W'%II.HI2['_3HA.(%WY9!WH.HCP" M.-%_%P]*\&KYPH$%FI]4>5'VY7%2C%M67_4UE?U/9WY0^X0-E?U/9?+)A M\)/]326)G8/$:N]ONE])R%D*.E8#6KL0UEZU6G7UB]WWX7)QE[&XFJJP>!ZR M#LYDD]EOIX2INEI^58%@:1[WZ4S5'<'W]T.:A>R<]]RP%/726=G#S1GJ?_"C M!IZ*CAE;5O2G$TW>TQ$/"WBJ.@#F*0P9_(/SPRK7>@[O'K6NIG:,=D,ZNTB6 MD2RSGF6Z[;.SC-$&EC$&ZJ!=M41-LHQDF3.PS)8RNU.P#'84Z'=50V]*_S#) M,I)E-K",?GZ6T>\>.[JN#GM-Z35;4\N]2W3QEE+BS]'=[IJ*=4L9KG-^ANO< M/0[;JG:X5;>![AO<S@/NJ+W#S09)8HTDL?,?__0Z=X]=36UW9&S^.DGL M_,<_O2Z06*]!)XPW%3;]O*[KAHR<5H+CFVIL5S@2PQ95\-^RI@UZ1 M_0KED3+L<&%D5C@5.R.9X?%86QUV))U='YT53H+.2&=]S$-7NR634B2=73J= M%8Z#SDAG QH'US6*GM')Z:S.4*IN\'9-C;58?SM6=6\MI9_7F-9>>?_-ECE5 M1,[Y4]=ZP[O'3A<$3??@4L0+F8@J^5#R8<61>R?@PWX;^-#HJ+V;F>8N^5#R M8<79A*?@0^WNL=?OJ,,2PUORH>3#V^##\Z?>]O6[Q[YFJ)U!7>GNUS,/_1S4 ML[9A^!O7#W?J=+A?7&J'^W<;X[GOT^7J+F9U-Y7R5W\[K -LA!LP ZY4TVO& ME@3U=&["9Y+WOX"TKZS+.Y@(WI;TNGKX(CNW:.NJ>U> M74%7R1&2(X[($5OB,G5PA('Q3[7;[TN.D!S1?([8DIY?!T?T>&YTNRGI]S>5 MN%I7*ZK;S;VIQD];:A'JX*>^L+ED,?]UDM"66H,Z2&A CFRW(XOUKY.$MN3C MU$%"F&\S4#5C*$GH*DEH2RI)#20TP%01/*%N2CN'&XZ[']0(2A81[L926TZC MZV IS/I0M,D!>4H:$N?ISHH"#M'JX9VL%J7%-1("CK^*=D 3\DTM6\< MW'I!VNO(<.%U4M#Q#RT& ^J, MH1V>2"_#A=6IX;T?S'Q (5-,SU:^1!,6R%CA$7LX]'=M?50'9PTI:M@KIBSM MWJ)!^NK-)*-=6QO50$;#-I%1B=C2R6C7SD5UD)%&>KY7TH%;TM&ET]&N MG8GJH",=Z*BC]@_J<-7 &+C.P]]62FMK#MZN&.U'8=^6<'=S5:"UP^@9@NG M&EL8U2&0>)/H8:^N?)?Z\'BF"(KD9,G))V^"5 C9CJX.3>W6._JW;T@W-?&\')6R(& MMA/.7'.!VV3K&5]>M>XJ N]/D0GXA/_;SNMC0C6_Q5-@!^OQ/^'+Y.X_S/48!/$Y1%S]GEOA.RJHZL^B%F2N0KT80IKV:PP-@,\-DH&6)" M9WH.\.M+0%\H_A@^PD8<.S9=90Y_^W,5%NT';!S V^@&*PXBT_'FINLJ(>_7 MHRI.I#BAXDQGQ'Q V?C>@,W\(%)F@6_'5@0?J>U:J+PP#_F>VIRH@M?'@/KCH9O9+>"B\/X MW(1[.[-8R&A"=*(,<+Z8]'890%#).OVWI MAF8:EJGWNKTA&W4Z5I]9;-@>P#^6_3_8_+1(!4(4W*-J>] &B;X#H,(&'N[Q MFZ.31;^4++1."K0EXB^:8:M]\\(HB+%T!)OC>?8?S$4L/@'&7YW(8>$')[1< M/XP#]A4>\\[UK6^9H.YSY0"(@5LB\1V^A(%0GR%V@IB=!2)OEU!EM S$S-)F M4\I8$1:[LWX9A:V0:@8IA$H)K/2[IHH9A!$Q[-@'Z3!1_HI-X,T V7KLH,Y6 M]+;>594YYA%XH'4MAIH8A< +T!U7V"'*C#'>#W?"C\R*0RBD/X$P4% M-QG@:E5A'@IRQ52F(* 4-AX[EH/2PO+#"+ZSF:N2Q!JQ"!]/ M 5(+M#90\HP=4@H*F 1S6/\;$'@,)(V-2S)#Y1]_&^AZ^^WO@?\O!I+L$T@> M #=]J[W]L:6L_ !/!',E $BC2(3=A?3.C3W/E*1%(1?*V(*2A0]K=-Q##SK\I!337,264H#;Q?AE!-2X"3(/H TY"DI@[8$NM MV$8JWC&?@%RMN*%!NYX-#>\>VZUB/GJZH3G2-;>_^ Z 0LFBA'739"4BQHIK MU^I8._@NN/;BZ=/&M8?,12-%%6ZW2\LW;;!\'++ '9!Q[/N,><"F+25ORSL! M[#ITOM]/83>3L$;B'.CUP$.[>]0WP>-TQ-FI9T.8O-0J)@HUKE'D.M)M M*5]SRA=A(MS*D+1IMJR\(AZ!@HE'862"ZX$:' T=T-@1P\@;\C@#<,.;\$_ M1[!.$1%:LI?Z'+[P1P07I,OD\,!;S1EH_N\ @(C!2ROBH%>!'+,HU'L TD=: M(/];*P.]@=,O6\6C@I1&86L55]L_WFIQ)FQOPVI;BO*5,+ :?EBFAP0O9L $ M"GE<0_"BC#$O%' M!33J5)RZ":)"@I.$U1C!.ZSBH-5(2EK[*()W6,6_JG,[&@K>;=L!SO#ID">U M[*N';"XEU%-NM)N1L-P36WT.H%%<9O(#)\^+8>W_%AH('+M7/'! N%4D@V6O MM)>0@3GS7S;1P%.Z /STS%]?F1:H$*=VRNZ>ZA9-F^*[D5'[;+OCQ:9)'K>Z@6_I3NZ55_+Y3\4GK%J6U6\;0J&E11J?\)4U?5)UY8*??8(VDT&MW M3@:K+ MAC.?XA<0A4I'4RG3924G;7T%Y%$1=]8\ZT$"2GK@@Q/!RZQ=*HL_8X*.'\-# M[9T&<^XZI7%=VNZF(::E_?2@ Z\QKOA)D M9-V%_F%.9V]W[R\DB9DK(HS^[P"OHVB9\V?SRZN.5B.Q1W^SO7BJ<75?7W.1 MVA'SV!B3DTX]CW@W4%Y;(5VUS5]/D9PVK)1U@(&<8B%<7S/N'O5^72.*=V;F M)@ZFE.QS6^RSI?/#;NR#R1;]8I[C%;+/$6)MDA4E*Q(K;BGXWHT5^W>/=0V- M;30C2N:1S)-GGBUCGG9CGL'=8[=[<*_L,['/B3S6\C:+54XDSM6->UT^T%Z.TM$[+**"2??S)VOC/[_M\L\$LH M1V_S3#M-?WN%U%-G9%-2HM[>TD'M,$K4KID2)?7H[2V#I7;2=+K>?$UWVO.1 M2SH%H8/8\C(B.?[EB)S7J8/S.G>/1F===8(QPGUFY+'Z5]_H24N=H+D>P:49=41Z]?[=XU [27OY!AQR2L:4C'E\QNS5D5V@ M#^X>=:.NP-0%,^9)TH DDTLFKSA2O(YD6'U80PK1Y;.X9$O)EO6PY8&1H*US M7/J=]MVCIFK]8F/.:^!:68 EKY)HEU=)M,NK)-KE51+M-WK5#@/HZIU@)NX3 MAG]7;_6QP58R"NF!.ITZKRSKJ_7#_ L/5[:_=Y'A\ MO-:7!&OPJGP^W>8!'"$6X%6P)K,Q:U$F ;J1?]MAE-[=XU?J).>/%:QV /H) M__,G\[$,D^O'I^EWZW[ES>UD.[OB][*=78V+.D)L7;:S.]"D.ET[N^8U"GIV MON_6KTYVJI.=ZF2GN@;"3W:JDYWJ+AA^LE.=O.K4,339J>[PA/9Z0'EM.0*W MVJ)$;]>1@=?1[AZ-?ETY_>=/P)'L(]EG1_:IH\-/1Y>=ZF2G.LF*![)B'44> M'9P'I!^IY4[6YG=^MH@-Y 2)?7HVAZ'==5T71=/\M2.5M91WT3IP., .<@V/1=6A=O#)3B-[>4B^E7Q[%KZM(V.AVY7=[TZ76B29 M7#)YQ>YW=238=HU:TI(NG\DE8TK&K(DQCVXS]T QJYWVP0/<&\FULJQ+7B71 M+J^2:)=72;3+JR3:;_2J-?WOZNEWM]1(KVC +YOLS]:$V;'+OHR7C'?XP()7 M]F[Q=3&#W]"6_PI/>>?ZUK?,6 #6#BKH!,ELQ+2N(35<9F:[I67"IXUENC'V#YDXT M<3Q^ 7RG-:BXY<^Y6E9<1 P+U)*^#15EUSC9-:[N11TA)GV=7>-D5[&2W>[8U^XBV@7MVSOL^F%1H0_8 M&;I]711@]^WI=8U$5NS/)1VTB[E*HNIBKI*HNIBK)*HNYBJ)JHNY2J+J8JZZ M[?::[T0LTHR47TUPP11]YU;ILK&2;*RT=]51E2Q?<5A1.=<(1V"K@\/S\V7C MLF91FN2OK?RE5VEK9)UF_)J@1V-]MVC M45>[@$;SHN0?R3\9_U3IDK2GIC.TN\>N.NPT7]/=0CWZ$D8I,\8+F6RYV912 M:MX9H(R+]+O'?N=@#26;U3621BJ5[28TLG,;&J-SS7#LNL]GMB)-2ZW(]B;6NV] M! F?_&")42J[5;V[QXZJ#8T" Q420BO2L&PJ=VX2VF(.KB>A(I7T@4JZQ5XN M%TTCI[+X;H7>MIE\5>@-.V9KQ5#/1=.;I)%M)E]M2FV(2JU78A6>G(!N(1C( M.Z2;-E:G[6\92J>I_D"@B+5_#6!U+I6\/GDVH>LIQ58)__3:=X_]?K,'%D@" M.D64<#<"VCF$V*NODW4#B4N&$,\70JR;4/5K)E1)7*=0HITF*=%;"$SF\JB? MXA? C-+1SII)+;L]'@DTUR.(=+W*I,0](JF:K5-.FI6QT?)N9)SS\*Y MG1-P+O975ONUS6VY8,X]0_:WE )2"FR5 GOEOA89O7?WV)/Z67*FY,R:./,4 MVKF/U5=#K9@\<5E\NZ959M;A\GA]#$],16FS2C$\39D%@'H/NSJ*+I'89!*H M8&X&MN*/2SI7BMZ0(>!&\?PH:5BI.!&;AN*YMF([ ;,B=X'-(D5ZO&)2=TML M4&FK^"&:^&%R'S:8Q*<%;.SR+I,GZWVYC+#2'JF;\8OJ_; M&[)1IV/UF<6&[0'\8]G_H[51QQ7)0A#O/0K@!VV02&7'LV$O#_?XS='II-"I MBNA$ZZ:PJ=;O-1Z%[*\8EO_Q%8]#BUU=>P,NK0#(S'Z*Q'?XI)5>KZ??]MLE M?!@M \&?[4CA6TJ)8$5,I-B]&(F@Z4*OY(D^PQ/@Y/&+ISRS&;#I")A,[_"0 MHJK,F4+-U8A7@1IRR<6!R4&D IU5)0VD4T/M(!;0G?9G(\0BB[V%?#J@O^D"A]#%#0:CMIG-[&>M@Q7.WW5J7\0O4 MX<(G0,_$L2:*$RIA//H7B%24Q!90&5!+L% LUP])FF=9"RWE3X:89!ZU^!W' M^/\5U&&_7\4RPXD"'R:($?P7-'- G8]#@)N-F &MP;X[0-(XIQ.VZ0 EF!8* MY46K*&*5M1PBJ+2KM_K8J'?F\W4\D!9P7EG6G_>'Y<[0PH9H9[>8HQ );/TM MA:Z!9U+/VF!%(^7^N[NZZ7=293,),EWSPNY' 3._W9MCV.&#Z<[-18@V4 X0 M4\>[7P'\*LS60F8\/AIDN%X$SO Y%ST0K>%5L":S,6M1)@&*B;_M@"(PQ:B- M-0BR]RAA2+&8CV7H7VQ8J"D"*S>4>7@-.4NQ& M=,F7F9#DX7K154#3%B]A1[9>LB'/@^9/W#VX=WW_&PKX, )MNYSXUEA+Y^L$ MD/Q?L1F ] /OY \V\X,(E1EL:JIH[?O_4H5'0XW\0?V%C-2KJAR1BE2R,$P' MZ,D")Q7^R $55F%&Y"!9PH@ P>7H".@UJ&"+M#>)AWZ<2=39E)W?W@U?OP] M<%ZQ)>\S \>)>TN_P/]>N 4(M@Y"Y D,![A>&PX-,J5"EE^9\-9(WR?>UZO# MYB$W%,!QG G+8QRCS:8PLIX)$.,40#G[K:6L)R[E!5R^P'0!;6"">#B#P$&1 MYXP==.H6M*DX)'&Z"A? -F@UH+&7!=A#8!>!S2= .#47:@(L\=6(N0ZL=/5K M/@!A]5L35F Y,UCEZB_:O;\Y&&.QPUM8L17$_:/JG?&V8UHQ,\_%2@Q\*<*X(K1+_!_ MSD*!MCQ4$7JG^ CP9AEZ(Z(!M8:DJGA)GD(MB9"-D(L,!-8<; )DF@B*#E>*] :WX M\ G$2+QIU-P;2QQ MLV":=,M/W@*O!1Y+8C^;-T.$$' 9BB# F T\@N\@?RT![AM*,"!:Y-P$ ,#, MMC,&7XB<180X>G>FFR#R1.-$3JV*#.PV;X'UB&K&71!ES1UPJ]!),V/N@R?X M$PH +L!&U,3:'%$Z/-1-DY,=[S"*,1W.6\P]H2R$:23Q-'0P4Y?RS$&:T*W M?@DU^ B.NSPV"8=$NMGB$LVQ[H6!$WY+WRKBB<#!<92&!5T06'STC,JCE' ' M?\+R,T-&(0?0/=P1%7+I#WS!)_Z"1! )O9X0^I/GX=Z*!L'_36,8"Y R"DAT M6,=2G\J$],,L2C0&5Q?=85*#>.\_6\^MO*;%6SY^M\"%?B'\3!V2OLO&QS93 MY3J9@VS,/QF7LEN88IE@I_B ).0K+ X4TTR,+'*F"$*3E(%B N5:46+E"19) M55"0F6E^:J:U:'?)VX"V T#>>%5-O%6<".,N2+@9I*--T>.D,PR+ MB"ALB5_$-Y+%]8L2S5!.L%%D6;B$DC5 R>K_B@ M-(3QB<)IAL%ZH4IW5P31N?BX$OQ@MR@,O$RG%W'J N9P.H*R9IHB*! MX-A5\%7!=R/_YS??N__YZ>EWY5>P)F#[%^"R 9U,S%>6349;,3RF8B=$PF5. M1>9 (4O:;$P4"KJ2A#)"@XA16/W\ZH@45OKHQ-@#GAC'[K(M2<*?GX&MW)6: M>RMF%Y!W*L?(X^$LS;5UB,L42,JVDSR3+(5D-4C>P'(85TV9&!D_L:AP1FLGS] /H^S(SD)9&)!YG$(HO>5-R%)S_X_"VU/RRMS?A- 2 MO9M@CP>+$.K^'"/^%$M&D]\U,Y$TGRQPPQEJ2C8AH!&6(0<@G9.Z'%4IX+\N M SM%&W>M4&&@+RN$F2U\>+1 \#G\Z!,,$Q;#0E5QRK@><*WUD:+*0F7'4-'P M_*&B+Z\X1(G-&RUE4H,#.2(]>!)D1<=,YM)@*/C%CBWA&H=B2A1I>& Y<:XR MBAT7'Q-R:BF<4[VXH-HYT5O! KVE]*EQ*$AN-G-3D8%/)\!7J"ZZ/A F+ MCV'>!!]L$\W"BUO*%W+?Z/P>Y22I2?;"O078ZH-2.OI+>0;_D4UAW=6S0G\M_FQ M_3O03U.N-5!3^5-@,V1O%I!J!M1%2+-@0IC!MWPJR#G IP@)) Z\Z7 6/K 9 MMY+!PO5L$;TMKIQ+$B0+N@1^3YP!)IQ0RT7O]<6_C_Q[?E-"K.B.HF$?.*!A M7TTWYMX*C^GB>3$C;ROPXY=)%JQQZ)Q="*V\)(0%PA4H^EK)EL:^%0M>2)TI M$ [L._C#7)CARX70Q>?!AVB!'@\Z;\*LY\?_CI>$Z\A]F;'(P7-@^#ND#5&: M$E.5T.=VG(C8C2AU:>H'R0YAP\L;)-N OY!^\><>KF;L1#R9:+'>*;@H+FW0 M\9S@TB?$-P.[DUMJ!'U46" R'3^C3%2AY'CB]-Y0Y((!LKUFL&TX<<;1*O,I M4^<[[("2Z<3Z!0,@-=).,G8AF80ICN0?Y$B1;U-)HQ\,XW$S''.Z?'3R9S*C M&1]@6L@>+H5/T-P>8=C:]2W^;K DX,D6Y_R7P)]SF>+/DB=R&R81(2H& CB2 M (-T4@"_DUQ:=WUJ:HO0.MQ'+G@5 2+V 7J29D?B$G&MT21QN@**FPN2N!(& M[32.09\CP-<+:%&N,RV4HD" :9)EL_B/PE&X3J!Z\//0#%4Q6POP"B8K/-G. M\Z!O,Y>4@<>$GB1K#@!@8P:4E:HJ/"A""X^T"O/0R4-3'>]U06,'*+GHN)CL M7^&(YRQ#BD!&\%$)XQG%+:A=B?C*P,PZ-3\*5 M]W,Z@4JW$Y+M+C;B3Z?DK_IN>HAG<8-@Q3(%/DX=[E^8R?V)]_S4T(6\?2S@P$,QIA+X(RQ9!JF& M]^:\=GCY"_@FW,2A;3E1$D2%Y_FP[Q=87N#Q6(\/4*>X )=_O"(:;N5:)(1W M@ &1G/VEPO-T'LJ6^VXRXVVX/N--)J]=5?):8QSW/QD=%I)ME$HE$$1%]^N; MY\]!';RD4CWQN>:,3!8N7N#6%^&9T+E+Z%#(>A:+8^T53\.SX7.PP& EN"-X MAHE&DXO"C*2WS4!,H1+*.SDCN'"";Z?XSI\LR:&G8Q@Z^O_WJOD,2TX"2VH: MJ^+F65Z%D\G)DVEX2L (] WJ59.'GK+#-'*( .W<$.,N'A[4,?2K$BNM1,$* MH3P7P7Q\AQ^\F)[S[\0=3+VWXNI03=+I+\#%!4@$/!4JC(1^6%W45^&M$G;G M?O"-5"BLD"I \$UDT(2ICXC';:D:)P0EP/!)26$Z> *FG&5^'@UR:E99LD:Z MXM @ 3 ER/GPU5_\I)J?PB17&P1XFP VC@,Z#"%]3J>:W#'R,[O L4"5F^YJ M@AB/=81YDF?\X,)F,]>GIHD)6PMA 5&=#Q!!CX)$P$!7JX M91%R3#+)^(O+2; =87>N2$.D:,R$F:] L;R"A+O(*@_1W(,KDEM5)FE,^Y5' MND-B6#C&B@7*8OBZ%MD,F:O M:?YRHPDUK7G-G<%P]STY1W\U P<=7;2U?(^G@^3S?C"5A$@/W4S^%YWOVO! MDQ>FP;7H0J'YP).ZJ,)USK!J%?-07.1FG$"B#) MK9[4 :3Z: L7-0O90_+'VZ0!B.,17.BFM^+QPFO$-ZR41],+^<_"@QKV6T.C M@TZ4:*0F7BS\JQ; ^:?B]]U!J]/62W]JM[2*WW>&_4IWK%N4UFX-NN4_G7%1 M6DOK#$ZWJ*,T[JRO.\T),6AT>_6156?CH[8T(MRQ\\_&RX:%RTKZ??" SVFZ M6PRV:98V%]%X,/XK7 >.V4=4\CNT+3Q90]HZK]H)01L;LIPRB+<;]GZ@]"_0 M:\^HUU:B0(B_'0E_#T@<:[_TP <\9W.L'9JSO"&'#.P(L ? 6F3?+3:+*]XDQ==*\?OV>-X+-&5* M"9YPIL9@OR4.Y9DZ/1=AMPJ^ZVXZM\/^F]U9KM/5U6ZW7?,L\1(>:G!314G$ MET[$1D?M]8WK).)&V%\'S@ \C-&:1W#PWU;C9.9Y0/'#.Q&10EN#J.& MVNE?-48OT>RX4O]<'[2JVK&7%F6\1:SVFQ=TV M]M3Q'*H+P=(G,4-&AD2J@=8 K6A(]ZFIV.FJ VUP^=BY1,OD9 M*\6-T:IZ_"P#(A5A_"4M+G8\[.\E@R(U ;:KJ<->W=D35^/47"1&VZIA=*X9 MHY=H>ERI^ZSIK;I)K6G4=HM8U2I;-#(H4@/<:3PF-F$1D0\5BX9E]*,:[:I: MY91FZ2J=*MJJZITK0,XE&B"72S3MRB9& TGF6E%SICCS%E.@66PIKZKKJIH" M7KM9@"=HM[,FV$4MTTIMP&U%Y$=S<2Y0..G#/4]V+\S[O$#4=-5A^PJ0TR31 M>/U$TV[MF>K5))*Y3M1H^Z9&-20D= $G8!_-P*/Y"",Q[FGO_L1&*T!*,=5=?WC!]-?YSG!"RQ:I+XQSDS?2Z1:MNJT:U:#BW]I%,5+*F#8=6(>0.1_:"&\15VWRS&;0#YE!O MSS/J1KMEDG2OGG0[:D?O7R'I7K09N0W %QKL&+3V;*%UW:WGFA(_NU"J&E8^ M%KP)JKKZ*-['\9C1['@*Y.&4QZ-%\:JU>N\ N=A^C .T*O71O]ZE78[FW0JR M_87DU+%MEYVM16*KJI57&12[B\FS@J(I_82OA+#TRD;=;1!6J?[5^[47DIUF M9LJ:L-E/ORJ?/1M6@[-.84U6[/)AMYX?*5,^CG<(E7_V..JS*F4SFUJB;#47J)AL>5>NCZ<-^B\8N),]XB5GN-G+9Q]5$/.:SR>&I1 MT]7!-$N6WHH;XUP!J]L)BLAQEO^S"Y41B]1-/C2AUH3=^W4;T,BS08J^U&8O7JPR)R7&4= MXRJ-RF.*I*MTJHP=5=^W>6"3D'.)!LCE$DU[W[;Q32*9:T6-'%5E6I-Q Y31*-UT\T@AV='Q>?:-[ M.:[RT(SV]G6XUM>)':VO]GM7$)6Z1)OC^VD:_348;NJL7@)I'O19N0V %]HM*-Z>7M50%0FMB;T MGVM* .U"J6I0N:OA35#5U8?QY+S*BUG:Y6C>JQTK:-306N8:QPJ>KXKK2@BK MTSJ\-_HU$I:<5]F >94[W"@2]32;MX8;S-XI) MENWL%G,$-F0_ L/5[:_=Y'A\M$URMK&9Y0=$D0_ :"S JV!-9F/6HDP" M-OY?=W]S^FU+-S33L$R]U^T-V:C3L?K,8L/V /ZQ[/_IWSU^I>FK_EAY#R\$ M^@G_\R?SL0R3N[#%$6B.GKC3!#N=MR6?SLS "4% 3R>K?Q7; 9 :\HG M)P1Y@O.8#"7RU__:7H]!\Z/26):F !?_* 71XT<.]!E)O=^B\AR>- M F<=5+1MHZA '[2Z0!$6,;7XJM]J_U!.$:OX5A53F6+*\=A\!2F) M<@ZPCW(!KOL7^/DAO$UY"JR)$\&G&/OY/;/@U;%8J.9O H(-@+A@'6$$OR 9 M<>ISO!#N\BQV3YJ=V0839@2>]EC.?6[#&PO4(JX>M.BD0K+E#T!\,%' MA 'S0FX)X0I&S&-C!_:0UEOAMW]OMX8)W^"SL"H_B'%SR "T.L4,0]]R:+ES M)YHHOW-H*)_\ .E4LD>SV&.7GI-OGG_^ASF=O7WZ,6T_F>,D( HC)0K@(:T' M@A:I(Q7"RSRF&2UC^?>6\G7"TB;9-&;X:$'- M\"2X'%>^1-=B[;3#O=A%TFZS:'>U_=FR>/\[:/EV2ICCP)_"5^U6+U/\2 A^ M^HR"BABTE9$9.D!GO@.F*]&NWNK\(,B5ZX,I( 4IMO"<%0*])#V24?].#*4J M?]=:^C:]D+P;H+BB$M1#./+)1BYA>40*8G@)@/1ZH.*5J(QRUT8S3D/2=X]( MH9V6EI+C^=CK[E%(_0(H$YY(:):S0.^'UG$$FA26QQ.6I5V42$H!]V94N*2J M_ZYG?+W)3S(%D]IL%!'+NCM)%_PT#T"LW<,5^$7LF5.4"?^&UX\=#V06$N&8 ML27Q@;?- O;J^'&H@+"VG0CDH.6X3@3FI=31#2.[U=*%,IN.K2WC) K5C59_ MU5/36\,?%+B8R"$TX6IXI..#TC.!R!?PQ*)9B9>RPB%LN2UI>LNWYC: ;[6= M$'Z$FX%\I^%Z>5A[4HV"LCX== M.L.NA>MEL?#6R)K1&HC(6J_?S6QN&5F[;M&^(;(V;&FK\KH'GM-ND35NC#;- M*3I^<$U+JB9DA.V:V"2-9:6QLTQRHN.\C',>0.MO": -CQ1 VXO0B7IWC!24 M<1=_ULBTN?\@KI5DW"PR+@3;*+Z"2G_02<9%+0?;P!98_GYKQ$UOEX;FL0#@26_@,G M%2-IB;1$$CM'GOHR\G1YDF-CY*FW)O($LJ-YD2<_#C9%GF3LJ6F$5T_LJ>#+ M=,#AO8#8TTTF"FKK$P5QN8[]O^ZVIZX-C#N977A5V87'IL:"9-3Y1,\7LE:? M/--=@%W;B'#O1OY!L37V7="NJ IY1E57HC@S3ND!4OOC>N'X8_E%C[HWU! M G^W\@'%R(],MV+\G"\K%5:4E0\ AB_D/V>,VVISYA79\>+-XN<6_/13\7N]U^KU^Z4_M4&E5/O>Z)2_9-T= MZQ:E@<6E#>6BMB^J#]BK^NYUWW<&W;H U>UW&@:H6A=5%Z0 >X/-V]M2;;IC MG>#&RS2C<%U)B0PWE\Y3)%/06FVN P+&DK.ZCZ";[1T*T*X2$KDSRR(<=J2@ MLU9%]:N?\=+&WWQ&CP7<7-#7H.W9=XO-HISC%/YX*$GD2A=W[R2RN!FZ0JR8\7S8^7 M!;E29MRWK\F^,JI934^2$$@:.VA(SY/U(&U UQ.Y.+FX!BZNUO:J>DLWFBRX MEL__/P7P#N]%>5Z$>.ARZI:K-]"=\H)Z4&I=3>T8ESM/65+;15&;,5 '[3T; M43: VG;J-K4KY34//6\TK=4NA,..BI[ZJ&?KE#QR6U71*U M=71='58>"M,<:KMZI6?+S8W77.P1FV5:VRX2ZG%)T* M.UVU/3S3A&:)G:T:IMO2=U^J@774$J$3/J= SU%1]N&=_:XF> MHPNU?JMWZ[GMNT:V_WFO4\3 M2*1*M!%H6*I*\^O?.2<3A"2TH-("4DY,N&T!27+V/6E/,NQ:409?L,K^)1+;6V5#\?J@]]TS-;M_.? M6_-!Y>^O-X]:+9">K:J9D!UF.IPB$B")^$*(V+;4=F?'*'S=B?C\=D2=V%FR3BRR#BCF&K5G?'2OZZ$_&Y:VA;ZUZ> MAMY3PJN^H8-LE-V*V?<'2W5M\7R!X2V@'3=,<4+^BZ>,7<3N3OU\O:%3[]TM M/7]1I:+['U'W L/S FS+!IF/1DK63IR=$'M\-)5VY:,N=84.8:N&I5[B21VCB;2[(9/_:B]Q?HN MC"9AY"1,<0)7^9*,6"2#K54GTQGM"HI7.KU'1(QI2<34#C&ZUMQBU#-'#4YS M;'?E^8)UQ(RE=JI,#928.19F3%,[OIK99URU]K/IOBPTEN\[J+KIF8N='5+Y M^^O-JBU#[;5W++&JQ>@02<.2AG75KIP&;P@-GWD\R]).4=Y9AP8<*=^D?-LV M7V*I5JOJC+J&R#=)PY=!PYV6:ID[G@E9=QH^6UV? M[DOW[E"?-5E8VE$+5<^1+$[]_#F2I:D=M13T',GR/,FB:D6,) LY$_DT8Z%. M6NAQ.O"95N7Y#R^J], O;4KYS0DE9[=R2JUN6#GU\V=(%::A[7C(46VHX@RQ M8G2.6_=;$UZ]X+C6B\;W7*@OT#Y^X$+Z[1MKKK0=D[FU0<4=H2ZQ8^MZC]G"XOEKO/G6,,@ZJ>&T#-CQ:=-:!%\KL^)JS4&?;S[5(1$H(=:T MYR7&),0:Z55?1HO]A1J$AEDY:/]B@[!)]3N72A;&\8L3SHTL3OW\.9)E]9-L M)%E> %GHDBSJ$U;I[3VNO'$=Z:W01BPU8B0=S7M+HGVB[R+T'Z3.'V?9=%4^H,+A'Z$ MMQ1#K84(<4'R_9G&B3><'E^SF,4&\X E2NSXL+ 7*RX;PHVNXL2%WX=AI#C* M $2TX\$VQ7,850;WVT]=N"5BCRQ(&?P79"4\GX1P+6%1=G,2P4Z= 8K16%/^ MB3=.PFCNY<7;F>^-O8"D;@POG#@8Q_:GN"Q[IEJP!\@]L,8GA@J#V'HQCC7PE65;W_[ M+V<\>7NGTJ<[P12@%,-SWGCB>!&]8S#"?'^,%\*!1[MX\I(1;C:#V[H-9=!< MNK(*K/SSB\"EO0D8Q3G.!GDN #\,GA@Y@,"(D4IS?#\#*:48NJFC52\\FIK)2#F4FM6NQ06 M_"4Z;.'M? ;2 MU&P+@? YE[-/P$[*:Z-E:"T%WNZ#T%"!?1%U7,"\-NRNUIU=FT0>T"#L$^3 MT ?R1:J%>],!W/\8^BGR,XA^DLT>72 MC+V/PC]A6>4#"!G (0D.>E)A\#=X^@=LWF4 &'>9SZNRR0;M+(GL!42V).:? M ,NOC8YFS*@)Q#>.0?@)$5]0NG,$B)4D\T]8FC7_A*9\!Y4*':&+ +@OO@>/.'WPL=)D M]2.%/0X8^@0G\II-U,X3-WCK^DS.-,7101 /@ M8 &&BY^_\B.'PX-])*<'%RSTB#SPVQ3$1X1WP9Z_?*=-"?PSSMX(= /^%O.+V68K+^X M;:1P+3<-+5NS%TV3WEK3!-P6??&)3IEIN& 9@A$7A8^, AM5;,-55E=![O8= M%P1N/YG%+,K,MUV-3+0GC6WLR=4Z8J.%:'6*OB"W]]HO1T/U$&B-PS7S,T@: M::S*($W-A>2B!=K3BW[8' /V6L5+&VW-W$*\GK,0RT65D)4N"L0!KHE"*#-( MP:41>5A;' 4K-:BH] I]]0Y&SD%)%;H>LATU\I0G6EI[0VUN',Q.R\@81"QQ/%\3 X' ?/+ MA4Z9J))*K5;$LJ)L8D&5X93$]>EZK;/X0&D0KCT?@W/9 /=9&G];HL1XUQ*' MM5'DK*:6^G%BYQ%V$,MTC'1/:L^Y96)^OFIFGD/;Y;$I*>8O5\QWBYJ?)UO6 MBWE#7TS/+'5:B+X)_4(%O2Q\WKWPV9*%S_78R[$+GVOCLF^<:%J/;WB1A2>= M]3HIYA**RQO124>WBQIW3AD7##JN=+-XY,K2!1'>@_L #?#C7#APODQ!A/[* M-"K7N5X0IY$#*^5A1-XL*%TGZ3HUGNG SNVLRO18Y:WK MO+*MKFKY5V?PPP\?:B$BU@H$L5&<9Q*Q&(TA=2''&81J0VQ+#5HDH M@B1RT.$!5VKH16/X+]A@0"-"?A@\L.@:C(>Q$CBX*&X;KGA1GJ*:>PT-B%'H_FPV M$%FBRA_:-TWYV]W=/4^.9G?"CF*Q:@8_7!C8Q.E[OI=,::+,HP<8[8NWP.>& MY'S2S#7X#'B6?W &AHPU<1);Y$_)3TVC[&-\Y@ 0@5"4?AICOVR,?NY'X%$ M/S$K0IB_#'# E)$#R %[/NW'B1,@QQ>0G^=\:7!//,+)-_D;Q.2Z#1T^;@@,6Q'#+S!='*VIS7U%O,"LMM,X5&QVJXY M981KA1OT'[/1O[BUP*Q0\2FZ%SNAO[@U+CZTT5]DS&Z0\4H3Q M1<$WRE,8_+3X=*H].-"6Y[0U!B 0)[/2!-HK;@(L>N<&)-\Y*@K-0#=SH8R98 M0=S.UWS@UM@!N^@]]Z^O-OOPW>ZK>NC4G__[/]KQ^__W;W1@S"F_\UBQOCKN)T,O&IAA^((,CH8IC3A3 64+Z$CQXROJBR M)])>XG M52]D#BSH// N@WPF'0X1]-#$R6ID!OBJ&;JXN0$I8[ID"!'W,37-\R0#PX!)+DF^:>^":")(1HP8>[!%##-GD M\FQ4;OX!KC<<@@A (YFV$S$,&X-I3,BEY"Z1"7K2V7[RAS',,)@%5FDCX?S; M]T\3%YEO;9L--/<" @0] M]%;8GX)ID$H6C\' %_++,P+2=$Y$8@J^>+.XK,&EF^7?S9;6,ZW22[IF5/S= MMLI?LNJ)59LR8*F>?FPB$/2\T*#C_R@D.T64NN?B*-T$2(]#;I? +(U1^! ^XR?/2; M+3YRZ1LWG*NT_K;E^VH&LG(:^@[6$,L*)-X'&+1;2'+L LFJYT*MLUA?^/7; MIZLX"7W$)$.8PJ)NK&( ADT2=)$1=3A@9*&A;,TY7ML>U\6-.A$F5.C $P6_ M?-TI6_4CI.V.PUASZME&,%PB'.?G5$KH58/>4K99 G 3 '__]D5":VMHK2MA MEM#;#+W9\5Y5K(R5!URNA,L&T!SOS,KM[-A#'XB^-SB6'BY;-VB^KGJH[/:? MO_&DV5-^M]%1C9:QV[FZ53AIRT-W!2CV3; M(-IMJX:E[YET)=U*NCWT1UMJIV=)NI5TVS"ZO0*!V^Z\D30K:;8Q--LRU%[; MKINPK1Q]&=+_=@ZP'##YLQ;Z7TM&*1ZD4-36NO86.RHIA$/L7EN:45*\TW=B MQFNKKHSM32K(;]4X-2.^7I&NR+GE=/YP13#Q6(&B[8-\ZW$3BVQ M8]I5(S(2,Y)O)':JVGD2+T=*DZA&IW<:W.R:YVQ0*G-EZVQM36Y-8N M:6O'#JN>JH#AR\+$LA=4 :Q1X5M%_TL@V)#HOZGMV"+Q(B5UDF_]:=\Q]_,F M#=/2=K1L)&F<.6FTM1T##)(RSIPR\/!.21HO)8V7&6NU ]3GFT^2BRI:91\J'[303N'8@/'&F[*QXTJP<8S][GI2%P7)KT). MTW)5*T_"V6N*ZH!A =FE7(./IA$\\C &2;A-(URCH[:L>J7]).%*PMW\T99J M&U6':DJZK14*+Y)N6VJ[+6='2;IM&MWB["C3DK.C),TVAV9;NFK;M1.V,D4L MMR:W=K%;N[S :LUJ_SEDEA!U5I59UJ[3#?8!HR;6;4E2/!0I=E]8!RY)49+B MGMP![649&DF)DA+WULWPLH-F)"D>I=?AI6"N-8#KT0EQ"=QN2!-HARZ*F\2! M3\T<1O@CVU+A.[#/W!M.,7"&-R\49\'>?6<2L]OL+V]=+Y[XSO36"V@+]-!; M[I]F4"X9QD4OY)??/GEN,L)-:SIM/'/EQ9O%90TNW2S_;FDMRRR]HFM&Z>\K M5^IJIMFIM-3JWVVK_"55-V68FJFWY*::O*G>VJ6VK,K?NO1Q[+FNS_8MJ95-S$( M2_7L<]Z4U:VF>N2FSG53;;W]$GU?*A=/=?LE-U=^\YY+6RLM@UHK6[NT5M8H MT4@+WGH)O'&PC67W$8V%,(5%73!'V/. @1,\81$BS@&;9_N)RI?5#20;2&4# M:=V@)QM(90/I0:$E&TAKU4"Z$BX;0%.WBMN5C:6G;BG=*HE2-VCNKWYYZ?-K MG1>Q;+75>5FN>"M.:E3YO:3@)E%P5S7L?7?J-9V"+YE\&T2[AJ%VZM= (@E7 M$NZ&C^ZJ;4MV1TNZ;1K=7AFZVNZ:LLU4$FUSB+9KJ5:K7I.0=^DSVWST4BW[ MS.0YG]LV,I[E85*&VC.JSB_:QW%2>VXR/4O$$T"TYU;%FF4WI+S?"7[8ZJM6KUVE> M,M C"?=$J4Q)N))P#V^RJKHA):XDW*81KLQC2KIM(MUB'M.VY;A<2;0-(MJN MK;9;^ZXUE>-R"\^?R0A3N36Y-3DN]]S'Y38O_F^8VH[.0M,'9DG2V'A VZYG MU4O2.'/2:.\Z%E92QIE3!@B-'8.FDC3V9:S5#E G'IO:/"X"JVS' R:;SD6R M!%N68%] V95>>9CY/HJN:L#?DC)J6\@JJ:/^U*%7MJXE95P&94BY/R@/&)0\F>?0ZE686P.>E(7![-7D: MT*CJ:4!FFTX#LG8Y#>A%<#RW0P_D.3GRG)RZ04^>DU,9@/*<''E.3F//R6E: MIFKE>3A[35 =,"@@>Y1K\-$M0]5UNU:A$-E<+PEW\T=;EMJS)>%*PFT:X9IJ MSY1'X$BZ;1K=&KIJ=*M.N):$6RL<7B3A7AF6VK$-.3M*$FUSB+;34BUSQSYZ M.3OJ@M)VBA0[DA0E*=8" MS"_M;Y&4*"EQ3^%K\X7=#)(4C]+K\%(PUQK ]>B$N !N-_1=9XU=*K>3CWR3 M./"IF<,(?V1;*GP']IE[PZG8\R\_]R/TL(N.YJ;GZ"4+95WPS;XSB=EM]I>W MKA=/?&=ZZP6T=7KH+?=K,^R4#/&B%_++;Y\\-QGAQVHZ?7 6 A!O%IFN7VK*> M?^NBR;'GNC[;MZCJ;ID*6\J"S?1>9YMOVA2OVRCHCOS%"Z,41R#W8&T:8\A< M)0F5^RC\DPT2Y4,8X2Y5K*;T4_Q\Y;6N]138DN^%@1(.%3:>^.&4,06P.O8" M!RJ?5\;FE6\/<3J7W$=-I!&$>S."Q3X61EZ M40PJTGM6QKP'!>X?>C' 'YM/;*TD.KF!9C.5$(0!6VUA+MXE%SW0HBNM!4') M+5/KH(I>GL*9:^:?YKE/Z'5]]HC3!QLK358_LB2W]LVOAKZ)84U^BOH"/1?^ M'$4S"?7 KOL1VJ+Y>;JM6FUGM-+^E8WR<*8.O'.KMZ#2?L-+&YVQN#;L@3QC\ !GP*@\Z8,%@OV MWMIZJOWVC\O;-MUVU';^M;?UZD;[BQYXN>3X#F8DFQN?L$7H_AP!L3A%8K-4 M;.\C(G.H;Z4%;[T$WCC81@1^Q&A&F,*B;JPJ['G )HDR 141HXI0G'&8@MNP M_8$1Y]+NO!WQB(DCED$31UJR4;PJY$IGM4C*DI1U&,HZ2+10WK6'D.U,J59O MH-A HG7KG$%?C0EO;-_U$CO#4#8@-:(!R=)5NUVOH=JR%*PMW\T6U#M3N2<"7A-HUP[;;:TVLWTJ2R\;_Y_*Y:-BO*PV*W[88]RQ/) M#-7H]$YP)MF>.Y4;AIO-M34G/G?QLM&S[20N2S_%B:F7C9LFL,ZN@<.FV0Z? M/WU_IWQC2>*S,0L2Y6_.;-A!HVP'\R6VPYZZPNK$9(<\%KB29QGQ1M/L,$I#!2G'SXRQ:%"4+0C M&AJ L&0 8A>&,[N][=E-^D]'"PNUJ@[KE;@Y$L?8[9;DF+IAY80<<^QPPPF@ MFW>)!'6L2;KP7&.STHV6H;;L?52K6U*LI5DVS"R-;6NE+:2;)M'MG;M6NHOI598=B9?=$&=KNFV MK$"M)6ID7W*=L:-K1E532Z+F AA'=B4WS&Z070/5T'',!M4=Y3[); MPR*D"T\Q-BO+:&BM.K822?J5]+LE_5JRH5[2;V/IU]1D.[VDWR;3;ZOJ(.K3 MM2(;+=F+W/!^6KF[/?VQTJ8)G'B!+AK91A&AW"/SSOM8QIJMU,U M?B-S&1,X1D-.5G%-3Y)BJ43DLO=^<]H))VEZV2/75[?!;CGDH M007&B[WA='%[8#H=ZFH.*]1O'> >PLPM*"I7L5L)#P]G;Q]C 9L4AH?:J:%9V^YTZ$4Q^)3>LS(.:63* M_%ZUDM*$,^(M\_)X"S;Q'TXP@&F'EOWD1#\8T,9WYUEY![3A)0-1LJ3@PP[0*^+*(U3H$=%/"K.!]Z!KO8X7Z&)BS:) MK9:K#,Z;Q(%79K\70#^&E;R 0BIV*3D*3/SR+"YK M<.EF^?>6J1F=5NDET-X5?[>ZU59:M2G#U%J]MMQ4O5>G+8 !AMH 0;2';X(E(:*VH&!!^&R"=AC M JRXFC-&YXE;@F^:",DM:Q[_"!SP# %LI1^YF/8RUZ2]3C(:\AQO.\((SH9. M+I4C7/23A:\-9+X&6#;>351PS+A"DLZL:KO2@Y"%0. MT),G?)]9@-*L:T=-5N[[L<*" MF.UDY5_L7 $#;-Q63\[BJ"5R>FJW5]7_D+@Y4NVSKK:-JET#$CE'DFH=M=.N MJHX/.2^E@MG8"*7+"P!&)=M7I0=+IW1:\O*!>UI#(Q%"EQ)"A]EJU2PR=DG OG'8;1KZV MVK7V?4IQTRGXDLFW0;1KZ);:DK)7RMZ&RMY>3[5[^R;?)I:5U.C8XD8>'21/ M+=XQ0R?C4#7%C3RVN,[8,55+/U$<2N*FSIQS["BA/+=8GEO<&!Z350K'PA8E=^Z[DV?3,14:YJWU[K1G3ME3#W+$/ MX?1!;DFXETNX6 *_XYFVDG#K@<.+)%Q#M]5.Y6->)>76"HD72;F]EMK3=VPH M/7B7>K:#W0X7W,8Q.\+SJX^0DUL[^ZU=2EY\?K2T3"U7MR!L[12=XR?YUI]D M:U)%TCA%9Y(DC4:0QBE&&DC2: !I6-HI2I5J0!H7T'BTXD@/.6ZCFNP\Q3FE M-6 021J;2*,E24.2QBJIL>,P4DD:YTX:5F5C_$Q(X^4'/A[WI,9>3VL9=M6# M&DW-[*X_4V_;E7I:V[+E2G*E/:[4K7[:8S//");'VLMC[>6Q]O)8^\LXUGX; MJZJDF-:.U%Z!=^!.WZ[E_?>5U](%I&XX]<,QVJ]UC?&D4SUGA@U_V(.3^NG2%\X:WC/SG3&%5P$7> N 7 +\)L)62&PX-!AA.1 MBW1*''$+G@J+>-_/STYM]J*,(C;\ZZN_;$91Y]4OW\FQ *Y\!R\$HHM_OG%^ M*4/__C/GFX]L)FK\W?MWZH&,F9*N>N=,\,Q/!91^F$:#PF'5N[A5I^"N?S*T M3:8*JF G'BF3*'ST4.[UX;<)X^B,E6$(PC*-E#%8,1&>SDTW1PR $5&+7%RT M8Y["Z =9/P(\ 6,NW)#]DX9. PSQ=&]5B>$5\1#L@07S(,6WA..QE]#ZRM5L M_0G(\X$W@1L0"=DIV,K$F?);<:$4-YS$"=R!CWA D'VPP (6QV_HL1A,,S8* M?2!4^!#8#)H4X.\_C!3 &\ [LE7S!^ 6R> Z9$3LUA;B>U=Y?LQR8)6+#NR M=HGP#?"C?_G"B0% >0>H>@0E @!0#M(4N9ET:4=X,N JFH5M.ODV2:&_;K<* M9BC2\Q8&I(H4.'$B;KF_;IL%(UJ8H$"+L-:4.9$"K_9"5U.^C_!H]@'HE9C1 MN^$>X'^ @.)&H*4#W&AV@XL&17["(1$:R%%QB7]>1H2X:7@,_@Z+T,Y8$!.# MJG 36'&.CYP\',:PXMPK:)T4_X9K++#G19'QQ^ 11$4MR9CP0VC+MKA(PI@$ M>R$)PQ*BLW\E':L%>BWXK672&Q\&TW(D2!\@>2!0FEN!4IF]_LQIF73W!W"> M00_.T_*)2)DVI"S1\C#?XB(M6ZV"+-V-ENUB8&&].,Y$*MXV+PQ7[K!,:/OA M$U@+*+#1FD!;0,CF<@%,-WEQG,(;F AA%#@*;90 (#_@7JOS$#$^;H!;-9GP MOEB[P^3%$RXYK$ ",]L;W(,8-+ZP3D]+\V!!80H$,BNH@*+-XT5W. M>5:#C?G6"'XB*!H, A:^+%M#4WX-HRA\ M(L.8(@HDXE>_$SA Z9.,?^<$CNO!/UW,1D;@/;Z[^^T-L"/L1F@/TU[Z)(2&B[] %X7;$,SFI@!MZ5_:[2^B70'3G@!H6@,QGH M681F<,Z2J50*@'[W'13VW(IACUZ8QNMP@=C^)_/]6/G@1 \AB:?J,DGE"XV= M9V^!C$I"5/V8[5K!@1L) M=!OHY)0Z_P).KI\#^&I6V81GQCE6,!R^0]#30'BCP)W\)4 W<' = M7L>LZ3R6,W?B">0@NP9[G#1B(,[;0<,_-_J';#X[NQU]:0DBS?9/J8ANC MU8X7Q"0+QPZ"(R!O3Y 8!;$?\;<$1;N39(X N0?HQV ?+E'?[PQ@#G):^8IN MC7(%T'49+#-+=R\;IMRT\%E,BP>*I=DZ%_*+J^='/KX+=WH->QZ QP O (M2 MN4N653OP !$=$>IXXGL$!FZ4^$4H%%XX$ZQ(9G%&9XL;N#ACP/'C<$9::.P7 MO#Z$VJE&_S3> H()=D!$L, 3VIL_V.*C%/TE^4!R3@04T($ 5'FQ M AMPN$$*#[[NY,%&(>% .OM8N@+DD,>W<:',>M@'.;> P+@G)-QJTAQ(S@ / M=(S(G!&J1"B7F )#L 2)]%PVSM\T\WL<_,D'E/.HSPP\X0!D(P8Q/P,OAQ'C M<$#.+MXE !\30.B18H5!45XN"V?RBA)@6 =X!Q=>^!!EC$P5,] :+V7[Q-W M>,8<4>KT+;%(']VG(;@1"4_O">D&P&4>J3I\ZE>DT*_D!T7*=\3,-^%:?P'B M#/"ERBR*2C=>??ORX>L;%1] *@2WL6 )JC,#<+; 5S8)^;-W@N*OWGWY^O7N MC3+Q4\J+*LP9<-<,D\!*G\)ZH6""%_*,AH5DA0\M;I;S)KT3##2L0QM&X5C1 M-=/^"7E-USKV3WP!#ASX=)[7QOUOLY1B9&L9N);P)IR RP?<(!!WV=H.]41E M)IZN&?I/=!7VUK-;G9_0P)R@L?/(_.FE&15+XE^(?&> ]AQ(@$SF4^@HAA\T MY0_!*EX\^S47VVAS('>0 9*LCBWT62'NW)\"_V41$V<6AN5!)A!"=\$TLVHQ M/,)U ZSJL@%^*%(%1<4Q-I6PC(+%7M@LQ*WP37D1#B5AB@LB,6+XLB/B719> M+1=>=5877LD:JK.HH:J3..39GG+' L,S#H\GQ2+-%V<1B*] MY^.K(@QQH9@%A]CC[I"P\7B4%KZIGANX4[H*]$*$4G!HPY1R/"'&AP/X\W1 NBLIY2DBCUT9+,^=$T(0%,X\Z[,,7 M\.RTBE>YXYEC>18#[Q6:'3!KA&&T@1!8?885YX"'+7$!MF3,2O>P5-&#RV/2 M;5;/62TG.>\>1Z"6XM*/ I3WT4+$Z.2 MCY2%S?AK ""&+XV4/D("9-%Y"QX..@00P8H[H,8P@H%40 CZIX07Q@O&:8\E1'L3;AC$&_GJ.! MP%GTR#@&[(7BI#0H)"L2YSGK+8DI>X0\D099KA=]FA#_!2X1?.Y8^#X<)X)' M1+U<@:$1#RO?PE&9^GPUGQRUF(XG<<]9! O0"O)T\]02.L&!$TV!==*(:^Y^ M&GL!Z3WT.GE%!2A2\".G2/P ;T#CF PU,NJXC<:E7E$N$W]D\B@KR9A2WJ2P M1GD$_+4!*J%?3.:@/$ZF$TY4_+VDE@MYQH)Z>&VUVX74ND=\C?O!5G0_?,@D M/%]HY#PR;F3RABB,((G/(MQQS4ZA>);,=E30#Q$ID2BW:$4F])'-VC/LRQ:GJ -@/*++N9Y\E:F#P30J-(2T_2P,$)I J0R#$%L%G6! ML%AY:+&0[1Z%3_CC%/3#!!]

^1 1'BYKA?2.J,)_P/(G^W;+]LO:H'895W MA7P54:)[*KSX/JMF6=W05QNFP%QE[L6->&Z&1"NE)@O-\AA7]T.TB4K5=!8I MX\4GA8J>&$U-%($4=Z![[P)D0S?@U0;>"6=I2?+5T5"=9.!&)107V9% M9U_CS+YF(KZ&VS[)*(QSNA2]]CM2E[*!L/9!/8:NEY&/&+!PC=,4;EOEW;W\ M)PS;!,GM-=YT(A+[F+"Q8AVI8Z)L"V_GP&78FFXB,/Z1@E4#1B0O5@4]]P\L M?1#__BV77+%RUP?G20Q]4+YZ\8^S-'>$5AJBC1>*.H$Q;&%*A^QUWL9[8!)1 M98/LE\9QP4-, O=U9JPB4[3+ M*=KN/F9C&+HEAV.<9V)WA6ZJBR)JU4\1(7"CT.>>XGT4#IB+>F>;P1YM%#O% M13OF%L: U3X"#LK%A_/F.. OY8HY2)E=S:3S@M[S[DFAC0HNRZ"(ETF.EUN1 M^Z;2U\#-@YR\=#1+-/6GF9M.VI*Z_ IO^@T4V!M1+!5%'F5)T)_.>CG).9\E MXN,4EN<55J)Z7A2&ROOGK*#URW#H#5B4M];P MZQ_R(G)Q7-GI62V0 N?'!H5ZXZ\T;C0H7726= M4#4D5DT4(+X)3BM@A-^'H*8$HY.HHD&G!.?JMI"AH'T.M9L5P2) B;(\!7 ]A3C4 _;%7#+'/P]?#>3AON$N==7FH M?,=QC'^-TS$F?*FWANI+\#W,S?IHJ%(9F#E/1&$HP!MZ'//.9 )N&JF;*,U* M%_ ;14?QE9>]&UR[=)SRP %%@L/Q. W@V4*+>SD34(-"=>12?L?Q?0SAP?ZQ M.Q\V'E.8 MMAHV)"TRW@=DV>K,DBO%\?$=[1VAW2H#,O@,JR RHOX(QU*_P' MK#4"ST%0=%;;O.!W+#[-8]ZSQAI.U%RB8HHCBW<5BB466@ *@:B28BE8 YMK M,W<&:,LAED=^PM$[<3&UZWL_D/J2[[QR^?M_'HY[;^4CCU*H2#ZF)R M&_4SN7\'N>US6YOAY56QS@;$;0C.WXMZ'IME14@]5!Y!)6-CJ4]?/)E],2I& M'#F74(.T@IH_0)O"+QUH1FE5;FR"[@6=B,*()YOB3)C.U:QBHLOG^2,L@_>!F$#SMPD)9=SROFA57PO2S63V0ZV/KQW*KZB:)QD=: <3^(K M"Z7$?+ %BTAPQ\SQ'3['@]Z"AA+X]S1_+8PFZ/5G$TQ>]&\=%&N.T@.-, M_-RO(;7IC4+>UU=<;%9'S7N@U*Q;Q1.?R-/K6)I"V'=F<4=X'<,Z(&ZASSJK MZ//_.RX4!Q6[BBC.KQL#"&*K2 %LSG@-^ 7*A8].:);,G9^,J'K2 M(W< ( ",N"M/[ M*BO%K053OK&")%*QB 2 48YQ METQ[CAD>^:5Z>\*,& F ;!-2\IWN>J*RS^TP5HH(M8 &)8S*4+@0N#Y0]L

U."IJCP35;4KL*\E9 ^S_\N^ML=>QS M)8'7MNTV('MV\GQ9J,E28-0S0,L'71=;.D*BH0/1.Q:\MI2Q.S/%6SWI(#/! M:VFEZ4NDM:.VI1[J=>/&-Q;+LA#!!@:&&]SA-!J?/N7RAY6FM-59>>NV(I2["/:NL81F;?;I,IE'B2H9%,9$,K1#?4*;';"X/\B5;6' MEV_":;+LHKL%OKXB\'=@.U LOHHFMZ!'9S7T')U= MBY,Z-#:DHB S@A669]S8#"U#V)7F1#'%:SMXAZ')7='Z@[!D%^G7MAO^F4:C MZ4LW^=@\=>/?W_YR\LOBK!,J6"D,@V!*$#)0='*9=N!H"#I;QL3-#OL;+(9- M3SA $+>J(IK:4JSMRQ4HI_E-N<"5W&C9("0@HNPT4!_1A"GFJ8D9\5GCB33H MV]PLQ=F@UG6??DPJ[2R]VF]J23V\3&E:]J-V3\+]ARCJ<2U,$C1L%'JDE!OP MD1NEI'79;>>DW?SDX[#AN@MM58.RF@:7I4%;P%EOIVVART/86Q6DODE_'436 MY[NX;' M;2;:$* :L0G%"9B@-3#IDI/&NQS]@]+@!E.H?P7N(JG:BIN?#070 M-Y>>$Q.2@B0X!\&- ,N( YZ4SBY2R[C=2FTW/WE_9V$5.3>UA%3;BOEP-IS$ MW]QD]O4*H*R"=HZ7]O%M1:6(8 B/(#7G9226,M9MI;5UG_Z(-==96'ULE,^: MSVGL%G7/2J80-=K"V411ID2C(\4#+EEF[SZR4=FM-Q;:*L: M5-4TN*#G-G!V-EJN/^- 1LO]I;Y)?QU$UN>[N*P<90D1)/1BW9C2,[NNS9CR_"+ML MH"*49LXS8$;@2O%+,$H[2)YX050YO-E6>KSS40.I/85O46^*E7XK#XU64,]MH#C^/@ MO+\,5Q6I.RMRP:=M8.R2A=E&I?5?T[O/SP["OZF^#I*KN.W>A!.H25J1#"ZJ M,@HW9;!:>OS#.>*\C3)L-0GFT K<<'S6U]\N JNLMSNK\SLI/8FQHRJWP,OG%?K@ )1E"1 M0P9=:NR%2 F<-V6P%_)3"&V8J_':77OH(U3>O6760ZKY'VXR+(=XZ>\X'U^O MJ&=:2I"TK91)',_Q4/(QG!J?*16B=D?5FQB.P\*I(N%5C9N:&E^8Z-L@ZJGZ M9!7-8>I-NFGI%I5W$''/K_LR/Y.D="X&B*(TQB&9X.D1#(I,FQ <%2G6;A6T M+Z7?43W2M\YWD6P/NG[JIBV:I96@)/-!C#;$,E"NI Y\%N"0< MI,1RBCHE?[.1PRUUX*N?_V@U6$MFM2.%K\9A/EC&C6ZB.XG_NIAW/5W2+>O M2V]3E"FJ[9BP[//1Q*[POZ>ZI5'SA)SQM)I/FCW(? MQ7W"G\R^#@23UG"%VTV.JMQB#NCPZ]*0B"61T 5)-^_T]%+]N0G? ZDJZZWS M7Q6]]-#:YWH_H\+X <<'6\$)4%/JWV(JL7?O(%MADA.6)%K;MEM%<4Q\Z"CC MVN?'VXLBB-/\?.+^B,T?X^E >QNV\JO\=W@CH&3O2C@8JEXTN R\E)SYKI;(HVXA#=D.'_ICC02AA* M$4BB"5T-&05XP1Q0S_!_@BM1_?+6)BS'1(@J\NZC&N_27EQ6QKQ-L[8Q5?/B MZ:L/ST_>E;;X"Z]B0)5UBEJT1=I:4ID26,\X9!>%((SA_K:=F[_SHX^!#'L0 M>L7ZDUO0SD%^:):L?O'E4QJWX4=$/<_^#C@>@2Y;#BJ4;C;$)'#!)_ ,?4]# M55=-,!-T[[J"/H',MHZ1SQ$'2ZR",( MIQ)S;KMCY>YG'8WN*XMU3?"G6Q)H">R_+MP$-ZCI^_3)35RQA-=!U3&2$+T MPPG2$A<.-C /5"HG2QF#U]LQ8*?''@T9^A/V&EY4'NW03LMZ_VF27#P=7\VP MT('+)'&K)4A"VJMB$H\OZH )Y]%4MB*KVEGA;;$= W5ZU<<:XG2/1:998?=2 M"J<7L^G,C6.A^7ES,9X-J-9!.J?0WFD[:] /B@!,<4RR--91:O')^_ =$Q$ MJ2K_-03IW'5VW=+?I2*U,I9O)2=F%,H@" J2>0OH=DLTBTK;9$1T6>_G2SADK=NV(M!KRVT3KN# W%B.(&ERR49&!$V0>YIB2HY'G]GFA7 MGG]4-+BO7-AS@'A%L'02,$;0< A]XP2(>C$>PI]EN#%*37XQG0W/T?:) M3],8GSR;ODNC\N6L:2XF5\Z_MV\^//LP<>.I"P7;M,/HT[WBZSA&]7"RK#22 M]=48UY(^N"_?L(6/ V)!:-QK)&L]W:]N?S7DO*X> M9Y\C6;_5I0['\]'(RTIT*5 $RG'@(:&5'Z0!DUO1T)*8H 1/CJT+>6]\^*&N MUU12VU'JY$FQ7,B MD$+B2%J'CCA/ 2A- ?>N0(S>KD7W'K5Y6SN./2AS%Y%5;\IQ\?%B.D/IR^6 M ,:MU#E"Y"5-8RT#9T0&'5S*3%DJMNR9?_.3]]QRHX*HFUIRJGW-Y7WZ-&M1 M7,%#3:!>*@&L],@27" G:6F/)5@@209BV783R]9\^.-675=IU7[E?ITTT^EO MDP;WCCA]B4M_F_YXXR:_I]FT6 &M4WS%"QEPHRG56D'6I5V_+R,[I-9@E5>> M/]A@?IV<>\"[^7"0DX3!#6OV+K OXYG)^/XMAF'^1<#S135 M#,U+%G7 5X%ZL"9)T$IXFIFWFM4NHKP3U#&PI1\-5+_=<"M[%R&.MVDV8#9E M[QP%R3GZ#R%H,'@\(8^5UR)P@3+8+K6]Y1./@0/]B7CC%8EJ <;W9VZ2SIH1 M?OCTQ;\ORB29^T<#-W]8Q]#=EB@KQ=F>C=QT>IK?SYKP^R4SO+8\,\/1ET;_ M6@0JP2:KP1%&7,ZXTX?:TYS7 NEZ5BQCG(O/??JU?N_3I8A+.W#2A M4?1QXLY;IU9(+YGF' (MXR"IQFVS#.YEDCE! Z%*U.A2M!G!H0)PU?3;5)=S MY9YBZU$M_*MM<%7L\G<;EOVW_:NEKSLIT$'8^R0#M]J0+#0ZQ-R#2#&#\8J! ML9%0XIGU/C]*$MS2.G#?'-A%QK5]B/7 EETKG2 T1@4FEYM!S)AR[U>"D8&3 M8&/2?+NV]+<]9;\-ZNHIHNE#BCU$$7YS7]OL^&E^/OP\C&A*3TO.O!FWA]Q M!4JUM Z42.C $EON9S"#5I%#BM,<0ZA=KW@[H@/,W*QN*5:4>0^,N +E&[S? MTJ0E\3,W/6M+9HCQP23# !WG,K.!XKM B]_,N3X?@CHAPVL04Z'62B2T%M@LPT[FLY)=S2O(,8),_:EPM> MM7>.NU$= S\JR[Z'CARW(?R'&UVD07A.:\_CD8G;63,HM] _-TRL&5!S$ MJ*T+"@D><><3E!.PO.3EN%.>,.IC]7LW=9 ?(+TUXD;SU)TX_C/-/QXAG\]^9PF[F-J?U!RTR_= M<-*^?UT#[?M#6"-Z?R!Y5DH)K%_"R612NIBW%]&^7O[*PJ9O%W#YFAE6VA\J M"Y:ITATSH9M7IK?@2T9*;0'/-PL1N^]3G5%73#;^AZ+CQ\)?'H*A <\98TJ= MC5:D#)R+Z'0XFZDN'>=JUZ,]'M[>,6WA@=-V%]7V0-=W:3J;# -Z"JU?L4BM M&)&]+PTNHZ9XFAB?P1*B *VU0/;O]!]>QTUM!?61^TJ3 MW$S.W3BD>;!B6?6M>";&>B E*"$\]> IEZ7W+1&.<^]T[5N5&Z#\8$X5)?4Q M*['=ARG)(;#(@!)B05A=,C"2 \O:,V))<+G&O+V#3R\]K(5_?YE73&[!]3KMU$;/=)02LM,*S0>+BV'1 K'&1\:LD7RK88N/8]KI3F+? M..UT%YGU.NU46$XRM1*4=W@0*&+ >AT 3^ZLF>6$J=3#0"T\07>Y&A M7^ $<#3XI.&44EW;<=O7VAZ@1=]S@N ADJ8'9W)?Z[PS)8J[1%!46P=6HF$M MG, MOO34UIYX&E*YSN8>Z=MSY^)_O%Z/@G8/Z7!J__A'FLZ^54K1@32,$!4C M<*H([B7&@XGHKRJ=523&1%6][V9-_#_>@GTIOV* 8=[3PDT^IMFRA&HE]C6P MBG-MF0/B60#!70#C.7IRJDS12UEP<\/EV=0VY_8'?3<,JB[UC463/9>JG<38 M?JH;O1JW\-N^*+7+S6Y]2B\E8]NOZ^&4?64EO*9" V<435&;.7BM(U#BD\Q> M170%'\KQ\?KAE7W%8C<0C2]N\OBZZ1*D*D.%M,W1R1B3J5\U]QV6?>W"TO[* MOG91]L,L^TJ:)6++#*.<<076&[ :'4_K=531.R'#C[*O>ARXM>QK%UT\EK*9 M;=;TH^QKI[*OG6BRC_J9^^CXL?"7Y,!Y)!Z"SPJ$%!R<\QXRKP='VUU4N[>RK\"$,I8*X,:7&_69@$.7'6B43FH!\J9G9Z*[ M0GJ@R8OS3Z/F:TKOT^3S8\' +UT42CM\3N/UKY+!.[K80NL[@^6HW98J-Z9XR K_>Y>GT= J/YS9T\OIBC,Z?3]/!#\W,W-OIU,^TR+JWK(SMFU:JNN%:*;8[E7?K43.9/_9;9N^0Z]=&KS!-( M3E09:\3!\*B "&&M"]RB"UE[)]H"5\4TV>:GX:LX_^'BT@2ST>%+!$F7^S,N MV[;I('AI([^(MP/25F;H*Y# II8J*NDF!SE+N7?6&N.AH#$"BT6C;Y0S."P79*!6]:+.V MCT_E=V1C]J7Q781;?=+;))P-9RG,+B9HQD_<.6YT"W3+*T2*1Y*4AY1YN;5- M$JXSX-$:K7+"4:T^! M\X@.FRMM)1+WP"TQ1$=IS$T[,MC QH@] $5G)E QK"@;/=-;KV6<>AV^YBK%T2_KH4)[\/Z*F7< O^=\D\ MSD0NK11<*%/K=3;@K-+@J$W*NE(0L%TI^(8'/%I]UA!8#ZUOGS43]!O*;-AQ M;"-HRY. 1!\(!\H@Y3SN(+6[C6R \A@U7E.Z&[O,WN^^ M\[-F/&U&P]@ZB&U4HC43@_","2J 42/F8R0\6@+@E>4N1F+M=A'V.RX^KW_Z ML3O1E>1>N6_(*J(%X[?!5+&)R"8<^^\H4D-'MZJ\@X K]ZS8B,UJ[XDNUXB* M]2]$+JT8L@.E M? $.S[)DM$&S4Z#M*6(B:)4X"R%ESFEVE*?:_2]O!70$/*@G\/XBINM,G=\F M31[.2I[UQ$]G$Q=F Q/0'%64@L^4@. 2_R:D!^:L9=DZJF3U[JB[ #R8=]!C MHJ\W!?6PM[Q+G]/X(I7!]&6*=8'TS^'L[-G%=-:ZK-5JI]K+ M'!ZIZKJ%3Y=.WII1;U9!SQ>VGR.5TYTJ@R5FH-R4F. M5A&G8"/U$((,,D=G5EM4'?&T/;U^53M79LKG2J:Y*'DJ%T[55E7MM;<3!9>$M MTP*B52@Q3@4X7<16? V4F6OFQOSI0*T9J2(S2V]( U8(5,X*,.FM*@ MC*O6R_V83_#[2[7'B0O;P#B^B0L["7]#Q_[[2*['B0N66QY(N4_)F0;AN 2? MD)&19]3IQ(;%('94>4FEI*XK9YIPQ(*40%K%(K[9R M>Q_'Q(5[*^_>,NO;-[D> &HW%VU%IEX32*XD."W:6X;F",;%%(R2/,=>(QFK MD([5(NI#(ST4F9863C=$L+#VMP'64WQC(Z@'$.'HJL*F3_GWL*-L!F@33=8S M [B+W7KCQEL,,X+(]/39QE MDC)PJ605&(O@J>*@B.$\,N&MW&JVUKW:YUR#LO^ 225E;6Q?[":4+ \*FV32[KZ[/9;X!R[EU%+$Q5O--T! M;3GI>0MP/7D9MP([C*=138W;T:.##GHX46X':1WQ!GQV'XL8OH>^!%V2)/YYW'EK>KC34L! -)A(RF3_+@'0L0 M-,V)^\B-KSU 8P7$_FV+BDI:,3*[2+B/CMMIA#_Z^&L:H^ QT25_C33 M>S3\K%SSGPZ4B801+<&9A)AR1+\I: 8Z\.BR\4KDVH;I.AP'+NOHHSBTL[A[ MN02ST>PN7 V+O],!GH[H@?$ BFM>7"D\/DF.0%6(4LB<9;^TN 7;L5.EEEIJ MUWK= O)D/+YPH](+NGSUWGW&WY@."'$AZZB!$MN>F@R\9QRX) KWNTC5S=M3 M&^K =GWR$3&D?\GO^>++BJ2Z] ;>\I-K7GG9$O\^[[MDG3,1699#I S<15?' MZR2@U,9H:1FSO'8OP0=WWT703+WED%B9.>QBV1?12L>5&W3[DC/AQWV7W=G2 MZ;[+#BIY*/==;F]0&3.1Z!E00*^@[854KL.7V_&912Z9BL)6GW#TL#OZ5F;! M3IU\=]%&[^U4 3,N%4>Y]+O*!EWR[*V3E,N;O;B/M7GH M?91?4[H]U&/<59 HG'%6.@JTM$I%3XBC66H#$!5TH%91U^\-U4=:_=W!HJ^I MD1X(L[E<:1M@/ZJ_=U;AUE6^]Y'_7JN_M?%>>8?8B"@15X_;)Q<4,E.!T,"\ MOFD*/C9B=*S^[H<7NXA]C]7?(I$H&)? K? @HK/@A$!L+&;'O$D^UJ[.>035 MWSLI:\OJ[UTDO=_J;Z*$$CZ'ZNPL)JLAZ'][&=*"321F9 M!SFC$R080?]'H"N,YT%O&NRR]8IK[ MZL=5SFUO1+K/A+85T?O4;N2H42%,*@V2?&G\X#Q/GC);NX+QH26TF<^2!B/0 MMV8"! \)O H<0L#C+"B;E$]DXLV"FAO8LV>L]J;@/F>TUH[Z2H6].;]Y'R'FH9 M#)5QG<1[OX3VFB!,XWN&"@B)9ZG M0: '+100STF9S4OYS:KOQYK0WDD/NR6T=Q'B 1+:A%!DJW-@51GX(9('$[0 M3JCV3F8MG-M=QP\RH5U'R=W%N,>$MLO!RR0)Y-(H33B>P%B=H/304U0C_[;K M,/?X$]KW47Y-Z?8=8EKX00/!I4,H)F )RRB3Q+*5%Z>4^SW L"#OL-7 MC0+W$7C>3.$Q0EV$O]U,9V5%0RX2=%DCQN7*?QEY<*SR (< MSR'YD#+-O:8EM@%YA 3J5U$]-,-<>_YED6S(GD.PMDPP,!(WOTB A=*^WJ=D ML]Z;N5$M8?/^PD_3OR_*%,S/Y27OD*S9]%$=$S5;(:R4I+GQK$OZ"T>%866R MGBQ-UB(>>J;8U$($KY14(JO:10V;L'2.>5W_W'EPERB;DC$!B(SXCB<9P">! M3EW(5 8=I'>UT_7K<.PKO5)%SROQKJZ"?3"YDQL+P7_6!@-ITD(%I< 1*E$X M&<^ Q#*8A#Z E=+DZCO@!B@'RY=T5O$=G+F/J/N(BZ_"6@07M@'65WID$Z@# MI4IJJ.YN.G20^WZ)04T9/VM+OX52'<\C6"9P^PR*&1N(CZ&V#[9G0MR52-DO M'W80=_\\6$8)60Y46PLF!XUG)K?H)+@$7G/B,]$RL.HW0M".XRU4$656]"CNQYZ."WN!FJS8DGQ M7 J7>4DN"#"1>%"*>9)"#+QZL_ #$>4.*^(P/-E%_+6+,_[^SU?HQ4Y"\_KU MLV4A@2RF4>3 G64@:"C76E*$I%,L%?2.WQPXM2%3O_K9^S<-*DN_J2>Z'HV# M9\VY7UQ4>=8@\_'3VR_:L&].DTF*=& (QS/0: BL5,(7.EMI' 1K@J,I!N9J M5SOO@N_@5F2=L%1O*JE]FZ"5WC2%7SXVGY\@[9^<_.$FL;U+,QY]O3LB?8T< M5S]GSHL0+^EP_9-W"E#O@K)65/K,3=)3-RWEN.>EK^X\;3*9E*EU;6KNZ=?+ MWUFDZUI8W["=C&,9X/O6G2\/M\IN6!\0:V1QAJ6%Z/M9$WY_<^WEJYFA67G& M_C>.'AFR-INW2:P]).-^2Y/<3,[+U==V"=->%+GI*4>MRCM$NZI,<>L&O_AV M^<,CN+_^Z?\#4$L#!!0 ( ER1%E+ &GJE.( +:L" 5 87!O9RTR M,#(T,#@S,5]L86(N>&ULU+W[<]PXDB?^^_X5N-F-B^X(89H/\#7[N)!?/;YP M6_[:ZIG;Z+BH %0YDZ)5)-5LK5__1?@HXJEJB*1*)#JFXAQVQ*)S/Q492*1 MR,>__:_O]VOT**HZ+XM__Y/[9^=/2!2LY'EQ]^]_^O7V'8[_]+_^XY_^Z=_^ M!\;_Y]7G#^A-R;;WHMB@UY6@&\'1MWSS%6V^"O3WLOI'_DC1IS7=9&5UC_%_ M-*^]+A^>JOSNZP9YCD?ZQ_K?5G_Q78AL3#A#@$7= M_//?__1ULWGXRT\_??OV[<_?TVK]Y[*Z^\ES'/^G_ND_=8]_/WK^F]\\[29) M\E/SV]VC=7[J0;FL^]/_^>7#%_95W%.<%_6&%DP1J/._U,T//Y2,;AK4)_E" M9Y]0_\+]8UC]"+L>]MT_?Z_YG_[CGQ!JX:C*M?@L,J3^^^OG]V=))C^I)WXJ MQ)WZ;#^)*B_YEPVM-A]H*M:2^V:US=.#^/<_U?G]PUKT/_M:B>STLNNJ.EA5 M<9DH+MU0!S#]*,U=F^EA1#S,SP@BX**UE@=+HYS_^Y_DWU;TH;Q;O>V>^U25?,LV?Z=518O-TS5CU9:N M_U[E&U%FV76V$=5GP4JYI3ZM_)BF+DL2'(51(++893$.4R]D;D"=.(A7 MPT]D)0K\ZY>>P8:+RUCXDPXVDU^^2M3EMF+M_BC94KY!R^E_O!&*%;F-U2BK MRGLD'Q75H[A"TE2B4GZ?6D9R4?_;3WNA9L!Z_7+X]=\M$' ],ZCC!O7LH(Z? M*]1S=(6HX@GU3,V,).]5%$#SAY461+=D!]K7RWLGH.2\DNAJ6UE6H5 MK-QE)VY]N7\V7O>GHV_(==4+0RLV\3%T3_S$2NF]/FSPP7=<*;P=J3>EG2]5 M^^E(IO^$RHJ+2IYH3@"P4Y%MC>\H?5B]+HM-124I>99YO:TWY;VHY)ZN3C'* M:[])U_E=\QW\(O^LLUSP]\6G2CSFY;9N]_Y5[/*,9%DF-R]IY0G-$DQ])\.^ M8%F<9FD@'+K:[-R;LVIECR6(HFW.N'\S$< VSUZWMKC=\_=%1KP MA_8,HAV'*"]0SR-JF;S?Q+K3=W_I#&8 MC;&TR- BYM,^@+U!G6%E4Q-;/925- _7!;_9?!75+^(^%=7*ITX89JF+W2B. M,$GB "I 31Q2$]@$IV=!$M.&HH0PW;:8@B MDF8TB00.XLS!A-,,TR!TL)?X?D(=AZ>Q@&TM%P-DL%_LX?F?]/[A7VT"I&O. M+Q8;:J-[B;^(NR9FNOMBH!NY%4I-*^YVO_NM9>?_VC3'HP);L[&GJ2QL.$=% M/;:&XX^;F;AK_E_2LJH/L[XME6=:L'PM/HK-^X))>_NAK.7/7]/ZJW1L'W/I MX+YZ^K56AG;W9;B6GM)COI&'Y>NT;NSUBG,NDMA+,&M_@=F>63YG-?%42S&K=\%$L(,EK%PVH;FC"ACMD&^,K +\E][F_!\M474 M^(P(O>:=^[6]<-QU78N-5.'7VZJ2G\[*S\+83V*"O8@EF$0AQ6E*8LR#-'0< MXB=1ET A)VP5L- 'ZR_7J_+;TV$*RLK ME8?"\PU21OT*=0S.&](Z@\:,,:OG%%\\*'4& IVHT[E7S4S%&U'EC])^/XKZ M'92:21<%D@C$;LX)H3AQ"-$^*Y/2)9 C,0H MM9G-PX#V%5+444,>_:880 T'FONP'G9ZUL(:(C [<1$88".@):0E]1^GM:CB M:XG]7.7U7H(I.Q>Y-"6/TG;T!V>6I80Z,<-9EL68A)' L? 3G/C<\7R'I\S7 MT= ZQ$_*/*^=%4D$W;$V!M)7N+/,G%*P6[,]WY>-/\IU6M^1? M]BIUO-(BZG-6@%Y5SC]@Z"[+DZSZ_]O?MU+UUNK8^UG(E7.V$5S]XKK@AS\8 M/-E>[LB#<26//N*-:/\K_[W>JAS@M]_95^77?Z8;\3;+A/SNI23BJ9/XV/%2 MZ7F'L8<3EH8X8'% /9[%),Y6FUW&UK3#N2C[( 4_D]TVH@\])^@'WO'RH[IR M;2*2*OK?_$7L^0=Z^1#5UQ>O54?MY MF HVQ4>OR_L'6DB7^!5E_UB7=Y_;FI;;\HL\^]8KCU#7I8&/>2@X)F'&<)Q% M KM4Q"&5OFWJ<]#%_LP@ HK+0'AUD-Y?2WX\^6:B7U)!TMBYQ88KD*2#U9#HH=-5^!.Q-J MX6NVV=+U^ND3S?G?ZET"Y*WXOGDEF?Z'KE.AL]8"YDH4=>L>][P@Q0QZK/\\ M2"[6]S:T$)KV.FR# [=?6KB@WQ0WJ&''DDL"D=S(-=$BL)B+ A%WZ*J WH,K M^L>R^"A*X#'AX*6955?2PA_?W@#. 8L%L>S9G^3>2%\.5UI, M,4X*,-2 TP\8>.=O1"HUI]Y4C4NCDB@*6FS>OGI_^^;ZMGQ?R&^GJ#=OORN3 MJ.Z?\O*7O,COM_>KU*<\X(3@+! 9)L2/<$KE/T,:!I[(0B\)/&W'W9B-F36M MHX)4$4.I"NY;EO"FQ'G'%!(M5P"OUAQT#;]_$2AA:JY80GN>KE#/U56')[HM M4<\9ZEA##6]7J.-N$7@!YXE%8#8[:LP*-^PL;R MU0QO7=A7P;=K<9.][4I#/XGJRU=:B5>TSMEUP=_DZZTZ9M%T/7#V,\(<3M($ M)ZGK8!)[ B)R2@/A$1+!B6T-.(%IG5$_;\Z4VB8:3)JNIXP7UO*I, M)M1P"[RE,<1?\^)F?DR!=SD#,(^ANSH!\&\-:\CJB- M/U!W3OKID)T%P6&6:$)F])LB;RFB-R&<46SOW)J+1?DFA!K&^Z8>-4B-44I; MOU[+@\YM^4OQD+_):]:X4=J),6=7F#LMIB&,&LJJ%N@VOQ?J%O67CY_>(\6$ M_,6VTKUGG@!C6O'LX #3/5T(NG.1K8R924G-\F7.+[MY,M-/FU;? MIYLO@FVKME7.(\W7:M5W9:5NK^5YYZ]BS25)NE&//+W>WF_736WPK\6^;:SJ MW+!*LBQ+HB#&KI=DF"0>Q=1A'O9C/THBC\<>T6S1D MM_E@;+84L RAM?8#MOA:N%6!93B/VQK8)@#W@>0AYF_UH&GO?N/\H)GZKKG* M?&HIB:/'^J!+]9Z^Y:QWH+!&OH#.^HLY!0!AA]X!Y#4S-T&M4:9J MSIY:=S417A1&;H2]B*=JJ)>+4S^F..#4#U@015ZF=2L_26GF;;SYXI99WXRJ M)SWISP+ATMN>K8 TVM3^<'[YJ1LEO;!\W06W=P">6F5E#%774D$<-?31@ 'T6+"/\N&I7/&!NF*F8YBE? W$M9F^=DF,R*>O@I65SK4[Q>Y1" M=?(A,U>\F]KT6:C6QNT%V/$,&)60I=J^W.;W\I&;[,M@C%,SH/6-&IW0?,L< MUV4B=K!'I2$A,4E4V,['GNLY&8U=(=P0XK_;96_N6[266=4AJF/WS/BE*]2S MC%J>E:L\Y/H*-7PCQ3A(]V?Z6/7.&2_W8<&,Z\M\3N"CS3QP6CH/669NT4/4 M/, ^/WG-1.6"CEDJ+T*ZDZ*H\T>Q'WV@FGF]6Y??_BKXG?A9,JM^V$]37-.Z MSK.\G4Q^2[^OY!=!. XCF">^+RU\G.(XC#,<1U[B.2%G21R!>VS9X&QFXSZX MDKF3G* ?ULW(DK) ?-?A%N6[W.;Z"FWH=X..758^)#U[_2+0PTQUVQ7L@,?# MF3%=@T;%*FIXO4(_-Q]/]]O=.-<#GJ_0[%K^=YE-N$\ MV>W,*@$SJ]S5?-+OJB^^M/^B8%U@-Q)>*#SI.*=!%JJ>N@2GW,UPX O*?)=D M;@)*NSU+:6:KV>FJ)(P&E,W"X.?1TC-W5C" F2]#\<$&:%(T2P;E/)U%#<2D MN,\5?OH%0[>JNJ-%_M^-.9!+U^4ZYVW::<$_R>]%'PBYR=[EA?3\[5]P4ODNED<'S@N%X$'.C_;9G!F<_%E>W]/ MJZ?FF)7?%8VI52F9C*G("]4VY^3IH/U@N@#_:P!IZK@M:O1OZ]T'] MNV^*^[1*TC!B*A$QI%3E)@0QIB&-<>A33BD1@0^;,*9->6:CNY^KN6ZZT_<= MIY_ [IDFD-KNFGUXP.[;\X;]*EMY#UC#R*YI]7G 3!PZF/#V'#Q-NDL[?# X M3CB P 6,^NY<6/QS?H6938!J9&.M!F@$AW'-MPO M"9H6[5D;(+N50?O8NXK#,I5[6]PUDRN:)GK&$[>UUYOSTFK 0C=RIFW ./,T M;+#LUFZ8=.DN?'D$A./X7@BZ@&%UW.W]G7*7/P!RP4^^-]]WNJWD[JY6#\J^ M/MA._!Z5S+SLZVC%92N^S@ET5.QU]D%KAR854M_Y5*_I0[ZAZX]BLXHC)R64 M,!S1Q,7$"S.<9E3@V&%1Q@0+,NJN"G'7-#F]Z/!TA@.MKV_2?GV/^ !>5/5# M>]J)S8V5-I[? \#8^$!U"6163U0->OMSU?4>OX.)0)*W6<]8$WC,=\@Z1_BE M3UD3@&@8X %6*-$9M9!5O2J%:T MKU"YIXM^D%M/W7#S(W#NZAAT>KNQ+4!@"MIA\:7%HB5\A0:D+0X#G!^E,-TT2.+ZD1?S! =!Z&$2,883UW6PH$'* M B(B04%Z/DEQ@4AF[X679RXVX-?'DS#JZ;Q5<( [\^&=Q=7^TD)ZU3OZ%J]J M=46U=?XYWD6.7"J#C3W_/-U]=;N3W>[R?0KW@@ M"%6#C.+8\3$)DA G7L9QRJGP1$I\/R$&A1Q3=&>V#AT72'U@J.<#?9.,H)X3 MG1CJ1(HZ7WIFM M?N9TZE J@CB3YD.DF+#,QS1* JRFI[&$"/>"HJ,VE#MPE0.7^J'K M>%CZ$4)Z%K&':2 83HG#G"ST@EB AAN?I+)(5*\8G#7:B+]!O<\1/II'B4NE M-@GLM?1F.C","62S'N:(QO*U+>?$/%FG9OBTW3_N7[>RX7VA6R M?-PV8[5\X69)1A,<1(Z#21)*YS]*?>PGPJ>A'R:$:N4W3E*:63E;VDW1Q2%U MU)+74])IO,85U2H*,&4U!D!;:;6%&PG'RS5:G95_V:OJ],J+J*NV@+W*ZK]@ MT+GEFOV^S>M<+?;7)EWZ2>[>O/EW-Q(O"@4+7FN'KF9%7A 'W4,H!T'@!XHT["-J[!],&!Z/(K#],Q!$T 76*L F/6 M-L;LBP)K(J,MYFA7F>E5EFLSHRW10=\9_;N$TZ*>O40X\[CA7"FQEK^]^UD4Y"J* MJ)I?=%/[^F]F(D\1(O)#S-2U@?1($IRJ<:M>3 -''C-8DH)"?B#J,VMSQ\L5 MNFNY:1+5Z $__5A5H)[#,-;3_MF0@]F$'6@_#T [9*4?YCF'M3!"P=;@)A#M M92HF0E#NK#:J8;"> MV=(G#3)2.P;TL[7$!C'5O^NA8T6-?MRG;=$='S"[!8!6STK- QC,)BFLFEYG MGP98_: 807GQX[!X8AHUL,&" V#)/ $(+VJ,X( \-ST&*\QM:'8Y2D[@4)IY M 0[=T%%9H1%.7.ICWV$BH,*)6.C#YI[#F8!HDM'(QTDBI-,3^!DF M3+5%="*!"1<9(]()XJD'LT:C]&8W/$/J2.S)@PM$QT#3,S36@(#9E ,$!G3G M"/QHB6BMLG.,UL+%G!IB']=OZKQD<(/]47S[A5;_$)M:-6%LIA'=5O*TU7:Z M?B4*D>4;5)@UFDYK"Y M"<WG&A^8YP*#ZM\N4Q6F)(>)L%;+VDY+XK] M]/<7*5&OVC#GS^LPJ== :K26MWRGFG,3C M*F5)6)A.G9#3I4#[ASCYJR5M9;S+4$%1_>6U'5LA)^U*9#8_58-F!Y^<;^E:?\L^*?OT?GVIV#"#H2&QO=E&4^(9;=HG%UQLQQX39[A= MCSYGH2/VZ[+>-)V':U$]MMEZ'HUX*H2'LRAV,*&)P'&2,.R& >=>(G]'0'V@ M)NC-K)J'S;*-\Q^G0-,[HEJ$ J:N:KY6Y>%=67^A:?!%,$E(W]6IN^/Y?JR!TDCCD'N9QRC A4M53[CC8 MX:[KDS#,?%=K[X42GCN07&_R^Z8K_CN:5^AO=+T5P)QG7009=2FE/,;<#:3% M]+P84TYC+%PG8KX3A"*-(4F9LR (3\F\5:_,!)F>O9P#")CA5'30GM 5VK&$ ML[+"BBF+N>! <6WE?>N273;'&PC&43XW]'W3)AJC'6 3/Z8)CUS,0D(Q\2,' MITGJ8R8Z'N8B"3 "7,9COV4^&E$1>:#(@*GB,P>]MN5[9HI^4E@ M=*-\EXD+#>WI2VH0U#LOBK5(W@D2"X?OS@MY'+,;>=9,!7_>THH6&R%J%:AJ MXE3[ 7@K$@M*$QICQXG4J&G*Y8XERAP%C"<;OC.S5DI2VWK3U%]MRB;O6!0U[3Q"X&"R U&G M3\.F4L+4[;R 5D>1G1+&+)ULN-!R.60GV#]('#OU>[,=[Q-]4CNH:K!QS5BU MI6MH5?3("O-]CWJB;;NJCNPL!7[9Y<9.3HIV M,'UR^FD#%^GN;O/Z:W'WJ:@+Z7B]+[YL[^_;A>M-<9NNWY75]<,Z7?]GU16U MZ_I1T(7G=K;N[JIFLC1Z_54ESJF1QY_D\\HY^5M_,I+6;'N_;6;!HZZ$$,FC M$KI>K]$G^>U6W^U/K?$BIND"7^[I>MV'=5GXG MHH-=]9-R3V_$EXH,TQQ3:4&;X9A(1OO=R047V]+&Q!GN6J//&7:88%\%WZ[% M37:0EMRD)#>^D$I0KO<%I#0,LB".">;<#^7&)8&DD1/A."6>ZWM1XJ1:8V8, MZ<^LJCTWRA\\X ?8A@((JE[P:T:H8"I^6%6@HF(= ZCAH"L 0E9K>"\$P59; M"R#U91M=F$%SU/K"##8E5'$7<#7R&2>)))SF6 M_G%*NS%U,]26CJF/B7RB9CZ MY"L&Y;PTW:YI]2&O-\V6 .Z\<7:!F?V CBY2A*^@P;3S4D_[ZE8$AFGB4-99 MMFXMN<^NNEQ![Y1@!U6]DP\;.O$JW_T5K=7>O ]##FJT7SWM'^E4O6D( M\F&7PNZ$D8@$2S!O!@SPP,>Q$ 3'$>5^Y+-0!#[(K[^8I;E=?45=^A-UX[8. M;X_V/*K"]N%S'9^H;5FCE2X_U^>E>618]%. V9T6V%>:'\ KTP\ ?L*PAIFM M0\?E#"U[#K$&X-'1Q-[*EZ9-UZI#>M>GCB:^YR4\QAYWY6$EBV,\N9:=R5"QZ4\8-CU MI"]#/#70GB4<2V]'*241(8%%*ZKX07N&KLY#.>OUZV706!Y8"V3B14;5F@%U;DBMX6J7 MIH:<[ZFT#T@&C*1^G##,/<=5Q>,$IU&2X=A-6.*P.!0L-4L,T: ^LPF;Z 96 M4[7MFT>#03AK'LWF0@]FN33:J,T5Q34!P'J6B [M%\H1 6"OY,"*J=NV_;^OLG>TJJ0!\Q:GC";6$GKNZ\"WW>S MA$;838($DXRXTCBE"8Y]05WN9,P/09.2K' UM]_5A$BH.L+42'2L(?650)NO M C&Z9JK:01U3ZJFS!3*AC=UJ)Y6F298!OTC:HJR$V.>^'1#PT! M]%#ETA.1YRIYEJKD&[1 ]%%4]$Z@^V9.5O>$I*26:PC4/P)]/BM?!4T7<.D/ M&.@1#M@;V%?T]N!C'K#8'&K[CUARV=ZJ319ZP_U#F[C9M\+2L]V@3QB-G MTNKBEZ7]R7WC(,MPE?DL2&,GPVD@Y+E8I!&.DX!BXD0B\=R$\"B](.?O.;UE M$_[,,ON.,-(S81>)?%E.GSJ1ZJ5/&Z?SG9/*0[)^RY++ZSSYO> M>C^*8BL^"]7UJ W?]QU\;M)U?M<8BK??'YK*A':0TTWV1?ZTSMIYF,^B,,QS M,Q8$ 78#'F/B!@PG:1#C( @][CA9$%!@GS&K_"T8#QMPBO:LJGV\958U+DGE M#M_PF@O- 6!S?6YZ=N<%/PV8N>H8O4([5L]\'E?[SZ,;4R8_NB''LX;<9L+3 M6AZ"7>X6SF"8!=KCW(=YR)A9\S9:^(ZR?)UOGOH&L(GK>[Y',&<.P21,$DPC MW\?,<5*?,.*("'03<8K(S':U"X'W- W[/YY$1\_P72HSS'J!Q04;GC%Y+%F/ MDR06-0%C0C[7X]%G#961UE_5_]6%\R-=BR;&+SVW7)D"]8MV-LS@!X,G5X'+ MO21*/1RF1&#B.2%./1%CD3IQS!,1L9"M'IIDBR\;6FTT=?<2GB!?^.>2,>V[1+6MTQN1EDZD1O&/B$X(7&*B1.X.$UIAIV8^GY*6!CYF>$% M,82/);-=.KZN4,/9%6IX:S1VQ]T@IV-R<*;5CP-\CSP7R,";CSX7YAR*M;WY MHY9 L'^K#.+BI>Z73: :N6DV6L[,PKW]OI%.B^"?JI)OV>;O5!48;9ZZ9J.K M0)#0CZ4-YQHHNXU:_HNHE\V7"B)S"D MTMI[).$X\3VJO&2!$^ZY6*A6#Q[QPCC+H%ZR;03!;O OPN(+6IC]01_;DHUWS+,TJEKL:F[JJY=3^]$ MVL8L$P)'PE=*+@),$R_$F1,+-_8SGWK9ZE%4::F==W.*#N3;/*2F?Q9KZ2': M4 #' V3"^U MGGZ9R )3J4DQX(-=GO%L:X9+O^RRXUJ>"7,TF>7Y[V'*4%>;U>NRJ,MUSIL[ MMB8A5KCUM5&WZ3_7];::?D%O!%/-!*[I#%W6 N[U^;;?.I7J61M S2 M/,C-*PHP(3'%":$I3DGFNV$:,'D,T]G&X*1GWLI:7E0\\_>.&U3OV$%TSP_Z MVC&D9U0,,!XW+/,B!S,N>]!Z1M">D^'\;?37N4'C)=NJO/#&MWLA\ YX> D0 MM:VT.0ZMI5;O-^;7B7VW,<$&*RYBALTE[4WQ!2L8F./;BA9U)BJY)]\\BNHV MOQ?OBX?MYA>Q^5KRK@E-%F:",=6,SW$%)FGHX23S*8XS)V8J 8%1IFV%=2C. M;'S5L+6[(O]OP9$:NH8VD@?T0ZZX0/<-&YIEE/H0:AA9V\# ;.N >@N*HH\P M:EA +0_3?7@,T0%84]LHF1E1';0LF4V(P*/64FNAY8PD1*X#VPAZT2S(\KYX ME%^)LGK:#ZW>E^PD(O(#/Q589(FTAJX38Q52P:%P$N&G'N>.@%W!C9&;_2:N M)YY#PR>C(.F=5FT)#C-U.ZJ#,?'HMUD*C70$M'08'26UZ!%41^CG!T^M=^#] M#.4Q]JXL1#]=]H7>$EF!CU+30BN%@#PTO@ M&'8RO&@=4[="ZK2H-Y]HSE<\\ETG\3@.TBC&)* ")R*1?_/BA&1^S!F)(#DIH17281IX<5+*? M37'5X6"Q0;"VL+:R8,_2638!=DK#*^ML^$)283C M!)B&7H()Y013&D;8R_R$IH'/,@9J=J)!QV])$0IW( M]3+,:1BH5FD$6O2F=F3RJ)0Q'\JV\U/ M?I9-?C/,,HRBIV<2;&$"/I4WIAVO;1:1BB3#;DK<)(D3 M$:2@MCM ^C/;@H:LP30Q*(IZ!F!&;& VH6>D;=+ZP[!KXH^H86=0V#S'^=P0 M"5NM%8'4E^VX: ;-42-&PV4,FPB5]P^5^"J*.G\4[PM6WHN/8M/$ U_*XP=3$]!2'U,2.)[GDM1-Y?&CW-"UGH49H06R)CN*^M?8ZA7I/PSH M[[I6 ]O*C."E9TLLH0"S&P=$44L5_:!24W]L)AEVD7UYWMALJCS=;IJF$IL2 M?:)VYQMJ2&^KS\L(I66[N$R+?-2C1>,54R]#M"D%33RC"3O5-]M-O:%-9K<: M*^1E42"]BI0S3%P:XSB($RQ\UT]Y* \3KE9QDR:]F;V(_[TM\K)"#ST3J&Z" MBN6> 94.9=92?@I)7<_"&CY03Z+'I*%\U79UK]& N$VO04M*:U[".+6%O0(M MT8^] +W7#%(A?RUJ%:Z02PNE'8>=";MS<>CZ@C"?8I>FJD\)\S!U @_[/$K= M*&(I(:%V)J0&P9GMP(X#U+* GG7 !.3YZ: WKOIS8 +3_2DX3/(?=7 !I#]: MQLKI[%I-Q M&V9#4IC- @JIK8%3DHQD%LE76W=$_F7OA9Q=I4^9ENA+L2(G&=6/H6OO 33%0G+ZK*C@,F,I\' M2>9X6@5O4,(SJV)#&-4-9?@%IA9R>N>*.?" *6QSE;EGX0JUV+1M^\#J'>-*'.UVM:U[D:6/+JZ75WX;>E MZU_HIK%5:N#VL]$BCF!9%D81]I(P5%5;%,SI@9CR6OU[$ HE*KIXSMA4"\-O"[" M^$/3LV)+?1 PRS9$O:=@N M1]U#W\IWFS9,TH=RHS!R<)"JFYL@BZ5)) )G 6,\BOR$QZ#$L8/59W:A&EI( M$0,UI3H-A)Z9,18/9C?T)8.W!3DE@:WN'P=K+]ODXY181[T\3CXT1U;F=<'_ M*M;\MNS5^/7VOIF#^RA^+:I=L?7/:NZ/$Q&7$C_$/.4IZ!_6%H<6X/3U$1BJ'+_%*=X M4^*>5]62M><6#=EM/I>E)D.,XBAV<>(8S[AH7HYZG. M?HY3I'%>X(>6N&%-^@AL^D1Z:88] MU>J3\"S":1:ZV/$3UV%/%F^Q8]^2;U57W_*6.M M[95;-AO8\CB<,F2:^3$MK+<#U/:NETUDFA3^2N3K]CG*AZ7Q9--LR;_#'GHN#U M)U$UF3%J2%E39.UXH3Q8D0"[Q TQ27B,I9F0AZ[$XR)*21(%!#2*5H/HS%9B M1Q<]2&)-NMJVYFHZ3)NV!LQ:TX)13^]M@P/3_Y9ZG[RV8^!*S>%N<]FZ$8B* M#:OYJ]I"VTMDG2:Y=$:K-@@G4EOUW[W85'RBU4WU9:-VS^8FI*>TXDGH)21) M<19[@3Q3<()3E>#NIWZ0>"0CK@N:**A!67J+SVP@GG=YND(#MIH;XF>,&7?)TL1R MW&HL B/,AH 1M-QM[V)(;+3)TJ3X4GVR8(",-,H"+G3I0.3&G#4-8%3QCRCJ MAO*@!TS]ZFG_3%<8V%Y]M=,[N.NGKI-A09@\^D1>C&,_Y#@B:>@(EOKR?V8C MDB_D;&:K-DR':;OHI$T7G2&OPU8Z3?++\,%=NYVVMOZR.&7PL%\QEM@2A]4G-E_+U0K.;+<%Y?IJS+0)F!ONS>"S7CWEQ M=[K A?J49FX@36^:22/L4AS'+)5_.,0+@BRC&:@9RRBUF0WKCG8_>BH#%4OI M :9G[ZS! +-A>P3 ]5%@>Z0EHB4;,TYK4;NA)?9S6Z#W$OQ$>%MQ:4:DWY=7 MC4U127JZ![Y3[\ZLH'MB38JI_FGMI)S3A[%+180IWVU%F_KL@6%'NA*##E1C M8AF=ETXNN-AQ:$RJ8:PM9O9UU7K1@ M&J\2/MH;FXX;=23X03&$\N+'DWV'9YDS;HZ)I?W9@(%%-VUS@)[OY!>L9#(# MBE9W8M./G/HDJJRL[M40P+:]PLH->!2%T@Y13X50TD3Z\=P3.(F8%\21SVB< MZH]_&B6(1 M"S9=L/(U@K MZFC=D0?[5!.@Z?E/]J" 6;4]"@WA*[0CK1+^*[L]V_2$M.3\3!!;U-'1$_RY M4Z/YED%\0G4Q; S&UW(M7_F\*0!CG$Z_/;'%!%G\5F6Q7@.4QG9->( M6EPL-M#?,)08%K,8%7B%J,B'40NQI^\.&>LW9+?U_56\%42\,R- M,XIC-TGEWNE%\CC@9_*(0#+F1L0+8U"?DC-T%LT-RQN2YIT/SV&EMV5:0 "F MD8>97RW-*]12G275ZY18]M.[#JB\5$K7*5%'TKA./FY:.,8JM;^^$>U_WQ?7 MC%5;%3Y0[5)OZ7=1?Z)/S:UZDHC82Z3^2D_8PX2%"4Z3*,-!Y B?1YS[<00M M(-.F/GMXL:.,\K:K[T;1AE:3Z6.II^0SX0-3_)X)]$//QH^JPJSK?MSP@#HF M;%:7@26W5F6F3WGA:C,P),=59_ EX [VV]\W3]??*EY?\_]Z5X"3/L^\/O=BU(KM"[LMP4)>1J\!P"TWZV!>%AVJTA]PSIEQ-B&KG> MY]9>$&KH?$\]:K:9?\@+<9,]N\ZGW_/[[?VKLJK*;^JRGS[(WVR>5I%# M0I8F'HZ$[ZN)1P13U;(SH#1U"1%>Z+L0EQQ"?&9=[LBBM*>+6$<8MJ&#\-3; MT>="":;TB@L5JGZ6D'.%>N1VO*#74\B!MW83""SM[2#2BV[N)J \W]V-UC"X M /PHOOU"JW^(C?076FJW%2UJE=A=%O67[?T]K9Z>-:K+!(M<+F(LW%!@DJK1 M"$'B8QYD7'A9G-!8*Z7/E(&9+"%F2K)#&JY:6:F=Q9KR!#J.((T![2#)>":WGY>L8]K'K;^_S0GHZTF[?-1ZBT53,TP#I MN8(7BPTSI'MR^UM.FXW+1H2QUH3L%(V%&XJ-B'G<'&SL87A91F@Z F,5'&BD%80+^DVQ8RDBHRVV46QF>O7%HC3:@@[C-?HO&?8=WK>G M>C/H3B7_OA9-75;!NR;ES<_/-@A:)53$:>9Q[&;JHE5^!CBFW,$BB9DG@BSB M"2BJ8XNQN;?S<^V]'@Z[@UT=M@<#]D2V]2'I^09G%,,(FXCY/ =7 :$X>(D!'7YZ"^ &<(S1VGVI%% M#5WT6Q,*;DA#J_7/0:5GW6P +-69K+#2^(G!+-5X7Z.S+(%ZQ/"'M6?3SUO M[#ZIK,#ZLV!"'KG2M9KSNTI9XDC<4AQ2XF/"G @G-" X#-W0C>5O$S>&#-X^ M206DL/"1VWM:==/+%.RQG,!%V_VX3%JP+]&00WMZTC/(I(U#U^MU^:TII\CV MPR/5T&VKOL)Y8>UM_"=H++V+GQ?SQ)8\\K#A_JK2U]K$M3?;2IYQ/XDJ+WF; MT-;\\N:AB6:^_2XJEM>"KU(A7-\G&::.+]0,W13'69#*?R8128C\3ZPU0]>< MA;DS3SHZZNZH&ZS=,F">6FH L^:N/2MXP/US63>_T M1B:+'H$Q:+9\!3@#RWH1Q@ =^1?F*\'CL6K0)Y<+L:V*\=YD6Q5 M_R5+-2O7V\W7LE*365;$HUDMZ$)31@&GZJC@7M"<]8RG(LW5SE+ -*+UO2NZTH]3V,7IU[@X= )(Q(+ M/R,>@ZBX'MF9M;T=$JT:5LB'^KP@F'IKPJ>GZ?9!@2G]#H\]!U?M]>H3^JW[ M[RQ#96&"6[('FD07-0TP()Y;">#;AOT?-E]%I4Z2E?@J#Y/2V6C+8E2HZ?EH MM\'0MUW)1#.]Z99^7SE"))Y'*4X2U\&$R+^EF:_F+ 6,L4APP2BH4X0EQF8V M.H-IE7=4>A4_K"5_/ZH9]?=-VEJ3G5D/AB]VLYG^Q7>NT+_\$/\H__22=@J3 M%ZC?;.AW)+ZKD[U /Z1M-JU\2O+P(%1/([$&9O1;^XCUS-Y+?' PPWCS^KVZ MK9V,-A^:9-1BMPS+T-GJJV&+K64[<%@&\ZA7A^WU MS0SXWT5^]W4C^/6CJ.B=Z/L$O&"6YH"#QE;WU7V*<#/+J$7N]1A6!IWM M88);:W*O27;A?O3RJIL2RN-YLJ3[?-&?FV_$15C[M= M$^K8Y6D0ASX6D9K'ZO@)CEV?XX0([G$AW(@1F)]JB;/9_=>&3^4"[1G=.U9M M?.$O]B( D,_D\@# 3#@#S_\-P <<]IU]^K-^-T%>*M/0HMI5 #0=MMO$PL;"9F:N?"C4&R;C6640#IGH0(*R6GVI(:Y3\ M-+;N8FE/&L(-$YYT'C=L$%86=U(][M6%SZUE,4N*,'Z%)&9]5>1Q(IFV0EXH- M4]1&XEN8Q/!.72,BV>K(=8K$LIVW1H0\ZK U]NP%%1%M!^ZZ[<6X\KC'F$A= MG!(GP,17)WU7N#B*O93YD2."*(+4+1V3 *DCO&BI=5?K?6_QNKGYB/ZUJ;R& M=N$[@9#K41X3DN(X23Q,W%B:+"?R<>3'H>?&H8A)O'IH4[\WM-HL@=-S(N+U1$ Z5TK>Y3@?/VX(O M!TY/3#\*W=Y,VL)%SY!?)BG,C+?K7YV)IU@N03DID\T2DT,"RY>0G!3P9(G( MZ2<->B'^LBUREC^H+RA_758/944WXE59\+H;S9O2-!()%=AG/,8D#!),/1[B M.$M=QEW?XTS+N]*B-O>Y.@C2NJ=2B 9Z0Q%*9G&AO M >@S:!,6LZ:"%\(#:RBH*^YH]\#)199K%:@KST%?0.V7#(OKSR9P*3?X%[KI M_O7W?/,U+VX*\9^"5N]H7C51@E40>A'-LA2G0: Z$@4+])SE,Y4_^MFU/454E(@*8W%U@%6@+358^ R9I9M1F % MN*.N!796-3.5?VV;B;X1=7Y7M V,RGN:%_+ F@E"8H&#T/$QH0'#<4!"K.Z? MO,SQHECXD!C;.4(S.X =632@BWYK*0,#;6>1TK->-N2'V24CT<'&9$HN2V;B M+)E%#<"4L,]5>_)YTQ%84A-$F_E3U.)C693]Z,F5QUR1>D&&(\)4)8^;8JFP M"0YYZHB4A6$6@6Z.1VC-K+H]Y;Z>QJ";T!A0>FIK27R8YNXD?]M+/J1K(#CW/7=+7J5CLK8-7CFL:J& M:=#:$.I9 )O P$S ).N->!!I8^M>=%006W=CT^16_:N7%/XHWMSW?<,[]#% M6O[V[F=I4RJZ5JV"^7U>Y"J=5!6)=R9GY6:"^QYWL.]G0CH $<>)YX M\SCPI385)+2MVU@]HLO>T(* .+JUA;W](O4Z*^YGH:,3!B'3C>$:@D0:!#5' N#2*J& MC-9BJ6.T%HZF:HA]'$_5>TSD;(P(U&:A5@X <$D"A3UQ0ZY8C"C.KM*+7] 11%*'M3I^#H:>P%XD(4](#Z2RF6DV*8JV/ MZ?/U%^Y>>D:\XYZEYQXT+\NY[+W-3G+-2*.A/,"HXD%]C=V2FN?<6RREV2V]> G-62OZTUGBS5+3,^\/K->?%)>NCJJ[1K>U>A3 ME9<5^B*JQYR)\5XQVB",*Y E^6%ZI">ZQ;U*0TJC0M)S:RY61#HAU+" =.I1 MLUUJER1W7==B4U\7?##6^!=!5<$PORD^JX2[KJ_.Q[*H^G\V+7P/IY.OG"B+ M.>41YJJ$BR0AQS0*0IQDTJ%,J$BB!+37V6=Q9LOPA7T5?+MN9O_LDUI1QVJC M+K -=88/26];?EGH84;I#-)7:,==WZ3K M_*[):'Y?L$I:";&B?AC2A/F8I;PI<0\P]874T-CGC$0BXBYH+(DNX9F5=D^P M1I1SP=65U>:K4(/:%4/0&<2::.KY,'-@!%/OG@/4L8 Z'J[0GHLK>9CB^>A M%X.AQ3#)K0TQUB2[\%!C&!C'0XZ![\/#(-?K]6XBVFNZ$7=EE>_BTIJQD+$U M9K8"DO1@QMZ>N'X(9!2 Z3B(+=EAVGU.;,OA#QWAC&(@HPLO%@C1$6\8#=%Z MWO@NO#T[TG4WQZP=879PZ][\K!D_VTV?'4$IXX/L->HI(2HYCC)$KD M']RE&8MB7V3 "J-+69I9]X]&4H@L$ZRYMRK*XE'4N_$42)I-%2]LLAGK>JM: MT8ESPY+!-_&7?G!Z+L6R'P?,' UX0_U4Q&XN?NL3DY5'K!M M-1O $H3V4@8N96CIO )+ )Y(/K"ULDGO'?H]O]_>]Y,@KMGOV[QN'.._ENN< MTZ=ZY8@T=@@76#A46MS*:S8P 5N]DF=,\# M^MHQ >D\,XW@N)F; 1>8#>LAV8][&9!'?YT%$D@['JO0&#;DN0PB8$,>;8'' M6_),+[-@4QYMF0[;\NB_9AA+ZBZ/;K*#3L[R'Z)Z%*^>5(?*FTS=K^XO:$#!IZF4$/I4]MD5M79-5?V,UZ(70"-KN M+$D/LP]C@DM38-,(:,IH%,$:6W>Q ):&<,/XE<[CAIW]VCOJ?J11E HJ$M?% M7D ()E'H8^K&$19I$E/*699*;F"=^@X(0+Z=1G6P+3E@L[U##/2V;G.Y@ 'C MALXL8Y5.BV"K#=WAXLNVE3LIV%&;N--/S5^2R,,T(SS%(GQB1S7)RR.,.AZWN!1S(J M,JVBR><++Y6 I6C!,ZX:T<=5^!*!8&JJ)XM1(M60\8MRIYJ%%D^7&K)_*D/J MX/>FG=NJ_+'IXZ"*&-6&K!;M&H+&<4 3UU&^* TP\;B'XSB2&A*I1*B I\1Q M(/OF&+&Y%69'&O6T#=NGCB*FMRW:P@&H9R80&/1IFY;-6I.V$5(+=VB;%OJX M/9O&.P97<_N0TK-^C\]J"P3W,N)'"?8CJO*0@Q@G0!=Q#Z2(XKNQSX6(87#X!"22.;(X2X,IN!K3,[NV,ODBPVSJ@ MK*-7=KIK+7=O!Y3NX/(.^JZ)C12;S;K)@KC)/HIOO]#J'V)3JTX.39.\VXH6 MM33(Z@OK1)[G98QCD22.NK4C..&<2T?($4+$@<-YMBK$G1I^<*MK+;7):WW5 MD_:K?L2$_M=]QX\Z#$N.4,=2VW2D;>VXV7,%L1+Z2.N84[O &;:RTP#K=FZP M(%9U%M ,#:LM\(#&%@S!N+W57VY!DPN6\=#JPE\W:R'PJL@V]37_+X/+QS.O MS^Q5]G7T7=_D>EA0;W(%>0Z$*$,)R.HSF\"&5*C-MBK0W^I!\0'S8?1PU?-8[,%D=K3IR*L:NXX!M.=@, ;5G@,"DMB2NZ%' M?_W?[K"WU4??97OCP/ MI:$R&Z%*+G,2CF-*7,PY)P$+O% X^E/FH=1G]CCV-!%3A0=U2Q40T@3#J1$% MGA,DF!$Y+-=01\6.EZ9.XPH-\&L*-[[,CQ\@,#PGCF;A8=MXPJ+$IGB,QHK! MBRX7,3:5]R!N;+R(8=[\LQG3JJ?MWO!?WZMC94>P:>BV\I(TH7%&L$]=Z>3Y M:883/TAQ1GC"?=?A1%!(#A.4@;DM=$\0T,?6&,O(WU6B[\L3BY1Z M?H8I2V-,>"H]:C^*,1-)X##F!XQJ]>71)SFSD=Z7_Q?B6W<.KU5A1C]*E.XX M ;B&>F!J^-/6(8*9F#TZ9_(!KN=#!^ M6T?)S$6V@1;,+08)/NH+ZZVTG ,, MDNS ZX6]:>;J]FG!?\\W7U]OZTUY+ZJF=F[0V?CI6;(E8]P)><2Q3XB'"749 MCL,TQ92PA+CR%]SQ84."P#S,;$N']XI]@5?+(^[/BF_RFJU+U>X9/&<(CKB> M0ST%F%D;B@3G M8.&Q2<80'0]6,E_*,!MEUYQ,U?J)HFXVPD&'LE=/Q_W+OM&*W[1M!W]N6A2^ M+]H.T7UOP^NVM6'SRS?2'.RZPC_3VT30,,YX@GT_E&=97YYJ8\<)I;F,O-AE M7DH%J+;I1:59T.9^49T?N^:#0TE1(TR-&E95BTEI*';])CLQVE\B)9%OS5ZUO[_F>\";-\8]IT\_.CWDC7)/*?Z4RKQKE GX%7[3:A17G1M]*\T MORSS9@C]$3XW6WE&+RK+LME*?X2/[2CGZ0_!E.FDA+06OV\E1V\?54*66GO% M4\:SV(UQDK@9)B06."8QQ;&7,C>-W21U@%,1CHG,O8_M2**&9F=,@ 7 )]'1 MW!@NE!EHKZ'B&LPN."^/M3D%)T@L/)/@O)#'\P=&GH4I8UUM^CZ676_]1'@> M)V[3MX9C$C@.3B+",'5$+*@;$$ZT,@V.5IY9[3I:>EIV+/:X:ETD#$R?^FZN M]D8&G&5^3'GD2P/%D?_:*\WQ>HMHREDQ>O4X_P \M??M[UMY$E6;7KNCJN[T MS9;Y)L\R40G)J4%I$6S5F16F90;MN$%[=M">'Y/:(R!XXZHW+VXPW81"-D,J ML!D41AG!0%*+)0:;03#,#S9G^ M3M2.X!7J2%K,1!@5R5:^P6DBRV85C IZE#LP_K1!AH":4YX7C>ZK\^WU][Q> M$9=Y0< Y]KU4J#F9(4X#YN+(#ZD?921,F-;)\QR!F35Q0+&-9OVFB$):K9P" M95P5;8@*4\)YI 3\-@ M2WM?\*U<):?KS^)1%%OQJBQX/R]1$.[$U.>8LXABDO$84X?$JH0D"8,H2&)? MR]>Z.XXNL-PVJ2/'P7ZI]8)1Q=MCN5:U&6W^VCO*FER/U]=ONF^>YP8T M#@,'1\R3-HHZJ4J5(/)03(/4X21T/*U4"2UJ,]NI'?D^7;)G &$D>0!59DW MIF&R;((!,UL3.)A8KTE 0*5I]H Q+44S^Z) 2\[TY)PH,9M89,F2,CUYGI60 M:;X$[_7>123>Y36CZ_\4M'I;<'786!$WP[28:))SR<1%&$_3@@F1-E M;L2U8@IC1&8V91U9U-)%BC"2E)MSJ'Y+^+,(C9LO6W+#K):1R*#.\5,R&761 M/[OH8AWEI\0:=I>??!9^C_U9);TT 1U*>$I]+\+""SQ,B,MPFA*!,]=3TQ8\ ME@1:Y9@'J\Z=-J*VCGJ3JZ_<+X*JQ/*V614@PG6(PKAN&ZX0_>'SF[_NGMS=(D0&TM.S$&/]> M&TH ^U9/,@_K0WG(KEG?R6Z-Y?I,'C)]T%?RV:],\P,?'M:YJ-[E!97WZ3K_*[U[8.$)(E#,NPR^8=TJ+CTKCR&$YJ&'LL2/V)T]=!D-DHK5&W& MO_FZ9"%?JN?$M;]?K^A:$4=T@U)QEQ>%.B*4&6H7A&823N#HISR),L%QD$8$ M$Y$)3".?R8,X]]V,1W&0N!V.7LS?)A[ #;BCC#K2 MJ*-]A?;4;>9JZLEI+6]S@MS".9QZPA_G^.@W MQ86ES+))*8W\DO.K+N:I3 HV]%VF'S;S9O;#!=])YE0=9%YLY:[>=7TNB_J5 MR,JJ&T)X2[^+^NWW344E#?E95T_O-^*^ELPQ54%9KM=-6]MV<,G*<7T11-3# ME'AJO&#L8NJ)!&MRI/00[3E'>];[#ZA[ON'^"AURNQN*9,\]60!3 M2Y[-G)PNZA0M /ES?VH)DD:NF#H8B_+Z\:YI J9*]J[O-P!/[.3["SAB3;A# M_K\OFFT;81]6Y]ZKI!:0/W8:#2UW[&(@X-[8Y1A O;%1(4V=L=.++NF+C8KU MS!4;?W:FCA#UN:+9Y@\U/_.ZX)_D%T0%N;J1K#1E,0\2AC/F2A?,IRFFP@DP M"R(>IH$?1"FH >0<3,YL*!K"S7AEPYFWLWPPFN&9%X8;9HX@2-MO3W !%$MU M'3!A\8_53. "D,$] BZA95A\\>7FW6>YZ.N;SY^ON[P=ZI H%HG <>2XF @2 MX)0Z$4[-/BV>T:%I9-G%CDW3H@T/3AI/FQV=WN0UO;NK1'LM=9-U*>(?\D(T M,9-5G#B$!P[!+O7D)NXP@A-/_C-THE#NXBQ+$U!1\Q3!F77SD+RZ0NYK#7Y3 M+*"&!^ I9Q)#O1.+361@>A*. #B:ZDE@X7D^06/2CH"O_!OFID<;0.QYAA1GSYPK**8A5GD9]AWN8=)&GHX]:6!"*/ "<(D3@.> M@D(D*F2;%0NI$K;B[0H5H9I S]>/UNKO[^"$O4-VP"9WN:@"[9@!D M7C!A%J:EBEIVKMI.C_75Z8Z/^V/L%:+91N6YE%4F\LVVLN!66(#'5LS#@(-E M0QKF$!U%+"Y8RB @\4$4\LEW0O1%D#X+!55=65(:<$R2-,'4%0+30% :DI ) MKM7?_.3J,]N@EAQ2] !G\2,(-,(.EP@&LP<#F4P"#4?" 4(,EPAI%ES0^0!A M085S,HR&$XY>6BZ0<([?@Q#"V8?@P8/F6HEMY&%T_?2)YOQO]>ORBU@+MA&\ M*UD =WJ#K#FS13B\HNQX0HHI]%C_N;G!I(4:CMYRUU=IZ,1H$.$*'%0A\FX@^#(4;OFYV*?BD+\=1.:GFW+7A]O7E-J^I) M.C!-]^15[/@AB5P7QZ%JK>HE(8Z#2'X*;NPP0H3P_ 1R IJ@-[-=::AWDU MCPAQ,I_J(H]YU\:*\UPY1W2M=M7WQ6OZD&_HNOOB.'Y"?!*HVKPDPL2A#HY= MEV$F@M1E89($'JB/_RBUN1.;=K0;_P^_+U!''MCN=!0QO>W.&@XPY7L.0;Z# MP*(N@F2TU49NE-:RG>1TQ#YJ)J?UDF&0OQO(=)/U'5@_EAM1?RAI45\7O*U6 M:^\8NTEM@Q&!(8F3A!)5B!)BDK 4)ZG@.(MXXI'$#7VJ-47 B\S6X?AV*H] M=: O? G4F@'^90 $!OH'V/5LJ2J0C0KW-ZPU&38[YI8:"F@!+%MA_PLX63;\ M?SED1]< %I:$._=MTN/]W:=*\$UU7X"J94^^/+=[TF8#Y_=-QIH:>]_XOE!;HA9T6U6@D[*I71L>#TBHL=#D8%&AX1QA\TKGRM!*W%&]'^ M5SHIYZ: KKR8.)XK NP3Q\>$QPRGE+@X=(,X2AT_=%.Z*E16@^"W^MX#@ 6M M+V_2?GF/& %$E[NAMU31A)>F:@.JYQS8QL>T=+0ACG[HV?A136X\-T>XX<9J M92@4 GN5GMJ4EZ[-G@DVDPC!_=T M7G3NX)&X4\,'CU\P4^ NHZN^R=ZHU'!1\/IU>7]?%DTVT"I.J9NEOH=]-TY4 M>1##L1M1S /?<1T_]6,_[CT#/3T>)VC@!\#4>4<4/= V9,?9O1ZNBI M"=23UI(=G""VJ#'4$_RY1=1\R\PLOE[+(\)-UBSU M85IK&HLHZ*^5Q'QQ\V2!I^(]+-^Z+>5$V* MY^M2^D*TV'P4&_6+V_+MJ_>W;ZX_J_2Q;B3MRB'R'.*H,8]QFJH6$013/Z38 M(4&;PI<U[4!MYRVC_WUZN4.=1W",64 MQC$FL1?*@Z<38'GL=&G(0L:%5C&(*0-SIXF);XCNAP,V=<.T@N9R@E'5\\[F MQ IFN!5,PQF*![Q!TS:]3W M*_TDJJ:N[4V^WFX$7Y',]FH(-%W97T055OXVI3 ;FN^_PFP$O8<<'IVQ0(<,/.QZTLK*;9UK%>H(VK/ M0$Q(9-U/>KIUHH8>4*-GV!%#!U[WF!:X"[HHPC026AV_I&?LAQS0(7.QDA#G<#S(GT!ZI.49H9L5H M2:,!;35>DJ*.NOYDS5&PQI7()@1 =]A0>M"031W1C 9MCBZ\V+!-'?&& S>U MGC=SA%4.B&HQI:)X;--T;.FRB1(:>R*4IDOX?HI)E"68LDSZOB2*X]0562PR MB,=[EM+,ZMKD&C4%'@/*AKE7Y]'2\V6M8 #35T/QP;[II&B6G-#S=!;U-B?% M?>Y63K\P9XKVAYRFSC[UX(;,.FO.+/K,& $<=AV1]<_( *2FC]#S@ 0S)$-\%!.J_!-]?H;/#&V5X+(;'=,!9!8[Q<-% M'Q[R#=XVR*_Z]>_-4865'SZ\[CHD1%[LN#'U<2)B M/B7:"53'Z\]L!W[].^HH_O_4O6ESY#B2-OA78/:NO6^VF=## [QF/BFOFIRM M2FDSL[NMMC_(<%$9W2&&FHQ0E?K7+\ C3AYP!,BLG>FJ4J9(^!'A#H?#_7&U M&_[\#E#-TZ.*<=-V("#,AL]DLP%I[!$24)-TG;!V14>F'RBLCFA8DM%"H9[7 MEJL$&N;YI-1GY#'+EA&E$5F64M1EG0T\; ,;^Y"F>4)BP3#+&<R93%40!J^AHF-;/;^)]=L=J4Z+FCWP!+HU5-VQY)>D1U9@<1-PJ!N9D] MS:9\ND.&;H&B'?8_3,KFJO=AF-"R?0^3 E_T/$R_<06R_!?YK+X"W]61HYV% M_D7J+,>J>/R\TW[C+F\HWNZVWS?EZM]2?-N\E8>WQ$-(2!BG:8JEU!F*W(LP M)7Z(?9\G0>![J0Q!@RCF2)[ MP>W=K>YTD$\-J?20^'XD19IAEH0))E0$."7*@!J7,^)@/..ZFE(_1'&])P(;3BBY_0=R[+B MI^?UYE7*KU(/JU82=(,M(,IS))E$]//&X[4&G3:+>Y2V2'5W?;ZH:S?.65?4URP,)$T]ZH8>Y#'U=[>3A3!DP MS@E+.1=" /L 3(C.;+U[%O0NM&<"=5R@OW=\0"%M3/1I>N9PJR7@B>)Z!5F< M'0IIX*E$K- ICH/DN&,9^I?4+ M[K+RRT05#FJ\>D2PNZD?,-A[2D%V;YW6SBG_$..*QN<.?E57KOM#)L/['($\/BB1Y_SV]?#(^W7H(9+__"O7=U8TV'85'?; M[[+\]IT6=\_UO.^_JBA,BD]%T]7[;;.EZX]T5393[CP9!#$-*$X3FBD7ZD4X MI9'$L119E"HW&HO]'2PZD$DQ%[[)[QKN6Y0(]D1R%>%:MG05@F'6NEN4".?CD<;"6^0 M%L_U,,8?^_G,ZO=G%^(/L*\L]4&9[5N+<7-509:0BD-Q5[ZCZ[44[^N,0D.M M<6R4$A7E$AW:B@@3&F8XB^,<)\3W?,I#EH3$8G*'&76+<[[%T([&WS3X1:7< MKLH&%\JJ>&I*G:87%SG+\L2#%6T;TY[Y]-QQ@O1GB"K%2XT"_=RR M-4-U8EYV+$$+NLWU;.9<9M(>S,.<*DZSH?5VO]=;SY(89R3Q<23BF&8BYXP:(>K#2<_L>HXI(]Z1!G1FP?0X[EOFU0[, MM71L'-U<:.#H(VWM6;%I:(.I#=#K-IOZ[-K@G*H1UBMGI8G1-CK8BLMUV%E) M>M)\9[>"]1WPYDE^H[^W"?&W39'F0Y)F>9Z$,4YS3\.&1+J!UX\PS[,P2*(T M2)( #!O21VGV9&1#%VWI[W;W'T,:,K[XO59J\)6O%E=1[.XXT)N6Z'#OD,UE M[YA8[JYY>ZDL?<$[)FK/U>[HXY9-(.J0]T(U%-CG33-#_O9)^X@'D8HXX#3" MTJ/J'$:C%&?,]W 4^X&?9U*$9AA[4X1FCGPZ8LU] ;#38T@W9A;J0F*8B1XH MU@/4&\$;H@Y[.R;$7Z@]!9' MF$2QP)F,"$ZB3&14L"071C 80P1FMLH#N6;XL:U=MMJ VB-<1EL[=#VA>$@& MYT;7+O^#C.U4N&$C.WO.SKANU^O-;[JEX^.F?+_9L6V^6U]&RE\VZW6^*?5- MS$-*29P'089S4D\33ABFOB!8[91QE@B6L1PT#@;,P!YSD.];EOV9'>??I$;Y MEP)1W27X*/5H&\6$;6/J(A^HF3_]XWY,,&=L4L?9R- 5'6FF:SS"5[E%![Z[ M 1VU_S[B?8YFW"55[KS'=Q'F?U#K\)(?S'!'\J)8@](@(593-=>NX3G/* HZ &C'(ER9+" Y\U.U8_NAP"2G JGXE$A&'7DHC3+-,*9%P/<=9YM@/_(P'(DA]!H0\G_D[:=<'(Q_K M;;%8[MMI%H/,K"Q8(-%AY]0U*4.(YWN64,>3OC]QV4QKK1%GO;1P#A9NI;56 MT64GK?U2EH.*-\6FFR+6W/]T(^]8%-)$Z(G$6:@V1Y;JX: ^QY[TXE3X4>[' M(!2?04HS;X%-/>VJIGBC70YPYO"@@LQS'D=_*%JR%]FF5OBSHB+^5WM?KJ1;9_VZ'1L"#(XS2EF'N1 MKIGG4L,54^Q+D04RY23.4DMT'Q/Z,YOW"8[-"1O=5]\!U(^1GLW\P8S: ^8I M7"CN&@@@B/CNT8",J/\H8""(:D8P@D#+V!9A*9M5YW]]S*_>T>>5.B;I(_Y# MF&>IEZN@@5,68XTPAFG$X MD!GF%#J*=4ZR0D_5+J1[U.=N],'BCU6ST.8B##,U9F@90'1/0_ PX&Y6@U/"[,H"WA\ M4'K23*"."ZVK-YH1I;$_H3TO1Z!>#@\58 6X.F68$U[VV %6R,4Y!+Z"G9.Y M.SWMZ%J#!YG*//0(QH%J0]+\EZIE:N2N)LS_: W:T4> M..RA3TUF'O-*T6&N\>XBK?+SJ*Q@]S$*6\I(PEQ3V?KS^R:]M%ZVQUBD=X\5PCL M8#)[*G,OX8=.PH,)ZF[Y2!-?#UCDZI019!*S))8:?#S. MHQU_?R'ZBBKU/RPP_FDZ*Y.H@/$UKVX#TI\,5!>_H-.S/N M9I^K(_IMTK!K+K@8H\C*406/ :5H(I8\X"BF/*$G6D#'V69) P M=HK@S'%M \*X/C!1QWHU)%;+QO_^7VG@)_]5P]AL#>>:&VO3S-9=Z@AF\3^? M*>;#N!+ IFXJF2.#GR2WJ-F;"G]N_,;O65[Z[UBEONS*F7QXT1[E,"A"A"2F ME$584D_%SS%-<<;C$$=1',8LBXC:RD'7^T.4YK[(W]-%#6'@;?V@@LS,V8G8 M,#N^D'BF@1B3HKFZ71^DL^P]^I2X%S?FDR_ ;%9R\?!EMY:^QR+_MBR_E4_% M5GQV8#U$21IHK]$\3<;A">*?;QB/CCINA&A3W'J2X8#X24\\45.8M"(-S.R,UOE ;4=[6DW]PJW?T5_UPP ,[J& MRC0+2=VK"&;)UV@''*3"A'44L1H2731\A2GB/)8%OGT=($ [Z.WHZ/MN5Y8: M^S<(,BYS$N(L"!E61] Y\)I$VA>LF M0P\KT,Q#.%4+S#ETI''9CG@\(GZ#6O+N6]4G)77<73Y,[XKL2GHBU9?E9D\:I O"$,Q" :T)*9E3N0'1C"'\36%/6"?<5$OX'TF'KJQ:";"Z$@TE''*O=3'7AJE:J,6 M&:8T%CCD7D@B7S F0/W==UH^RNJ!9''&_$C@1(:Z."I,,>6!CR.6TC"+ M.(LS$ IG'Y&YT\HG0\&M<*Q[56-FE=<*#,PFG\C:DIMILOF9,'-,+N](_+C) MY&="CDX>/W_6S@S?;9Z>5DWJLFZ<+'1IJ2SXR1CS?<]O'"L%RMC#,\5(?=4^X00=VK!NL8:HVL_?9% AS!"YU M!W835CIPY#]@M!=U+%9J.?U^NN'SW MO7B\5\9@>,TUOLK,_D,1EXJZW@D[!M OM/RGW**:"[T_*MV97WU-Z&3Z&LR= M.F#>P% 3-> C=Y(V,Y?6ZIIL8NG%KLS,1#R^/C-\ VZPGPJQ>EF)'6UN> P- M]/2MF0WR0.P_S8WN3*YI([,7"694!SK.CKW#[%M9R=E2BUE%OPC'5C#PA&4* MF//=TZY.+]=86SU@(VVA N,QC64:X"@/5+2NYKJ=R@SRX'G_5Q[PSQX6CIA>$>+H6ZQ'KH><:R4753/"JK?7HO MV?:;6J(%-? 2*D/=CQKX7)W[(DXP"UBDAZ G<4BE%TO0I,]^,C.[%DT4:ZI( MD[U!FK E[L. FLRL['KA8?96R_T-*C>\Z714+%>MIOU$EFTP'17THJUT_&F8 MF0JY>OA0;%?;UULAU$=>U5BQ=V4-#:>8?^"^$#07"8Z3S,,D#0.<*1O%S$N" M))1,#J4XNO(BQFHK7F:OQ\U="OO^\*N0G]6/UD"2QYZ63,,.CSYO'/9[+^Y+^)C:_%=5#1H(\))' MD>?KJO:,X%0F&4ZDI)D7IS271N5X_F<2;ZF=I#>&GHUUYBX*U%/,0X MQYUWF'@*?M?_H:RO/6X+NGZM5D=0(X:W_D/OSQT6E^6FD)M===J0W;%A7A,P M*/^X2W E.C 8'I?:,>:*B8Q6Q02#BRY65C EUG&!P>2S%MOQA]^WLA!2J)A: M[/CV;U3#=:B 6[=FTG77-5,U9BV%:/:0T]J.8J5F;>:]Y+_*E^C-JJE..6%-FL]V5 P\H ZGLQ+SJ0_F^BTU-T,. MPTXC5ID-(*G%\AUV*CC.@EBN8'='^$W%Q56NK%7#3\OR9<7K6L&/JT+YM!5= M?RITKW3=N:@+":K^7W7C683P:T\8'5&V+/1Q^IF8W6S^*$W#')VEDL%WHW-HP]&MJE/6%KV/G4.IYS>Y ML]"P[F^K(\7/FVV-[?_S1K%V"!M_WI<>1)$,>903[%$B,!%AA*G/"!9!*G.? M);JT"MC>9D1X[E1RR\8-JAFY034?=1JYU7GQ>'1@NJ*6= MJLZF!0ZD!W<=<&9DEVZ RFCI_\-]KZ=TWF[J]1*5:5"2+9J,*;>;8IJ)>IA MAYNB\X_JG.H_^*$*UH@0..<\PR0,"#$9W8^GXK5 M5H<)S^KWWVDET;-NUX>Y%9 NS5S+7!J"N9>."W3$Q@TZ800=<>+.H]B([\BK M@$@OZEELE'+N7:S6L+G94-:TVDJ-G$77'TNJ^\K:865M.WF:1DH'W,,9SS6R M51KB-*0<4R],DC )HCPU\BEFY.8.88[IHY8!]/6UTIX:DB>?5)O)M8-+90#C MD7X]M).\)YOO;10"N1QPJ1C+"X#K% 1,[YO*.Y["GUQEP32]J42GJ7CCMRP\ M73?(1WT+WA_&[,:2>D&042Q#FF+B1Q)GNH2>A,0/9!1[(4N,O5LOB9D]VA%- M]!X^@7A$-08>[&J!85YK/ED!SNEJF>T<4B=J??=XJ0A'P$?3$HZZH/XWEW,[ MHYR?N)KQ)RV;7B$)3A)B)1Q'E,FQ,.++-G& MN!'6D#3D>WK,@/'7]'PDZ=$5QWY6Z\28TNMT:W9LFT-?,%_6/[MU%AA0J+ + MC7/],>"?4&5 Q[M>"?E9E=N'7U;%ZFGWU,;-,:/J?[JW*&M^.KA($9:DO&8E@ M<)?K+6)1@V)T)C/\ +Q:1@-\MRU][^7V=/,V'J8ZLL;,QG!$&IW0KL,WP#C5 M,36,FXQ+#< LR%)XV#Q5 \GLIJJ.+;S<;%4#\4XFK)H\#[?";Z6X+W$;VTDU;AHU@,'L8 ME0G]O:;NJ!3R7!@K2]@OLMCW_YSMXV_]Q>\L84GX=REV:WF7W[[0U5JO^'%3 M?J5KV>*KJ].2+IDNN#HZ-?=7^IE#96Y./<9"+\/2YQR3V/( 2T+3-" D MY#Z%942N96GV3$G'H&Z+V;.(U9<8:R;;L0!U,;5YD08MM M/5K!YT1P&F9GX2X2QCF9]R)KS,:&9R[^HSAQB:'.KH@68O]NMB MW 5=+2',G[@6#G#K=(V0=A=.)\(ZNED:DF+T4NGBI>7NDX;X/;E*&GS(+I:Z M>ZY+?(K'GR6MY)?5X_?M7?Z72MY6E=P^!"QA>9+D..;*!^C%%J,_N*/6VTUL11J:GC38YWZ@]4,P ,>,959Q;-.%,(S+4<=%'3 MO4%?.F4HVJ@F[BX$,9+147PQ3FO1X,%([//(P.PE:^BHKI$4E"[H>W=F6]V# M)ZU?T>UOM-3P&R=-BK!F\T$-3*<4KA4>9I?&0UJU.F"2R-&]8K3 M@Q;5_YS==EH#KU;JDU+Q_/O-CFWSW;HKW7]@)%&2Q *SP,LPB3,?LU3797@R MD=13"_H@//(Q8C,;:-.H[@3ER4AU9KNI*X7 C+87O>$(KZ'#_T%O]-2-LJ+K M/[G;7$U$=K2WCI):=&LU$?I\9S5ZYTJ8Y*Z,OJTBK9KS=12*-(Q\["?K M+,0I43%T'B7*#PC!1 2*H4>IS6SV!TSA?0](1QUT0#73G&%"T)4^@-D^0[GM M<97'Y'$-L=Q+Z\>@+8^)/0B\//J2!5K*]^+Q4_&Q_"M=WU9W^5^K;?'X7D7B M]V7Y:_GA7]O7V]]*4:F_%I^*=R^E^+5LZXA,<5,LUY][5Z_G :-5@3[258D4 M=SM]--8)[;_*JCXOUO6_ZL_WY6I3HE\E+;M:PCI>K>H'54"@UM!9"K4+U@\! M0%9L53\=RR^A=9@3F4_A#@O(7*C.#J'%ENAR6"U7JN4$M>7:M>R"E_>R5#'K MMIZBV0$8?%E5_ZQWX)Q$"?4$P3SQ!"9Y2G"6^CY.(Y_'&4]Y+ -([#)&;/:K M@H[T$?:'5= RJC&SF,65'J 7"A8J ,'#[R6O)\R;1B2G;\V=WOM=EGRE3L3WYEWU/:)-[_CV4@%3 )H.,A0+M/'V M2V"UG9XMM=@FV2_"\=8W\(3=AO:I4-](%1.U69=Z6O1#*K.$!$+B6"2ZK2%- MZOMM'.4L]IB7QU*M )HM>DED[ONK>L+[JB7<)=F@TS5[=&.V95TK,PD)?C.$>>M;/$#[34LX6K>UG6C7E'!7AI M$B11%F">YTP#51/,O$KY1:[I5HJCOL0'+XJ#G-, ZRDGF/! 8AJI79:FA*0Y";T@!1T2(<1G MWG-KN'\I$#^^@]577$P6,E]!*T9 :C7=EN=1%G2[;JBC-QT??]()J8X5U/*" MCIAQN97#5>!LBP>07GCKAROE,B2P6,.VS>O]KH&:@K5X=6_-[0>.VI\ZDM N MK[V T\=6>]E@9MO7W34IGD5CU[DD5S1U[9=:N*'K7(3+9JZ+)RPODW>LDO_: MJ8_BP\L!SBKQTYCP.,!J+Z689%Z*LXC[6(0BEDDJ4PHKQ.RE,O?E\9XFJHD" MKXI[]6*V25XM+!=C))&KR^%>&LM>"H^)>7$9//JP-;J]D)7SQ4-.XX"D3.(@D-K00U]MOTF$I1\'W.=Q&*0I MK(8+R,%2%S*;'%6:/FH:TZ$MH&#%&N[?BZKRVP7NL(O]>/,>2P6 T2^Q3#X_BBH>W"?(>ON%]7?]+57.X;B/YRCA\O;U\,@] M?=5_U5R'UUP<#96I;^2^?:=%ZW5^T@-IJT]%XY3^)G6OF!2WRB+IHZQ_J4L' M=5UA[; >B,A"1B*.N2!,Q3 )P8RILTN:2M]+*8TB AH3\X>1;.;8J*./6@90 MS4%3EWE4M?EF5:!=)="S+%&EY1YN\OB#?U$,?>].5ZAY/&VOJ.+9*WBY&O&F^4I6^,NEB2;-OG<,]XH_V<;K: MDOXP3G.4XXC3&1G./,UQE\+PQCWR?<$]089@5 >.;=\8B3&B<>:5[J M*_*:&W1@!P!= M'K^&XUI[8LKLB-%&4S$ 6B,0 .S$R:LX.(M\"XE++\J=SLGNM\3%E]A \K'UEB9B>I*:.:-&II MWZ"/F\VVV$# 8L=4,.X%'4H/RYW>FR23HFJS[MI%$U_X9J.-1JG, M;*/XU%3URC8IZ??L8?MLPT M-JWO[8BI0'HB3L((>U)&F)#,QZD^;H0T#D44!T'JY:!LW_'JY11[(DW4IA?Y.!,YQS3(19#D*8N]"'@M M!Z$__TT=7;<#HS9[Q,!5P3=/$@FZI5:&::A:D.&Z5Y>58:,]'^B(D1O4L(+> M:&;^-,\5GXT>W+H'0]H_PGW U#+@7H"+7 G-W&Y?+,NRE'L!IC%5VWA&4IS% M,L&Q#!/.&?599+2-#ZP_\T9^AF ,'Y_9HQ&#?-]U8V2O\0M5+JS:) M6V,=]?2AF*?%1C0QG15SHP28RS"2?X;LV+2L5LFQD647RXU-BW:<&C-XVA9+ MB6T/-Y.:Q$,FA$@C3V#?RT),CC0B1(,"NF"P,( 2$,"7L(>#3YI 7:T M7G\JQ.IE)79T7<% &/O>G=F8%$ET1!. ?-0GY_3V=JV(,!LZD\XQ!.&8+'9X M2'T++H>*-"+."3;2V'/6(.5<2E%]5 S]K&%3[_(&KOHAD$% \M#'/L]3==P, M(LQ\FF$O]%GBQ1F1%-3G,DAI[@O7EB[2.D>E?-FL7W2 Q1M4[ISR*10"H.+, M-C0GZH#9Y*DF:J(ZXFS(.H4A'Y?,'0;Y )VE U!'Y]XP:8D8@/;\/8O MS&U]'^X@50T;X^W,2@"@O7RX<[QO73!M68*P67J'NF#\M+S@_)>V< ?/S^N5 M+#^N"CU-5=G)8TF?[MAZ]=B,D&ZQ1[[*[79=GXP?6!R%G&8)SO*$8J*.4)@2 MQC%G">"@0E5->[B5T)6* MS;:SF31FB;G0\():9E#+S0TZ\'.##IRXA&*PU8(SG 8P PN#.-@JZ!+AP7HE M.^_T5UJN=(/>%V6[=1%/%$>1BI!S3'F:8<)R@E/"0BQR+V5Q'N4R,!J6.41@ MYIVY(X:@!FGM1)L0 &GQ'.' 3A(:6G(ORF1>Q#^)E^Q!?3[ M5(C/],D8@/[DI9EM49. PO=UXDR?4JTE@=E2SZ7AS5'Z%8T*:0'B=R;0%1A^ MW4H+0_B="7")X'?^P)73X.[R$8 *[C./QX1A/_.D1L".F4\-3JVM- 0^J+I1D/U3.1&C7P^5& M:?Z8(7,F:A@<-F?TLO7P"O5E6:G@NI[X7'V6VP^_\_5.>_J?-AOQVVJ]?HA2 M3\B8Y)ADH:_^E4E,PRC'//;5(933G'*0[S A.GMTW+'0CF*_0<7(#')[W9D& MQVXU HV2]\JX;96A&$!O]BR@C@>'@V0A(KL;D#%-X.2!33S@MS#@A*."4E"S((HQC)+0Y+G/F%F MV2E#>G,72QPS@#H. *6U!AH;=PK&KAQY M0$>5J8Y@]OAP?>;8HZ$/NF:+Y]_6\I'I7_?2^KU6-1/_M-9RX? L9#(:2' MN8B9\I3JH)K*A.$TC+(T%PF/$A">^GRLSNQD#UA2%3IB_0:US*.:>]2Q?Z/Q MKH[F2'8B("T#^GO-,?!L-^.G;!;L_3$^.]C&L.C'!HXEY]>HHPAT1D87C5OG M5_AYM+L 18L8^2TM_GF7_Z+)2+INXYE4!J'ZA^,\HADF-/(Q)7Z(:19%0@1< M,,\(F6*0PLPN6I/4R:*.*"#:Z]6'0HX^:#FLLAUMU0:R_?B$GS>%#M$3JN2UZE1J1 MH1/J!MT^Z6DB#J>3_FC]NYI^^L/D6':ZZH_^N"ZFM_YPAAP P*D_*/;E-V6C MU;H!\2U$3?" _OC@$QEYJ4RPSY( DTQ(S(*0XHRE)! Z-^T1:W X$PYF#M$; M3&^Z)P?L*X(KU&R#F%5-,,=^"C37\G*#CKBI888:1;I$GA?&_#9)!-QGOLX:=HR,HZS.(NQ M%V<1R:,D%["VC"%",[N GV6AE%%7;EHU9PSJQRQ<<"$US*X! H,W_"EI'.WK M@V06W;ZGA#W?I2>?AV_&'_5]P&UUE]^7Y:_E![7/YQ_^I5;]33F%G\IB*SX5 M]6^JCVOQUVI;/+[;%*)Z7ZH?7DKQ:PGK979#;69[OB]7FQ+]*FF)%(?'TZ(V M>5?MV6YM]6 2*?3F=EN\HJ,WM]_I5K^ZKC<\?:MWJ[O@>+W1_55%6SJ@UM*M MFA[1=BBE1AI3'V^]AGFLX.A#G XGEO_\8)[IC_+1.6Y&=ZMVJU#'$0N+14-N M578<,#E>^8JAHU^DD/))BKOR'5VO3\>=ULFDZD'/#A1Y$&,_3#Q,$AE@*D.) M,^:'@>]Y+$PCFZY[,_)&AGY]JWV=?:AO"E IMZMFKDE5S_:K_[:"#O4S5*Y9 M?.925U<,/^XX4%\SU/!P/@BYX8W,%G>6U0TZ(N9X+F>?'"[G8YZL MO_RN=%]CYHD39^?-Q^*$M]BW;[M#7.$)^\-7*2DLC=LKE%W&]G2IY9*SO2*Q14QL3(S.E$:?N2H:;>JXWDN-L:^,4<"K& S6^M&1JZ[, M5)RA VM64>RPKD"QK1,U.8YX+S4TPS00B ZN#9"'"?R(L'E2W(%@>OH]NQ"[ MSCJ?[,M=.S]/@XPP@GTB56P=4*[":C_"W).,<4)82$!5DT.$9O8(35:]/ D7 MN3K./T+AUP<5918NNQ ?9NF-Y*>!LKO[/%.Y',7!@V06C7VGA#V/=R>?O^K6 M[%E]\-]UG77/G4Z0)AYGA.![&.@^OOQ<;49YCF=:H48-ZWO0W;$U_H&LQ 6+R4%M!U?*[%=V['Q1PMK.QX3 M9K3MN/?%Y=J.Q_@^:3L>?= :_+J&K.^@ZS\5=]VD[7?T>;6EZSV\9NIFN+BW>L&H.PQ87 P!3BI:Q7@P$>"VT+ 6@IO O@ MO_$/_ J0OQZ9S*']CE_^08!^/?P/P_CU/6PUF6[?IPZHL#E[;69_H2>]-7 B M5Q76G,LZ??MPA9@P+V$G(72X79\LMB/N3M9:3[R# M2JM;]=*$1:GGY=A/I*^C@:A.I]_T4_H!TV]&1>Z??C/^ MBD64_:E0QB*K[8??M<^5#94CE,0'FE*>\$3@7*3J^)[[$4YY*G'*:)9((5)* MC4SDW#>^"689ZO*;5.#?[A$ M:<=OOM\\*8-_B/PPHIY(,959C G/XK0(I>-8Q!0$K&+)Q]Q&KXA5__'4,*+(Z5C]B9;_ ME-NZ4[_:\P$[LM@JW>PXLX J@>F&EB&DK0!IJO7-3<>45NI[R;;HP,L-VO.) M\TV)]3ON#D%7*LC1 JZOQ@=>UR=C[NW>;I:=7 +RJ"&FM^53S* M@JN5#Q!AAS)A251DDF<9C@E), G3$"MO1W&>L#@@6:+^R6#7J3 &YK]2/;!3 M&^*>H2WZ^7";"G-I0!V;>;+Y] 9S8(,*TYR<#"QV6HU]G1H%./&T?+&R*NBRT MO?-FH3+'5%+,N<^Q.O.$F$H2XC#QI8P(]WVS,3&#%&8VRX9>,U(8T2VZIRUB M&7R'/U6,^29N+2Y\G]Y+ZKZ?8E 2AUOMZ?J+[Z:]XO5MF/T/PBL"?I&T-EY] M6V=8#7#TRLR6TU(RK"L\%V?ZIOM38XJS5P]SUO_B>N_7C=@\,##IX6BS?:N>=5GD8"O4,/- M3;.#MZU$8W-Q:*X^)?1Q4^9RM=V-3#JRZSJR4H[++B08 \MW)5DIJ+=+R6XE MFZXE/94AEV4IQ=V++#6F_MUN^[S;_B*WWS>BC?YDPO+ %SX.LL!787%&,!6I M.KPRGB MW<#\SA'Y1B_UC 6,&AY0PX15BY21@B ]4ZX59=E$9:(P5YU5$)''6ZV,5EJP M]PHBV6DS%NA-VVM3V5"H/7.S-=_NU/*E]A\/N8@8(7&*/:$<)"$>QY3E"?:R MU*,L\H47Q[#;T3%R,_O%_]D5&KC\N>.AB=L0W=.W;_>>4*-9D.9..3#'N*?; M)!RZMFYTH.WRRM)$1F!G M^=LO=5%M]8W^WCB"^@Q/>9WSB1A+>*AVREP(@DG$-4BP%#C/9<9EZOD),[H3 ML2$^LS'O*V-+R>7JQ13QU$J-!IG&&94#L_2:$;37CF8%*5Y0RPQ2W'1[\Q$_ M,RH/D(6<48EV^4C'RH0E*"VU,9JJA*ZY7-+24MJ3]*7M&E>4.PE=?_VL5VLC M@//$UXA20D/4<1^'(@E\YK%''&A%RN2C"&R"Q;:#$A[$4YQ=3S MMHF'=U)O,>M/A9"__]_R]4%XB4QDX&-?U_:3.(XPI53@0&0\R7F>L]C(6@P1CY3TI OJE4+7\=( Q[4L +NV3-6I.%6.H-R@%MKCU9> M;U#+!?I[S0>:I44[++[,5 9%_LS]'WX1?[G3?&3(M46>[^7%2]7 M=?@.'JTTO=+,F[1B /]T>WN/NDK_(Q[,+^<-%#+N!MSK F;\8VJ884R2N:A6 ME^X&RR]VUVXNZO$5.^ M*_.]EYO/ 7*V["#-#[C<9DI'1N;L2CUP6W:G&:A=F\AL:]2C:R]I MT29"GIFST2M7M$I]WZS5&]6'?^W4F>'S9BO[D",\0G.JCLZ84#WQ0-(09U)Z M.$\\GD>I.E8G ;A#RH3RW!FQ(S[^#VHXL>B",M*A83P_AV: Q_*:[$RP&F#Y M7+8M&=%=OEL)HH[>)B70 A8S47^CI?CV]/C?F]]^*9Y7[XI*E!;34$=7F?M> M2A/7/2&KXO$&*1;0+Y_O/VE,F6JEE ":>CJNC>D-WITB8'8]J8,YYIH:R6HW MT71\Z>5FF1J)>#+%U.P-BRJ?O\GUNOI(R\?-6UK\\_.?;__<-73Y)$W3F.$D M]=4&SO,0TRQ/,:4D2F,O9F'D&Y?S#%&9V89KLJBFBS3A&Z1) ^I/!K4S;K/. M9(:9:[^X-CU_P]\*\P(;%_+;5=( /W98I3/*+;17[ R0&GP!&)7(4[??36#2R'Q7S/(H??]A%M^P] M+>_*>KA" V!P+\NZ0^\A\K,@]$6$A0P#?5_G8WV>QW&6^)F,F.]%H+'F9F1G M-MR![MEG6J(7S4;=/+NK!'J69=-$>U4/[:!RS6S)_L!^VRE%C/?=3KYMYTT^K@I:\)6N)]#3V^LV M/8VW%7J9ODVX'.VUVU*F15H:[<\SW=TNLJ6Z_(Y+M5 M",RP+^M=9P?,!L@[4QWLC\_FFZM@JCK6<09?B)5.NM U\8*7ON^T:1)_:J&Y M\_A[^D@Q\.;E3T??:T *?U(=!EE\EYH )O)'E#!'#M]44KLT_N3JRV7R304] M2>8;OV2WF]^*?^RJ!BC_V^9 3%< ?"K::>1U@,_.T0B_R'_M5M5J*[_*\F7% M90-?V +NZ0?J\\%#Q-,\"S*&?9EI]--48D8CAE7P3G@N:!IF(*3MN1F>NR2@ MQO:L>4/\B#E8&#'[IV86@_R1/@N@C[O_],X :/53P4NI!Z/EFQ*]VU1;=,2B MN]AF*3TZ"HQF9W?1J&HIY9^'9(O1M=L8ODAU9ESQ;9OW::_THH0K;RY]'.=) MCDE".,["P,<\#X*J'?*AOC1O)@&5Y[_;*:T"VS#Z MM><+X64!HYC'(<SW>9J M:6%;Q+F@,W1>CTKDR%GWTUC4PXZ*>>X6QQ^V;>+\^EVNUQT4$@ESDM%(3^-. M?4S\0&":QA2G02)"EH4^RXU"TO[EY[XT;KH::XJV"%$GVA@WONMEA%D=2#R+ MALT^*:[HUCQ9;N%6S3Y1+OLT>Y^R-2,]8+I\WI1U&%+? KW35?KEZ[N-D \T ME#D5$=$#8V-,!(MQ1HC$(@G2D/DQ%Y$1J),AO64,[82%F^;2$M6G@9H1I#F! MVM^X&DT-TIERK"ST*KU8&*Z1M%=8\OCZ"YNVD;"7MF[V&CR_^ZT4ZEC\J1#? M5MNU-$WFGKXUL[76-,Q3M&<23>=C[86!6=>WD@I]GW*6AA"KEY78T34:EQ.4 M>.T7R2K+>K;48BG5?A&.\Z<#3]AV-"F3>NI:EA_BA/L9%2D.:"(Q"9,$IXFG M(LH@C+U,)%D:@&J;3I>?.Q'9$6M;Z*$0/:>J,#O!V0L(,R)SV2P:C/I$<-9% M=++XPJU"?8)=]@/U/F5G3I\*];U5Q[T6I%N/_GSP$Q&EJ0H:(QYDRJ:"%#.1 MJ+,9371% 8FY#\+1[J$QLV%U%-&F0$*1@]E5GT[,C.M*26$6MA>RI7:#WH^) M"C:S$6$]3.]/Y2E/O)6-_H[V]E(?/5MGJ@D9?H<84X MSW-/;60LQ:F@$N>A8'D44@P MFSR16@/ OIV2&FR6$S(Y,LTA*HN:YX2HYR8Z]3C,3*MR^Z ;)S?KE:@/S1Z%I[^?+?: MOMZ6DC9Y3BEY3OP4>S%1FV3D1Y@F7H#]6*C_CV+!1&2:YSQ>>&ZCTVD[30N8 MLSR1?3HY:2L1T)S,A $E&OLXM\HHGBRT6.JPC_WC'&'O[VU&R<-+3Y2 MOEJK-3M\\23.>2#4CI1X.2:>^BG+:(+]P,N#."%I1(PZ,D=HS)U#5$21IHHZ MLI#)I_U:&;<71[("4XP78EI->NV7%S+:]6JY+6>YFG_,P,&MHP*-3VKM?W7! MT:RCO)_.8AU_U':D&F5ZM96L6EC(/>@WRT.>D,#'PJ>Q\BY9C+- "!PQS^-1 MS#(ORV$U1\/$(-\^J\*C#K=T?6 !.FMM4%%FYU(WPL-3=:@H?24[28X5DX/DS3(L<9O MP+F4<1YF)(T3HX!YDM+\Q]::+MH>"".^J:")I6%-F9FP$_G!Q]=&]".:L\PB MF9#,V3R2(3H+SR29$/=R+LG4"W:V^[[M\=8U[GNW4(C/2HSF#P\TB /FA00' M>:AV89(*G :$8(^I<#^2490+4!_'),69;;FC;V._T]HRLV.G.H#9\U[\=Z/B M@PW86"1'ACQ-;U&#-A;_W+#-7X27[WQJ$/B^E>)^LUYQM?'K462?-]M;L7G> M2CC6HO&"LU^UUGR@KFBFXZ8NXZ_'K8F=>ATISE#+FGF)D+G6QHU]-H7!#-Y" M5S,T>X(5856.9$YEL4HEL.#'14SPERU16.BJK'N'/A7/NVWULWR1:[^-3!.B M3MMI$. TTH!KQ!.8)83B*!99+BEG/C&:M&Q :V:O\?_L-DIG__M_^;'W7_?E MBLNJ^7E50Y"O7N1^BN:;FBOD ]&;QM1H%A@X4@[,0VBB#1J3KCC4=&]0JX 9 M(GT#$5U!MXQ06A:^95KD"P@7@U:K@^QY3\,\GZM?06V8A&A-&=A.?:(+,Q.UEA!F ME V9?=+,8<]Q'_^N&H1/UEZVF[=/K(O6V]Z'+.V("W"3&:1@(3)@O<.:)$.>",CV3 MEX8"-"Y[C-C,1GPHA]_D2!-'-77[\;QC>C,S;5?:@-GW%8JP;Q08D=!UVT ? MJ1_31# B]&!+P=@[=@:NLV=J23UPL*IG A>BQ40L'NNZL/VWUDO].&8QQRG3 M PS2-,)9Z,4XEC*+>"0\(B+8';,Q[=FOG/7@+Q[J)-B>BZXZD8LPI[NHOP"KX]QYP!>P+4\II/)/==37U;U\ MD;JH5!%ZNRG+S6_JAW?T6?UN^_I 691G0A(-*:&"_RCR,?6#" >4A9$G>4!2 M4!L%C/S,X40SF4]OH?2%KM;U_%V^>7I:U6!&T&H6D%[-/,Q\VH*Y&Y MB%/--/0GL+G@LQ2,A74U1V&:X+(S%(P5<#$_P?Q-R]AD4SSJ>B#=%GI4@I(E MDN4T5N$'CW),\HQCFO,(>X&?^;&,"(E!17?]9&:.-311K*OM+%JI!_1B&$-< M+2TP5M""UI7IFN(-^O [7^_JB_JN7/87NMV5XP7#\!!A5$I7H4 _D66W_%%! M+[;V\:Y"! %P&Z,SMEO9444T6:;I6(YN& M]&3H6:Z7'N@]; 2'.X=QL5PY@ $JRQKYN*@7ACSQN"W2DCHPRV_T][YA)($0 M(A!QB(,L4T$&\PBF2::.#(Q'DLLD%#&%W7V,D9O]NJ,AK@%0H-4*HUHRLU=7 MDL.,]B#R_'.83"1T!M$T0FIAK*9IH2]!FPS>L2U<4&L M'1&+QV8@0#/)@\91GL9>A*4?2$Q\G^&,IPQ3+XFI[RD#CZ5%6A# PC+YP7I4 M BKW' %M'Z)2PZW;L88L*QXTVORPH(L *<%428 M4UZX/@*LDLMR"?@2%B ?>^_58L[=5FIAKK$6'M4AXP,M]2U'];:NC=L_*[N' M'J*(BI#2&/N<<$QX*#"E-,1)*$G@DSC.,W,PD.MXF?FDT.Z]&F5.-NPA6B&J M1S^W+.J#N&R9[*H)5_NW3!V5BT]EW'$MK&OK$*?E#-U6Z, ;NLM1QQUJV$/' MD>!-]^QRV@9 H2RG=3O(E/FU#T-:<:.O4426*TDLA]SB1A&#),P(S@EN<0L#V*9Y$F0,O9WL1]Y; M%^(.JLHL0G6A )@7MY,=''E.">8HS!PDLVA,.27L>0 Y^;REV?YKI_'E@-_ MDY=F_-[5=.;YKO6*X.H;=KKXLM^K7L$NODW]3]FF*77. RC6DJKK-DYB3! MA5.:I@JX3&P:OVG94MF5%7_) R^,,BDP MC[1W2),Z1(RQ%RRB.9@ M7D831@<^;M">1ZP.,EAS>8..01 ^KBI.U^A72&.)J9;EJ#;7F8]GF MT6O5==%>>O6"=H[NB]S252%%%Y+? M?G-$'K7TAU%G+ 8-FPKK;.KP),&%1Q";*N!R'K'QFW->YM9'=77\"1F7)""8 M!BS#Q,M\G+%Z_@ 3,B$Y8QF;[3:WX>$'7>>B-ZL"534'0#@FD(+-G(=S?;4G_ >]W3Y5B=\%[MH9U65@IJ1XHUOSW4]&=[52PHPY3 M21 HAZ(##J;'G!"*;GMM6I-#;SK"?T+*CYJHPJ8R;%I$=Z5A([26K@V;%KNG.,S@)=O*[.?G M]4J632.\O"\WCR5]JFN^#^6,'O=BWP\I3M*ZLX2JD,*+"B<\F<+* MM*>)SGRR.&Y\N&/KU6,#4MZA7M2;X]UN6VW5#W7O-5UK5J&%8B;:-8PB'.L, M&#VTU%O<"XE:^FTK")JE>A0BLK,J< .2"Y>$FROALCX<\*YM5N*Y;5F]R[M. MN)_5$:CJNMT?N)]D'@E#G'A48)(%%&F&8LRBQ.(9.$ESEZ'-C0 M(WQ+^;)9OVA_P1L8A[SI]0='$=-J-4U0M# M69VE+:;H+9RU,!3_,FEA^J)EB"'7^:>BVI7:![6W/DU/=B58@2O.DZ4;YBXEK11GF'LX$PE MP*A!T45[PMW%[ TZT'88+!C)Z"I,&">V;(!@)/A%:&#VEBT UK8-J+_*[79= M _8U0%"WOU&UCOBVN=M^E^4]+37^52+]C% ?,R)"Y0"2%*=1%F+)(\]C<1S( M& 06#Z(^LS]HX:]H0QAM-VBC2:-G31N*?@51JIECF$U5,#]Q8 ,=^+A!K?)N M#\JKF4'WH\JS@+ZR4((SY"L([86!KRS400Y&!^>29,BC]05NYLH8"&TU269LW<5FQQ@(=SPMQN1QN#E^^-?V]?:W4E2WXA]5.\S$ MT Q[7IV[/JJI]ZT=DOKRB7_LJAJ8,8T(>+1, X(9!J+.6F07<)'M>ARWAIY>:=OJ]DKRO>8 MRW3/ Q">VERM9@'T/,J"6;;64XU/WW&A=?5&,X)6Q9^.D*IOI[4&QZ@&*\ 5 M2+4YX651JL$*N8"IAJ\ WZ'K?> OA2C7KX]'N[]YN#RXP,R[M2(I%4W]?3Z0 M-=^IA^6>WJ^=B RS[9HDZI79:4@\*9K5WCV\ZF([^*1@Q_OX],.6@,RRK''5 M%+=-*4X;(F9IF&698#@-*<%$;=LXRWF,>13E?AQF,HHY)/,U0&=FBSRBVM3< MH5VQ@DY5&U*1V3;L0'"871[+W%"<8>KAA%2NP),'J"R+F#PNZ@5,\L3C=F9Z M"L]> ^]Y>4J8AD$241AB0GB 4U]0'*4Q]W/?CZ070"STDL3,QGDV3L *E;!' M+V9F>9VT,(L$"@HVQF%9'-EA#X%%37!8P'/K&WG2MK14?;-EM6W@(>J$\ -E MH8B$'V 99I$ZS"8,4T8R'/B1[XM G6J#Q*)LI(?4,H4B'>$6S0=:5'JI(#,3 MM)77LH"TE;&A=M/9C5"KEZ MN'U2Z^DT_L3CWFX8 2YB51Q'QF!'ITL?+L51(M M+:2)F5GBI?3CIG>53,"DC9DXQL8UR/I(4D:]TQB2^N%@/YKC6XTJW71?;S_1)/@0B"J2@%.>11]0Y+M/1)$MP1/Q01DF0QD%N M:AE]!.:^HJQ)H@--I(F:&TJO3J;MY5I)868#%!)D/F.26%E1[X*+&=.8.,99EMO7>_41 M;W5YS+/^0CSD>L1%%G,HD*%;5\Z:B:]V4\]RR=8.>-6-U'Z3LN(.=D0WU;79B=J@^*X^HZ:,W MFH-:9>]KE:WJDF6EM8X;5+.#/DPJ#'RPALGOZ)AM2'310S=,$>='<.#;=H[F MFPJUJER6RHG=;N\WJV+[J?BV>I+[6U\:Y33(<1"IV(C(C&"6913'DJOX*4TY MX2#;9Z>/Q:'EG[3 M&JJQ1>;.N>TK@'5CC>Y;O/]PASZK?S0?LJB:?IR/F\VVV&P!#0GCFADW9J=* M 2;M8/IP/##+6'"[.JS1E9>KQ3(1\*0>R^B%*Y#4;I^?2\E7]4?[9?7X?5M] MO?WRU;QAP7BQF8VY ?:DM#TNKG]=2_W!;B-LG/?/VWTW626F7!BS-<"ZD MKP[]N8\SZD>8Y%G"!),YC1,84KP)6_:XAB]R&(GO\@G MNBH:X,2NPO0 #Z8G''&=*W'SA]Q M.SE9?L[/SLQY+?^)P-S;@A^&!4*32]TY@W%RPM3"6$\N%7D)".5T=SSE_2#W?#W*?JC!-ZOZ9/,0L\1B.4E^D-$\2[AE5 M=0!HSNQ*#Y;8\:!_UEPHY:&6#ZLB?A-]&F9:W6H)F&YUH2!XUM5<9%>I5P.* MR^9?S55PD80%O&IYM5MNJNJ^W.2K[8.,DL@7A&"?IZGR#!''J>^G6'JQ\*.8 M,Q*&D'[XH[5!Q@]O>*\IZ1O8? 06<5)^P_M4.ZF EZ:U0/?C L&O0B]9=W7? M>;3RLI>:ER)=W%SV/&*9^6RAC^O;3['CV[]1#<2S??UY15G=TG,&4$QH[H=) MGN,PT7MM%D0XDX'Z8Q"F/O4S&7L^+#D"96'V1,DQ'/1/.ZIYD;*J(GO?A[NI7["5H@3(K+UV>.V0]3X!"M@8UK#I!F 8A+T2.YP7WI]4(#;TIK M3(J#D"9C!>%@%,,2V4-1]*RY+!#%L% 7,!0CC]I.>F"5_-=.%ML/>GA$!9S1 M./3ZC/O+GB)J2,XR3G%*+F>#!0;(+#Q,8%S8RP$"$\_;?17W7^E/Q?-N6_TL M7^0Z:*^6O2"7D4>YKK?-,6$1Q5E$U?%-^#06G 51"D)<&*$U\[[0@-7>,8VM M7(= #0?H3HS2HC9M M(/*Y69N\,N\TYK^MMM]7Q5TA];S<]AI/BG>;:OL0,]]+N#I>1E$:*@>0>SA- M:8#]E(DT\J+42U+8:?-ZIN:_J%?!XV\U>;0I)'I5#,PSHGE$\69.9%EEPGR- MT=#F/2](,W.S']:L?K.N'4P[&O'KJGA43GL_RUG'8C?-?&IG2M&@$4<@ZLMEO_:$Z_WS\^U?T=\;%H!7U3#E L\^KE5F M>QJRT9;]<0@BM>L#DA'M'W-D@JAE\! %6@2>$]<==FIK?;W+/Y2E[H$X>+.? M5X7\M)5/4Y4;ILO,69764-?I<45?G7$VNVK]NI_M<])C<[Q;:MY0S9RC+AN( M'JPRS48$%DL[0\0]SD&#WK-%FZMH.^E%?>IW>5MV=G8K2@D+?289%HG@F&1J M%Z5I3G 8)AF)8X_Q #1[V(CJS'OF\=(X_H=ZI[;3UJ)R MWTC/AN&S:^T!@^D3\HU6&E7->FRJNVB27,O3+T(2QK&F 2Y MP%D0!C@.(TGR2 1"@+IH +07W/E/>*D/@2TW=6*ZLNN%@:C9;,N?27G0\\.Q MKC1%]]TI%H(ZKR.;IOR#2LB,53)53$ )2**@I3DH/'"_61F]AM[9/52%UQ5BBQ2'V%=BV&')'^F M)#-7<+WH,*O?2ZT)(DUQAI*!<:$V((GHOU0+J%-XFI]1?_Z=Y76>?U";)NJL$AN^MP[(Z MZZ6:D,LRUW:YWH*IM4%A3C-IPX_!S[GM%?2K'[!OJZV.E0-"583L*\7XN8J5 MU;]83G*:@E.N M;$=0'#)?W:HJ?-;JN\55&/9P_\FXQ$-UD:U[\* M@ALOS6Z".+I!ZC7=_;UZD6M#8U2869[.AVE*URM->1PF-B .*Y& MB9TOO^P@L0'A+L:(#3UG 4Q?3P'\(I_5A_J=5O*^W#R6]*D#&$^#*"%28O4? MT<($^%Z$_3!(O-1C6,$B=[H!>M[[_8F_2X_ MKGLXSH?5Y)DB+.[IZ]-)NU:0Q*F(HTQC2NE1-D)[,_4O$GF^R$(>93$HGW4= M.TNX/%Q31BUI=*N[3Q^;\ZI!1]@9LKA1#3#&5-_S 7UN:?_ MB8V&98*HSIT,TB-M=;*&ZQ_D@0U@DL9(@8:9&]=J :9S.HW4/QQQ<*.G=71, MN$*OL!+:5=+'B.:RF2"(&B[20Z"7X?>1[[X7CY^*C[I<_RZ_VVTK45_E:+ZJ2RVXE-Q7Y:_EMW .L-;2VL",SL)W:2(=7$WKIM9WWW7 M@;\>67/4G*++])72MVV%?M7 O:CS@GKLOEQMRKH1MD+?OBLKTJF(NZ/$L38W M):6LMB,Y4X>?Q[@C6NRC@#FF13\%AVDA)^JTNNRUI[K8E?#5BCF^.+Y^,?LY MB94>DB:KN^+#[UOU9=JMJN\Z1+[+=3OE0^KG610D*?98+C&A),>,1"DF/HM" M3@E)260Y(G&4L)$UNIF.N"F0/.% &Z, -RM/Z](LBG*C&A>3#S]<:&6TA=MJ MT*&1I YG'([36WR\H9'X?9,-S5ZT2-KH]S]*6>GBE;;M-HU%1)B7X$"#ZY+( M]S%C@8?#,,K2G'(:949U)P/KSQP#:8(W2)-$FB:P47E()P:IFNLDA5GN/$(" MDC/7"6N7EP$+#6VYC,PPSR?)F)''[ *)SW*K3V_WY>9E):1X M^_J72JI0Y>.JH 77->"Z@J0&4-E?K,2I""0/)(Y)S##A:88S*1D.N4SSF.4^ M(< Y3' F(-]1*\R3/6UT( X+*RPT:Q9GS*LMF/M2O#19FXX;W0_[1C.$].#J M/BW.O=2BE_+\T,7 M+/]CN_X2Z1]9"--$PSN=I% _UFF*K;M\C[7ZI],]2VC>(MLSF](=IW>N59]5 M=L>:Z&+)G6O540H1_%1'X5% Z 1$<\CG+%'[6SZ%[55Z&/R)YWU M45N,%&=C&FXY+W=T_66S7G_8CSF'MYD&!*]>"T--%C*O7=MQ?'/.<\ M8@&#';,LN)C]G.5HD(N-@LWL?6:EP?Q!QXP./SIV+N>ZM!RAOVN>4,N4P\/6 M%2IQY$UL.%C4VURAHG-O=,U2=M[J RWU2,GJ7I9U?>%;6JWX@R>#,$ARY8"( MIR(/G^:8T3C&U/>$EU(_I8D'B4%ZJJ,,:E>)P]\ M@?_[56;F8:Y6!,R'=.3TR%E4$[Q!-4EW#F)4(D-O_]5"A?L-D5V^J>OM;P,7Y,*>5$'1PT'A\1?H 9\6,.C/4!*'@&E,Z,[-:IWJ 67!'&KWIB/])!P1[O=Q/Z,4" M?L-05F=('%/T%@;E,!3_$I_#]$6+,6SB']\V]W*C.P,^%@>,2-,Q;/VOS[S_ M*JJ[:EM'L-\VZ/[#W0FH[(V*53?;8@.:R3:@AND$I ,-P,S65'C'\/,&LMI- M:QM8<[EI;>-"G4QKFWC4<@KBMZ?'7XKGE6[4@1O@T )SFV ]&;"%K/WE\_VG M(RAGX"C$7O$-#,^%Y$#3&Q%Z#G.;DM!^/&+OJLL.2!P3[&)$XNC#MJTCSZLM M77_X7?E.L=JJC[!2&^U.)^S>[K:?-]M?Y?:>KL1#+*6(-):@+)B+U<1S['N:!ZZB"$B]Q@(D*NJ G MMX%;1)#H8*)L0'J5;:S-63T3>0INP>1^SZ8N"FB/ V*[+9)8H%>Q10H/F[4E M,,JME9=H@IVYP@3&C/,B$^#S!J?Y:K6]SZM+ZTU':=6K5>Y*@NXJ?XFTM5:%5BHIK3JG;9?19Y1AZ4!P=0A M 28L=G#"180#FJ4L8&DJ!&A6DP;,B27YB(&:3][B@(Y(0,>O7>:AWA%NF3,P MZ;[$E D:S0+HM3:O[3+$F6>W:;/@?(Z;_J,&Q:#2>;_AVQW=;%[5>?][54]O M;D<[@1UPS>TF%OR3H4I[=&IK%+U4_Q?]Z^V&5NW$!-?WDC0,,TS"D&(2 MI2EF:J@,=4GH\"3QXUB8#:8X@S6Q;N@.HJAAJ^3Z&OJU$'5DPX6F*0-NNC),XA_:+1$8,D#X^*&'[$3*:_K"E;;^K"@5OEW.?; M91!$292*%,>AFV#"DPBS,&.2HS0C?B!$1*2=K\:QZ8GR.0B0!!\ :7]UFU%Q MO(&%-D?P,,'M88V>O%Y',$Q,.["DL#;0[$GG,"66A+('P*RR.$S@6Q$<60DW MJG^OMOGJP[8WS?TFE\?W,=L=%A(#;SSQ8?J[J%2]=3,O0:?"0Z6C_MZ4;KPI M]M"WP^'#BTV4QY8T9TC7KS36 *J2JW TU] MZYDL7AJ1V"'2LJ^'1'(>XR1($QSY(DQB0=W8UZJ"&0^4 [WI!R;<'7(VS,7I [=&P%^=M1SB]L/HM ZQ&XEUS-U6;6^DU5B6VU M)*%PBQ3?"V9U>VFLYK2IX2\-9_?_-5T0DVUOB@V MZ9(QP8F3!=A+G1@3&@284E?^ZGHD8SY)L@@4?QH&-7EHNJI[1U5T W581]BC M)SMVB(9&FAMZ:ZBUJ;J'BQ1@FY-E+A%G;<;,(*"9I\U<(OA\[LS%)TRC3+EJ MIR[=CO5VF;I)E'C4Q5GJ$DP2P7&2A"YV>4!"&E J*(6(:G?SB86SVV: %659 M_%3%)="P4H<7N@$E,PJ!H:0B7^%'43XC!4_)9 /19CCIG YK@:3.UC.'D,Z) M.@\>]:PQO(39_?BQ68NRZ?RRMRV/EXLLTPTGJ:& 3&3SF MA307Q(]/-%?S!:04U<'"ZG-^+\IUD2Z3U!&1'U&<4D)4QQ.*58X7SF+!,L)X M%C!0[Y.Y$)]8'WW;J4";.AO;&*LJ86[ZI !KEV=[DYH*[9_P_1@$NMK93:?I M*YT!3NP5]A9-7+U._&]HLJAN9WX+MO3V7&C/ M>P#,_#+.3I*YX1MVSFI'8#T6-UP"+M61]T.4V]=[*9Y;Z4W% 1T+5"+!=JCL4 U(HLZ['/ Q6*#+3#]MOINZ0.>MQT7F"%G M7;K@.YBIE5IG=9(NOA5YF]&SI*&3,.[XV".)='$3)G J"[*7NH3:S$6D07Z( JZN#:";- ]1$TR)7FO,16)/G]!P@-S.(][!/'#[T[IOJ0Q8"+Q+&6*BG!2TQ!J;6WO+D!*S- MK)^+M%E+^QF&-'/>ST62SQ-_+C\"]_\>R_2F+%5&R3JO-8JJ6-!U\GH?GEA. M.]#JZ@I]YZR?U,L>V-54PH3NL:1U[E+W2DR;:) W-4J8DY=+AV9;FN9Z-\*_)R_ZOJ>EP=;>,P M]5DD2()C$=0=VAP<1RS&E!#?"6*?>G$$.5BM8C=UL.90+[5 #;KUZ=-!>-_6 M(%4S70\XUZNZ6-?=NZLKG!V[[U3OI/]E;PH8#?H5+PEL6DS"3$O&B%W<9C5? M)F'K6X-G&B"&O;<.35'OLNY-_W>Q4;?0*BF[.KOHKXX9BTD:>YQE(>:QGV(2 M$HYC)W,Q<5+/%1F/:,!A#3>OQ BB&(SZ< ZE^@#[=5W)=SV5.R,O84JV-P^J M8Q=.DU!JB1VVVH!=B( QXF:C@XB%S48?(F9T,OK90_/-11_"]V0J^N BPVE]M/R' MV*J61@_*S#J=T47@:1)_-O--Y!B;E8_%SWQ)0S=* I%BU1Q0^BV48!K+$]\75$0\30)* MM<)0(S F%N4&*FK!+I "+-F"%&@],1[CS[CT6J(:)K1&!&L+K 9)(Y%C^70C MHO*'HV2.[3F+0&H0M9=#G:6&?4->Z'JC!/M343[0KGQ_$&S[E6[WTIY)*;C+ MQ>-36>Q63Y_6+T*UB:H.X9*EFV6.1Z6\AFZ8JO)2!\*Z3@(+ M-EC#;?*PPX>=0%1A@52JVFLS@+Y&!F42F_H3:&L3:R]&[ZS_)5O+V&;G67<:ZP!,QS"P[;%NJVF_)DCH.DZ$A1]( MS\?S(QRG;H+CC$244,_C(8%-77@+8F(CJ9;G[O@ 0,>U$;YH1E^OHM9 <>D3 M:C E88@6:T,1S@#,/ -AB,#SD0>#*\T$[YN0^_'B67PIJFH9"L_S0Y_BV DH M)H[/, LB'[O<9\R1?W(%A_17.]D=)&[P-FL2UF'4-DS(3GG@D"Q)4T:P%_($ M$^%*0R\5\I^$1BF/E'-&88:>,1>,C#5;?. \B3PA8AQ0(KU4YDLOE7 F754G M=%4C!)XRB/XU_RX8="NPQ ,]76M,&4S-*J(:..B=@O0;NMENRS7;-<&D;8'N MJ=WZL5["+.G]9+W5M/V+3'(!Z\RSF[*L3V_M),#N4Q-+2T]RW+]# M,@!/"!P7F>MH@\E+7\Z?+=-DF [#%+^3K6;,[>LCX32IKW<%7 [N7W[48QO M@Y/.'IQ8&N[I*WJI3DI-CC?%"_2H/^>TG^S+ G(5Q3 9Z2&VF72"K(\V&J3* M2&+.=YM-: 8)Z'BCI@C?SE(3;I&7(6B(>)GPG=8"ON E66 M[+DA*+-:=A=(?6OC75H./^4.PPK4F-*/?_+-ZG>Z^?ZC5!,+'G;/S^6KRC2J MMODCV\ &G,!WGOH.\&3D1F<0KBK'Y)M=;7LU SJ^BQ]%>9C"T>E0!CQ,#;A[ M^;2=EK$P?6#(T^V3Z.&KY1DGYGPR.N -P,UF 9BSHFLB7+$+7#%]>$G3ZJZ\ MVSZ5'\M\5=VG=_D!@6];]?G/ZGNVX0KZXW:C0'\J2I-13!9 31V97[^L4Y%+ M$2O*MM'AQS9:U(SZE")T*HIYL6T6_EQ72O:R35-O+H6O&>]P(G[2EC:3._(>!MPLPOQ[*:M,A;([UI _YLBM0BL[J:U>:VIFE?G]8;T33-7;J$ M4-]+4TP\5<\?1BZF$:78H[Y#U42 1&A%TOLVGR?12\%##4!H>E>'#^.*Z5KJ M@):6/F$&:5SG%%R1O]79;.;$K7,RSC.V>M9&DB1MPQW$Y!W=*M(3[>IKXE6$B=U:LIWL7Z1 MB+P(>30>>N0N4"[J031_>><%T6\+])N4B%ON+VF9G38[4MI";?X>EI:9VMOUTC:,JWK8 M?9)\4.U75,K]?ZVW3[>[:BL1*H_W)G'BNQ$-"?A[MB'MB;RT[KB=*,\_D_R MDVKI"H>YOHBQ%SA$NF9.@*E(. Y@&G[07J+)TL Y!F?42;U1F!-.N'GM:A]AUU>OGNSZ:^I7^P@;K&#M76S2*89SU3"^.GJ'JM;O MI\K44S<6]6!5Y:#7'GTG86#INTG :93A+$@S3%POP33V4NRGU,UH1AT6Q_H= M90RQF%BLFT 9/<*#M&@Q9>RXG,_&+I@>V&/4B3(T5:,U4LV=:(T64G@MVGO7 MFWDY"VF2,P.'#9OI3,9I8.>=*SDTWJ''=/,9._E<2?]IQY]K-[-1%?N-/HL/ MA6IT0H*D#&*>%HPND(*,_ M&MA75*7G0=G@ #"<84;\E=6SYY1-4D/; ?,+*VG/B1VOI^U9;R:X'S/I M'&WOLH]_\B=5>_1=.FIWN;I94?^I[*47NA&U0I&PURI;2?WA)D]//^BL7(:^ M%PL6)#A)76G0.0G!291&.&.QQS.:<)=H&703XCBU%U=CK.ZB18LS*B72E;K; MYA(3F,*8XAWIZ9I?S'F@!WE@^AY=I/!5/%RW:)NKIZ\^'I M$\W@A9W*;K[[(;![LTT$0H:"!<[7!EG0G <,RH=<=]U,\(REB6@&/< G,EOJ#M0Z\'%AB;: M$)OTM*8%XF&:SX1N@]OD4:JL71[W0YGYKGB4U/.KX?'E5X]E_9RGRN S'+[: M/CVQ["D0QI-2]P2.RY<=VF"B]7;JZ4(Z0JG*^]_1#1JE^9K)IF_(LC&_=+_E MKYI2^H:DD5FD;U>:)U+:JU(G3'6=/ MG.@EJ"]MHG^A:=+$B]RQ*%\_K?-U]232OQ9%6GT3TNJ5QZ(H7T2U=%D04>80 M'+E9B$G*.68IR[";Q80%)!%!%L#Z5&E A7P]C;I7[4&CE8(-S:&XS#4]6],R M)V"">@"^0 =NU/ 7Z%N3J;_'P6:JA3;!UM(N+D.<.05#FP7GZ1CZCUY1'/-- M$B+]UB;YXV-3@+&D$76]T.$X];DKSU\>8$93BE,O\2@7'@]YLLS%2G6'U5,# M@["TOO))\Y7O0H3=Y];U* :5)+WI67Z:4-7NGYF_],36\$U MT/WT]*_?[C^KD&RU3E65M+[_.4#X9?_S>IIATC=&+OI#P;94#3Y.F)$'.K#E M;![H.$E=#_3"2L-&6+2J([[[P5D1]3GG,8XXE<>?3PB."24X\;TD8:Z;9 ZH M2^GI]A-+G0)6WZ8 FUR=LD#OC#,G#"9:!YHL]E48I\%6 ZO3S>?M6]5+V%F[ MJOY5!EF%#Q*G>I/.B#+'XX&3I"D.I&.)B1=DF-)(X(Q'+LNDD(5$?P1=#X") M9>D $3J(KH\7XR)E@T*84)T29S*1KH]*0+[=E=2:I=)!J88ER(V0-)K[UO?< M?&EM(UB?9*R-K3,[>+^L&$.C[V_,BC3*J/+ ,=Q9< 3JQ0%'@5;&FS-?<8+%"#@^$=Z$4NZIWF-GD# M4T57LP5\ZNO2:LD.N AN5LM E_BWMH+VQ.EN\ND&LFK3)1WF;I=N2L?1/FRYOLL?X?%0<+5 M>+ D\C%AJ8^IM$>QRZ+8#WT_(2Y(Z+6@3BS\;7Q2?N/W6*B?%1ZJ-6:+B:$= MJL=5/75@G5FE5S1C6*897HZP1(C MH(:^&0_,TR6&J;.=)M$#Z=>D1PR3/)@6,?((W/V\VVVK+;*99_<"D-@ MDFJ3%R#G_"*M1K[Y\*ZSN>87">MZYI<7&PSX$L4-W^[H9O.JVK0#A;+_Z8DE M\O[C'=I#;7K+7R6# QRX+(#7$P^3ONOHADW]&B7-;/17_Y;SS?\:)>ED"-CX M2C-S5GMD]W-1;E4;Z-NB.O832YS$=XA'<,0$41-^,QQGH<"AY (1@1L[G@LQ M>*_"9F+Q/L!$"BC, KZ.RWHV\FR\@VF'NC'!$9<%.N")LZ+$"M,%.N7MXJ0G M8XOYZR2FMQ6F63+.K\-E5O/="MO>&OAV-C53@U]I^0]13SX^0NTTB_9]XF:" MX2R5WCR),@_'3LAP0F+FQZGK1W$,*XX8A0<11M.R")KSM92P8[<*8'7$.,/T M-)8U)L TTA%L1R]-,J@41*@E+3(.:U8MH47V6RV@]Y"9E/K M"L=5KM3+DG/'"_TPP8PF,2:92W&BFB/%22*M'#<,.0'= L# 3VS.[%N>EP> M\L>-JK)0L]_YO@?ZYM@CONF._J-<%R5ZE2SK&C V6E X0^*Q:R(PQ;]62X2X&Y1[IWQ^+VK=3DX9U MJSRZ#TWM!QT:TBE%T77U_QU0VW%"Y>68AC&!,!D>ILW:'.5!:LS*-TYVFJ]J MHX^ DV*-W@7F70+J&[UZI'(SJ7;)8B>*O2S!61@DF!!/'LM^ZN(LBMTP$6'$ M$_"\A;= )A:D0PG]$6X[AQ?>+>",/^,B98MJ8"@ 3K!1UX ABJYJ''"VZ>R] M X;(ZFL?,+C67 3__XZ6\EN^>6V_8:'#69)$,79\)\ D#D),4]50D/&8>HDO MO$![#N4 C+D$\ #66/[>,D=?_*X@V5#ZM*DU$KX!>JZ2O;=[SBYZ T3U2=[0 M4C./]5Z^S"=:B3NV6:_:RAHG2#Q!,QRF\M CH>-@)A(/NT&/3V6Q6SU]6K\(=6EQ&J->^MQW4S<*<111A@FE(6:NY^-4 M_I3%$?/C0,!$UBI^DTO[AYUHIXBJ-FTJ=H2V#4(H4^-(U2= \;?[@O0TQR]C M.O"@-[EQV]^R-=,%>!T'5(UV'];Y:B..EW"J'=5^)&Q]/2?I1"VA2%'Z"^[F M(.R>^ZY."[=_SKL["%N-[_) 0,QT^2>Z+G^GFYUH1I_>Y&EG\.E7054F87HG M'26)HNH.*A=\*_)R_^M[6JVK^G)H23TG\'E L<>%ZDZ8,DP%BS&+(N(Z81() M 1H::PVSB1TEA2>J$:T'RS;0:_701:>]0@,F!]M[.WI*_)?P'*; +;$;K'"M ML\:2LK6'UZR*UCH[WRI9^P ,C64N7=]=?7BGF+*8 M8I)E#DX"QG#$TRC)(C=) ZW8K2'\J>]'CMB@HN[+QKOXH(U$!6CK OFK:T@SA8V.@!'#73H -(!9ET.8MMB 4QAF%)O,(5TG+0K!I$.;#SS+-)Q M\L['D5Y8;SKO9$O7N4@_TC*7>U;[?E)QDH11%N,PRR),'!Y+9\MW<>())TVB MS!>PW/)^,)-G635 T1XJ=,9)+VOT#OCK"8:)Y1FM$_3L&Z?)VGR37B SCS<9 M(_1\NLGH:H/RJ[S*;]*_5P\O_+;:ME\[W>*KGFH6J/CL,Q#J;Y^ MM<8@X>/R9H-FX+72!7(M"MXEXLQJKOHVG*_B:H2%B\B MI_GVAO_W;MVD:ORMV*Q3^KJD#DUHS$/L1+5_''B8R@,/>XS%&7&R@%&MS H0 MU,F]X@- ]-1 !/2;U&;=N*1.QA"#"YKNK-8]$@O49=/?IF,3H%?G%.PR:^!I MB6VPOIY0\D>;?6IO-E\'4"A])VU!P0^;.0C_)=:KIZU(;UY$25?BVTYIXKOL MX8G*;TNG^%P%-/G2#X474%]@ST_J,8G2Q0^R (LH(K[CN@$)@?DQ(/B37Z;O ML4&T00+?.VX^'1T!88+B(TE"X(<'4OU?/D[#;KJ2YY*_8.S0]1-AQ%_^=?8\]U_Q_Z^?9M\.+YN4 MKT#/(9R,L;#C[_ %;O% #2(JJ-N@@CJX+%"-C3T/TH@)EAQ+&.Q9_4TCMKQU M0\TV@7NG#]M_W)?\KGRLRH_5=OUJLY>$RN9AZV$@>Y+ MY;X5)7I\^(Z.J* &%WT/5HLYESU:VWR!Z0@=EJ _K!;K0HDV\GRU ,SF"4/( M[7K&H.>N&%'6W/?/6A&?9; M3U)4]Z),9 YWG!"[)!/2KQ8"LT1XF*6$!)1F3A*"(LH3X#BQICEBAMZI>^C? MT$JBAJ1(/1^+XJM.ZN!VY)9UMO>F9]W\XKW1?FC*.E6O"_RM%I&<:@*/5WL>3[%Q(N)JCAC.'.Y ME_B^"'U*M..B(- 3J^4#X#K)C^]!(Z9@ ^)_,'9JQ$HG8Q),6RHTL.3K,^H@ MLD!'MDE<+J!I1>A)5-=O! MM)LUEXJ_$A]$\__/>>UY/T0: MSL3C!#,6,JF'_4B$GJ!$@%KB .%/K(?WV*!W>WQ^0]+4ZJ+T;ZA!"OVAT$(M M7N"&V#"NZQG $_(2IJXG8*-!3VTC9ECKLPV#/G/O;2/6G/?C-MO&;CQ V:@2 M@EBO\B8YC;_6O0\H5T>C5)?U;YOZH#SZ2.]KITGYEH1&PB%QB)- ]?AB88!I M+#+,PR3-U'@?EFK9E!/C.;'B:S%#O$4-;8_8('K,,K$3"[CVG5T7#YCQ30!C M I=SW_?O:8\XZF!>^PX=W$]" FV48);(@"4&3QP=N!;+?XH(@256ZT8);($S M.P(>=C]^;-:B;+J7BONR6)7T^5CRW[68N$,SU_52'&0L4\G##J9N%..$,)\2 MFC'B48A:!\">^K*HQ02UJ* 6ET6GQ\15QBF$S7J:>"+F 6^4+/(-K"H-.&!) M_4$@SZK2#%CR5DV9; &_;/[XI^"[K=2!M]+G7A7E*Z0Q8^_#$VN( TRT!PIH MS-A/[>7KXJL)A4GS.8U6&S2.4F-T\=N_XVPWO:,$=:]VQQ<:A/BE5/Y=\.TG M53"4O;8)]=1S,S\."&99P.7Q[% <1[[*T1,9X7[J9=S3CN3W09A8Q%J0J(4) MB#7WLD,C$G\MD3#Q>D/?Y7H"34(!L?-K"38+D>N^6%CT>XR6T2!W[X/SQ;+' M\#X)68\N-.B!K([LZG935.*Q^)K_6*N1;Y_S]!M]%MHMD4?VF%@[*!" 5LAC MQ%X^>&W1"5,0#514@U6QW@SQ8CM!J^5.&C$NH!3*!AC&(0H.*^%XZ MKBB$/]UOYOKW7F+.R][[EYE6NZMZ&;ZMDVCD+Z)\$4O&TL2/2(S](/.E/4PB MG&2QB[TL<=S \SR'@VXA^H!,+%KOQ6J=JRH)Q.A&N>/02O<^MO@L\L(PPEY" M74RHD&Z"<$+L>$XHO0\C^RUE0UM6-,U)CT)L4O*\IG]:7M=%GF7I*Z M#J'8CSE5NLK!C+$,,\IH*$A",AI!A5(#[N12NA_.(ZU8UAV+!)57'1[J"K!E MOD EN@:O>A"V"* .!IVP^<+:C%]V%LYE]EBDM)UF5Q[ M"5PCL.9.U[I,=D]REL9#\,C<;?$@-H)O1=KV%X6$Y'H?GEAN518#S5_1'C)J M08\'HS3IOAR=NYIDF&B:40L*O8U29!1SZ]]QMF#;*$'=*-OXPB%9ZG+]B_SI M/_YE_XG\A]%*_,>__"]02P,$% @ "7)$62'<^-G&? 2K<% !4 !A M<&]G+3(P,C0P.#,Q7W!R92YX;6SOR(FYW4L _M2IZO[N);( MU!F%I):4E5WSPH/%(+&23JI(ND)>OWX,]'WG@NL7RHJL"%_H]QK,/M@&@]G_ M^%\_CF>_?,?E:KJ8_]N?^)_9GW[!>5KDZ?S+O_WI;Y]_ _>G__4__^5?_L?_ M!?!_7GQ\^\NK13HYQOGZEY=+#&O,O_PQ77_]9?T5?_G[8OF/Z??PRX=96)?% M\AC@?V[^[.7BV^ER^N7K^A?!A+KXV,5OE_\J>4C(9(%@E "E6(9H8@!$JY1/ M1K+(_I\O_\IS$EIR!D98#LH*!<%K^@,3E=):.IG\YJ&SZ?P?_UK_%<,*?Z'E MS5>;;__M3U_7ZV__^NNO?_SQQY]_Q.7LSXOEEU\%8_+7BT__Z?SC/^Y\_@^Y M^33WWO^Z^>WE1U?3^SY(C^6__I_?WWY*7_$XP'2^6H=YJB]83?]UM?GAVT4* MZPW7GZ3KEP<_4;^#BX]!_1%P 9+_^<_UE_^^G)!8/@0OE12-W^Z/OV&__:GU?3XV^SR9U^76/[M M3_4/H+:VBS?, M%NG&AV:5LXOEQ5_.0L39YJ>3C-/)YLE'<;5>AK2>B. 52I3@,&904A .6=& MQC')1(IO"OE17UBPU/-ORX\[HSONQ']\7. M^TR?G0A$%%DDD#DFV@,\@RN(()&[C$8&QOU!9%]_VTVJK\OS:)E^62PS+DEU M7+PN+-,=V=X$[?DG?OT6EO0@2%^GLWSQUV6Y.&XAJ_6B >?.Q$+D_ND76G7! MY1+SVS.I/+BXS'0(42>7.4<7F&@B_%LOW@H'HG\<',+/3B#Q 9?317X]SZ_("$]TMABB]9"# M)8:P$,!QS2$YPP4O'EF)30!QX[5;P4'V#X?]>=D)&#XOPWPUK8P_!W0H*3M4 M""4E\I622^"%29 B,\$[P12V41"WW[P5)%3_D#B(HR.CXO5\/5V?_C:=X;N3 MXXC+B9-2"&X1,!L'*D8/I.<2H$=TVF@GT!R$AMMOW H%NE\4',3!+J3_$;], M*Q/FZW?A&"$/!_))4V(;QGXC_^')Q,E\O3U\N,DY(HPE=.$6.(AA00DH(@;[EUF%0V1GE M9 -@/$K$5CBQO>.D'9^[@,WG\.--)O9-R_0L2W&N"2-JBIV\(.@+"4H+!S[D M"-JHZ+-"Q7QH )@'7K\55%SO4&G!VRY VA0=R_]NW0T?'F".ZXXUURU \B-=V\'CXX3GHW8.C(X MJM8[6F+8T&V$,E*H"-8BL2*K!(3I B5EJT42PN7#],7UMVT'@(Y3G'NS;F21 MU[/1V8>OB_EE!H8")5&]'Z*:?.-4$(+)%D0V%)(+$4O @\1^^XW;B;[C5.9! M+!Q9_)\PG2P)NES$S]/U#">"*X&) -,<,Q2&%O\ M80[ C==M)_B.TY;[,Z^33?_Z1_H:YE]PDV^U(1N1I06;/0/ER5=Q(CL0(9.] MXM9PWV;C7W_K=ACH."5Y,"N[" =>GBPKN\Y.X"JD208GJTF1G"CU@>)=4159 M/: MWH$-&F,R3"+C!T'BL;=O!XWN4Y -6-L%1-[,Z6G$CNEW?!76X7Q9I/5, M$C6DB2:0UC-60"RH()'%4X5+;GK\2WU?N3=;W!42/K2+?.I!4YNOG8[:'2@8Y[E6$?\V M"U\F0BCI)2;0OA#A3A/AEF +"-:8'! A2JS&C4<(@M#-75(AZYAY<0U1<>W5V^&BXPQF&Z:. M7=-PEDZ[PO;%]2-/?G&2QH"*6-'M'="*;"T"S2D9)X4\[++&0V_>#A<=IRV; ML+09+/['KW?X^)9^L->5[/?O/KU_^^;5T>?7KUXVGGWKX)>X=*3_P=O?)"KZ$\&VR*82K*N)]^6TZ#_,T)3VQ M.+O/=0DS1N;#&BM!ZHSU9)1@YK( ;ND7,GLCS&,:N(15W$#@_*5GNPUGZ]7% M3ZZVW2YT[:M4+MYQM%KA>G6YRBA8+(X\9G39@_*1@<]1@*ZA%;+ \-&\UCZK MO$G!.'?'!T/"A<)IP.Z]50TIR[@XT ;=I/]<=5XNP^M2K25"9IO*T:S "]*8 MI@AT@2CQ]K%3]_U13J=?_GW,#O!B2W>2244,&$I:".+ V1_'12GHDS6B/+H[>-]T+,5 M83V@Z2 (+(:6QHA.\<6B/F)"6DJH=KB].G7TTW!;F0>=H:>^1"^=24L#1 M!+2)?$+SV+'M/I"ZEY!Q.F ,!Z'#N=T!9-[,OQ/5B^4I+6&2LK A10,R^,UY MDZ)HD%L0,NB"D4G)'HN?]D'*]?>/TQ-C.(#LS=L.7)ZOU MXIBBS,JA:U 7.IGJYT%R]"^E58 050'+DPL87=+JL>SL7K;J:;+&::,QH*5J M+(D.P/5^_?5\#1>" GD8&)L8@DBN/AL9J2?;!TEXIQ M>F\,!YT#^=P!4FX2'X/1SB8&FI90FQ=FJ$EK\$I(+4KD7K96.+OCH_GYT'#X MV)^[^T-CL0ZS)M#XL%Q\P^7Z],,L$#OFN;KQWVJZHEK;6()+3$=(O%K;[!)9 M6T?QIDP\L^35X_<>]D'*8_3TX/HVB<6;,;T#W?*>5A)J ?=;#"O\6+NLOB]_ M6^&&79,HI8Y.)'!6^'H!N$"0(8+11LF2GKWA#SA'U=H&1I6/"AR/A87=,^<+EX=P\.;Q-D[,7, M#D#PAM@]_S*-LS,,UVS ZQ]I=E(KL2[7) 2GY8L ,F--)=5.S9DSR*Z8D%+* MQ;<&R#9T]>#R-@%/@PDXLGO0054@2?:F\;FUUF M-B//CUWG/C!4NB*D!V^XC44ZF,T=8.6,_DE,J?!8=&VY6JD.U7X:"U)SG700 M%F5KQ_?LS>-THAOLN&DG1G80#;V=ACB=3==37)%;OJD*_KJ8$=-7U45?GUZR M)@4L9$4M<)4*L29M>A\E*$F(XBWFJ')C@&Q+V[A1TN#'W8.(J(NCS6LKNYV> MT!XKOVI[\-KS4V(DAFD*#*U)BI@E3//SS(>I&?<0D&3@=)^K;Y M.YSI'7A#KX^_S1:GB!]Q5@?MW.75),AD.!8'S-:NH=IK"*E(8.AH35$D]6A3 MI'U0]"11XQK @0#55A0=8.N^ [F+59U>E@&$$!!Y NEQXRA8\"QFH! 34W9> M2V4;PVL;NL;-(@Z$L.8"Z0!D-[.D=U;C7(HZ,@^%XA%2Q]9"9(&3B\!3CHQQ M7Q[KY'=X=GHO8 V6A!P(6 V%T .D:IKC'O7+3$DIH@41DR4.*5Z'.AF0*5GK M'&,BMJ[Z>8"4<9.10X&H =L[0,\]*U!%V)*(#=KDVCPYNWKTK(%TJQ0WZ?*RP#8UH&S-9FUKI"\7&*NG&YA\-80Y%T +#;GN"UE7@K/4N> M42@1-3%),@C!:* =E)-07EC9^D+EP]1TXX8/J+S:B*(#4-4V0-/U\>;VTCS7 M5 BI9)PG6M3$9^E-"@:22O7R=A80?"E07 C%&8=,M,YQ/D).-Y[Z<+!J)8P. MT)@)EA('>R]0W7 P^-!ZL[>!XKV$8479SI M?;AX\V919[@B*[UN3NC7X=D7$*$XEFMS*'8P@EG-\W-;(PB&=_:$;]-P]B5*H-@ MY2!&=P"4HYPWQ3IA]B%,\YOYR_!MN@ZSB57:D8H-P$,]NK;TE1-GC8Z$WEQM M4:U+4!X@9=RLP$"P:<'V#M#S$==A.L?\.BSGY+2MCE(Z.3[9'%F_PC)-T]I< MB>5BLJ3]4#NQ(M9VO#) YIHQA9S9\EA#V_TNTC]%U;A9@($PU5@8'<#KV@HV ML6?M[KO$KSA?3;]CG7]\C&\7JUJU_KY\#C\FW/%DN$;P6M9[,,F#Q^B!4;!0 M;\$0!Q_K?[IGD=,N)(Z;)1A*F0THI@Y0>)=K$ZXX\045>.,-*&8M!,8V74)S M=*F@]JT+5>Y2,6YJ8" L'=CU?@>+I9F,'O6IHT?-M+XBNMI(K?ZQE):=7"\^8IG:.?X MR)J>L[=CSE%(YS2XI 4HKAC$6'M%>*,Y2Q&E;YTT?I;>CM==2!(AO:,^GKZ> MX>8]\WQT7 =Z_??FYP]>=)\D[T7R3D#$4ENLHH<0LP&KF/ LI.3X8_.Q#O3, M#J)][!178_0]XKP]GX@[\.IN)OE(C;Q?;GB=-VF<#[C8"%M$T*'V@_>! MK(+-$.HT$68-5X%G^G'K,\;M*!L[FS8P+ <03W>@.YM 061:471N54G*ZVQ:=Q9[@J2QTVLC0&M?@72 KVMG9P\:^% 0=2T# M+RS4Y$^J43FQ"T6L,[GJV(;6)G$+LL9.O0V,L]:"Z0MK=^Q\D@J#=09*UE 6-:CH+;$G M%B#E[%!%^D>W[A;R "GCYG6?'TM["*!''%VWZ=H8(Y#X@\R5L\K:Z&E!ME@4 M13-E!^@7?> KU8?EHDS7 M$^ZR1!\YL,+K*1479,,+^0K>(D9=YS:VCO6NO7[/FT8< TP 2Z>+^SN6M[ZMBR(F-]:9M'8NF%44IJ.KA4O$@./,A M,8LV-9_=,<1/F0V#H4%YWH)C>S,GVX6I]CO=WB_GB8E&3H)F6225(=4B] MRN3(14$JUZ-.II 3)TWK'E:/D#-N'GP(^+3B?0=NSW7:SUAUH4 9"AY44.== M=HQ4=3]$*$HX+XD_!):Y>_R#^D="F\[ \?4-,W30)J+'I8F/:+[;7Q"@EL3A&2$%1 MV\ E8C!*$"'&D 6/HK0.W@9TACN!PF!I M0P!K: 5*9 TQV'I:15SFGGMMAH'P'5+&3-Z%Z_\.U]<<4<:LPB0, ML&H%%)@6BZN:EY45;P(JVF: M2.T5A2P:N&+U ,L;B)*XH\CE9,%F1:YF8Y3<2\AV:/FI,N:',[P#O^SV(EY- M9R=KS)-L/"E'R0!S=2\%Z<60L5;@:^*7YP*;MYAY@)3MD/-3I<-;,+T#[/P= MZ^Q S$=DY,(7?'=R'''YOMPY[#[;&$9JE8KP8+WC=9Y/ "<5 \]\HE^Y&'GK MNN&="-P.9S]50GTX 77A#SVPO//==+?FPG)D)AD)DM=)O?5JIC?)@_[DCB=MA\*?*PP\II(8H'*@TYM-G^O?OK]_5NI*7[W__\/'U7U^_^_3F MWU^_/OKX[LV[O[0KE-GA34W+9O9=8?L;M6?HW;3]N],SXA+*A;PRJUB$K&)M M^LXM.%-;EV13R/H6:57K7L4[DM@V2C11%%ND!.-RS3-G#Y$) 3QSRUE0M0QM M_"CQ&6K\FJ/C\>!Q%[YW84RWZ;;RH=[=)WYJ_Z*A3' M:2E8C$*TOIW=B/1N;L$.#M4Q9-T]R(^^A^FL+O.W MQ?)3F.$G3"?+LQX?^3]/5INFLI=MAQC+W%D? 04&4)HE\.0@@_2:B<2,DODY M4;X+[>-JY%&@MP/\!T-!!_'Z8^M^&59??YLM_O@KYB_XES"=;YA1Z.4?,=\&@ M:.A\)]#&IY!U?C;V)YU^7H;YBGA]OM;ZW>QLY9?ZX.STL]*+UT\LEV\>+)I&0/%\=)G M<,%KL)+SF!F+J?E.FZ]]K'RR$+D:"R'9.N0HJ1;7P)/D&!&CU*WUPC/GD1\R M G^;+S',:H^%ORYF]+39@@0XR6@@' MVD]&>2DA.N*:(],DG0B*^]9E;@,LXR?+:>^ U&T=@>?"0.?^[_9A MOO_[0&?7=Y\^W'GU$RMI[UM<(&AU#:ND\11%2,AE!L69@Y"B@A1-,I@%"\U[ MLCQ&3X/3Y_K,#\O%]REQ[L7IWU:8W\PO;](=I?7T^YEYN.! R#E;% B.B1JI M,MHGM44_TMXQ5CJ64FN]N#N5W=C\PQ!TSZ'UD.+JXM#OYL%\1#(*V=9\FQ.@ M]&:T!&>04S#1*[086CON'15$#"WO1VLB=F%]!Y[?5?)V]7E!!GXQ3],9WEC2 MY\6NW,28 SK:K)YQ#BK+5%L:%& JZX+.1^)08_@-L8YQ_<%G1O'H0.A"C6[3 MT7_"0C1!ACILO@X%JZ,MG;:UBT?$D)W((K;V9K:A:URE.SY^%@.+L@N 7ES" MP4UL2+';V3J<\+4?58",]5(%8[%>X[(@%2J6@@]%-)^O=2\EX^K,[D#80%Q= MP.[5^8L?NF:JF56>W!L*_I6C!6FR/ $%.,%19;2IL-;#E9\@:=Q3I.Z V%* M72#R6C(VS/!]N3%GYVK(CC51.V4$R"1MO9\8(,HZ 8W\HHA6*-\\$MJ.LG$/ MX+O#YP#BW!VF_@RF<_Q23^X^'QQDU03=Y!.NU[/SO,8[_./WL/P'$M?#CY=$ MSW1]K:QFXJ)PR;A.7XWY;CC.\?M9]4-#(>4 MU/@XO$S[7W#M+9)+\K'>67M?B*&UW>GZNE]\T7\'72E6&05%&U[[[Q0(/ 4H M*EBI94S>-:\ WY'&<3MJ=0/@9Q%Q!_FJS7_ AX@9MT=7?Z!L(K1#]6BKWD;+NK->X=E_KS'M9?@V M78?9)<<,BRJ;C&#K!&;%-?DJW$O0RF:AI7,EM.\\N"UUXS;@Z@ZA XFUBTCI M[MJ(XSC]7JM9ZWF%8\%&"\5G3\M)JIY76) HBK$L&2RM[\X^2M#H3><'P<&3 M<-M7))TJQ3?S[\3MQ9+VYT0D'KCR#C2+CI83R<- XI9-7.CD)0O&#(ZP:P2- MWGE^'(3M*Y).$7;?_(:-DSL1AJ%.VA';=!UF%"-X8PJAA!N6(M,BM,Z%[T#> MZ!WMQT%?&W'U$TK?7>%12HL3)'W$RB?SL-<3K;^,,32:Z$=YM6 MR<1 A;5]LDR%8GON&)J8>6[=#7$7^D;OH#\.!AL)K(,4S';*_6*!IQ-1+TT; MH0"+,J")&;^\_#A9;B*I+W4B^Q_+DVKD[7GHA MPL62I-.D["6I?<,D>$YA/K,NAFBGD'+&OCE^QDFP #X5*WHWF^JG\C?GFF8@3F&-LD", QKX$SX15M<1E9:Y]Q M>^JZO/75#"F+9Q%:%Z MJKK0%$L!Y92I&7X#3K@2E<\VL=9%-GN2.NX)X<@**JN>BZ6^.H8T*JXB]YP9EO[E]M3-^[)X3-C"MQ]1&!7S,$;Z=S7!$3 M-W=^)BH+DQA*BM@DQ6[!6M+R.H+EY*)DI1%5ZUL%#Q+397S=# >/V.;]1=*! M]?V(W\X]XO?E[6+^A;S16PMR6B I;(K%6)W!RE2=21<",!2RB))#L:WSW4\2 MU67@/!36VHJHHW#E4<$:YUEW\'R&GRPAY,-762"S] 8U")=I+)\OT-:SP?>UW?+R8?UHOTC\F MUFC+5?8@JQ^B, KPA=-7&8TNGFO)6\_:?9JJ+J/=H6'72$C]H:\.W*RLIO"*%;@2"<%(9+S@%[ZVO >Q(XKC5KR.&%:W%UT&P ML3TW:65:L)@EX)I M_;Z\_D'.QOP+?B0U_'Y>%UO_OYY&?@^SN@4_(O%QFDA)UU\>!]0GPG M(>Z-V&^;C40<6*X[P*WQ3CK-$;1/9.FDB! ,4EB,.G%C.449N$(^OV*JT1\YMH5U82UEU]."T#R", M(*YBT;RT/C78FKAQ;ZP-=_X^B'"Z.'8_O[&R:0:7I^L3$AGY,'7><'YQLGZW M6/\'KC^$:9Z4G+Q%H\ J(^LX85U# F9OO71A1)DZPN[V](V\J'\,."XHQ ' MD%-#!#[#/+!/?SWZ^/JO[]^^>OWQT^O__;,GGS;7BI+*,7C#0C'E0==\$VJI \9ASM3%(T:U]OIL4=#/TJQ$6[HQ@V)_? M'623+JD_XTB=(K&85S_SZ,=T-0DI>^:5(!G;VK5?%H@4[X/G+'G-57*B=77: MHP1U@J4])/T0: YF>P<8NK6&5XOC,)U/O LJEVQJ:$WQM64%?/(>1*(]977V M(;>N.KN7D$XP<[B@;Z?"#^9Z!]"Y=E3_.QY'7$ZRE^0!4!3#N-*@O%40I=10 M1%$\<$M?-\^MW29B7,@T$.QM__H@+G< DZ-,WB*Q/\QJ&/!F?AXPG"^&HTVL M2 G,RD#\"1054- +/C!F0LE:F=8#T1\E:-S:UO;P:SJ?!52!Y.TBA B#[5+**<%"%I*S:.$2+^3K3%T/R7C5JJV!T\#?G> FJ.4 M3HY/-IT5'YIM?KXP-(Y6)#GHH'G=#A:\K@5G7DE>$C?9M\Y@;DW;9)%,(*E^OT ;+3RCB$J+@ 13_/3&G+PV#IBDLJ.FD" MTS#^VH_!'4#D[N'\W?S&Q\5L]MMB^4=8YHE*7H0ZL3=*;RG4H'C#9=H&3K.< M, 5,J75]_(XD=A*H[8F()_NMM1-/!^C;S!U=O3]9K]9A7DM")IJA-@496)G) MH)MH('K:DL*'$F@-EHG61RAWB.AMMD=#D=\W]W5O_G=3SG"709.2';=!&D!5 MRS)HHX'SPD$,06>N3!:V.8[N4-';"(\!@728!+I!THW93A-AHE..8M)(&AQ4 MHG#487'@A43!O4I"AO:UYU<$]#:$8SC\[,_W+BH$'@H;ZFIH:>_+Y_!CPE-B M@<7:Z%(H4"72JJ+/H+7G/F5-P6OK@2_;T-7;L(WA0-9<2CUX4)5;]6XNYE,G7'Z?)CQC31T8^F6^>AEY3;V- AL-_5^CH8+<\;K3J+]]_ MJXM;O?Z!RS0EGDSJG+QL2P:A"KE6F4>HU9:07;2&*RDU:YT[W)W*W@:*C.5V M'"S!?C%Z9K/N7:#TH0B3/93$#$6>)4 (DH%A+CD5M$#;NH/?SD3V-FAD))_C M8/GU M"K+C=YMR,GC/:;MHD#)D6;CWPKB(D7( ]+E:*$CVJ0E.:6 M]'4W<61@7 XAMGZ:%6VWQ#//Q1E!ZK\6@'%R]A7SK%8>9@@H4I&,>Z-:MXW> M@;SMKJY))XO9&!65 M:GUEZR%:ML/:/\4A4Q-Q](.NNQ4B*HJ"0AM@L98S26'K.BS8G%U6'!GCK0_% M]ZS0^>".;E8KZBQ^>S73[/'ZX)[7TY[TH19I=UO*M7TU6: M+58G2_Q,;'\QJ^V &3+#4TA@DR9;KD0 KZ0$SI++7),C*5IWLVN]AG&+7!LA M[TZ%SYB";I9/;J@>/^)WG)_0AQ-.O]?K#BMR(H@S&U8?K5:XKC]X.PUQ.COK M:+N'IMS])0K]>(8EU=]E8+1W-?+C-9' M4"F2R?;20$H>M54B8?-Q95N2=O@UR$=?<[61,!G#),N@I36@ @\0"A9(.7.# M/-0\S_.RH!--. 2&[EZ>'$!*/:J[VF!J3HC=4Y%=__.#5=2#M#12/A?//[VR M6Y=@X5B\#:6 SG4L!H&# @4E0>3 !',IV]2Z=NX1<@Z_HW;GT=]SSE8D3Q-72.-\X#DFAJYU M-ODQ>@[5*?<]^PK2QCJMO4+(SGE0SBB(2F<(R7,69;$&6RN51PD:5ZLTP\5M MM=)."'WJE3HW;1\]LOF[@_7&W;&.(P1R.X%0F'(="9A,:V.]$X$MFML]^;*K M+:/(&ONL.-1+8* X[980C0%3LD^2):NP=;)I-PK'55[#8>N^=GD#R:U/5??I MY-NWV?1B0!U^6"Z^+,/Q^SB;?MD\=\]CN*<>VN $;B>Z&RFY#^%TD[@F;!RE MM#P)LRNGVM6XV0H)C-?9X3&34XTE@.1D6[G4(< M]+=K5MXMUGB?\33%2250@"MD-Y5"1M!E&BQ&SVQM6Z0&N5JX#7$]M '>"Q-/ MEQ"U$$>WFN3N9?]]M*I6#X:T;N!]&\>$%V5N^_<7UMU]M M'@H"2G+" 8;:S3UJ"PX3AZBL%E:IH)KW$#Z0Y)'34<^'S[O%WL\GZCYCOK,. M2I_#CWU/W*_^O,&)^P.T-#MQ/W_^/8D"\I:U)M\^YO,(.0VZPMY^]!5H;7):6>[JQ$M6I]S4\UYA@*L<0_2Q7J,9?JF=*)]6 MF+BG\6L;"?2I-B[:N'_#Y48_[J,[[CSC8 7R.%6M@K3SEWPX?\E5:"^+*1@S M*$.840$=!*O+,C, @FK/ M#-. 4^BGC5[[ G'] 0VN-SQ(3[.K"]?>L.D3LHE8C])Z M^OUF@5=$7AC/#)+6U7 X!Z[>$HQ),452MY*WONNT-7&'7U]XXD7WPIT[9Y+R M@%K6,V%A(19?C;031O/$2_/BP'WH'/M:PQ#XNGNQ86#Y=9FLSK M[_M6*M]Y1H-#],>H:N7^W'K)E8ES)?!-85BN-Z.ES)O[@I 2QQ*RL:GY[+Z' M:#G\M/SF>G1> )46@W5%'Y&D%3#I1BB]>NN8=D1\B9F17IP4.[AZ/ MMV!\GQICFROFPU^6?^Y+\V-=GF>17&M?(HAZ&4;5'D(.F8"B!P8AUTHYQ1"B3 I,%CG(Z))QK=>\'67= M7G3?!26W==4 0NF@'>H[_./:BI:+.7V9SB[GW[\^SI&'0$%MYO6^:G(<'"^D M[EUP'B4KT;K2@._<;V,R6?)YN"N>O>OZ>"O>M\9D[ M*Y@0@Y>U$E($7B^LFSI?S-03?%N"%%+P9VXKT+"*)'SYLL0OYPU+SE^[X?DU MSU0P+I7PP',IH(JK]>D^ #=*:F;01-,Z.;,586,G']JCYY[2C\;RZ< ?TI? M,9_,\-*S6-4*O]7;19C7:N3SF\CS+UF>BS2E(,%*;M2.FX6F)PQ9@Z/RMC'3F?/.H'P.6(\I\QX#_6M=N_8/X>\^ MI&4WL0'#[L?Z1XDD*5QQI9;(!U ) P1!&BT6*U/19(9S:T,T8$^Q*^_X\B4O M3Y9U5]X"=(Y":H<2N'/D"F1 6&HP*E,4%@9'== MM-$8XQ+JYF4!!]+<<3^S7=#U2,IE>%$V5&F'.0SG4W%?SL)J-2U3S"].+]S5 MDS#[/=3JK/7IJ["^DQRE1>E@$Q0>$K&:%+AWRH,)(9FB(N?-!QH>0N^X*GL0.OHQH'6[QBJ&Y/?SS]6'I\7%;Y;S)<7WV[.W6_Q MP#HF9$R<>"!HTR83(<94_1 O,5-(YIJW66B_BG%3C(.!>V1Q]QCAUE9[^SN9 MU_ZZ28/* 9W(!]H4:NVXMT62_#2%#:(D\$63R34FU?]C5K?N-M2V365EXHTH MB:K.PK:9$PU&<2TI7",<0M!,OI607 M&F0P+O>H$[9H]+B_RMC^X<_1L') A;-;:T'/&4_1239Q?@X_SLZ6/]/J5F<' M&JOSVO);*T3&!5,Z KE_'E16C%2\)7^TGGOGOJ@!;WL4Z9"I$;D3)(;Q.H$C-$%C04JYT0Z+15K*XXI)*4D,FK'-K?@GN:KGZ[J>Z"D2V[J>XO MD2X5U+UM!@_02H\];Z"FB$.F& YK/676 MF<-Q6R/>+Z"CZEM^V5P?>7%ZIUW>41U]_/[;QI3\I3JAJS?S#YNAPG_'Z9>O M];HW.8;A"VY^67/4ETF_6YM1)LZEBY'X6R^'YGHJ;10"VAAHZR?K0^L11J,N M^*=NR[C+WKAW9OI/ ;,>=?[M+FC[:_L'GM2\3]N &O[!+EW%1(^6,< BZO!T M0U(.P0+7B:.)% XW[X(X5+>VJVC_]AOJ^49OO^'-?%.U M7 5$MOWLEU>8C]Y+YK( 60JQH"1B@=6\3G%GM3#9\>:Z>D]2.^T@MPN&'E94 MPPFM3T5UHSO5(1?"[SZF;8>Y02]R;]L'S KK9"P>DB@95)TA2K90@M92$3-8 MM*YU,/QL?>:N]L #K]Q$0]\V%#K'US<0= M21S[@O<0J'I8<[676@?7O1Y8'GV#R^_XXO0S/:>&[JMK2MDE8R*2^N<6)2CC M!41'ZY0N.ZV\1"V:9YAW)W/LR]TC@K.9]'K,3.S3\#U[A.DQGS].-Y=8K MG[\KRV-K?N;N+"H&;E 1P%15B)G5G)@BC\YFK)7NVLC6'>T[Z,XRX9;\85D$ M&&,%J"0UQ"PC9$Q*.(KWB2WMT_H/TC.VJ6Z/E5UZL>PDC0ZL\L4=VTWQ U'P MOOQELQ/.B[(RP M<7'6' Z[P6T/V?0 N//%T)N/UA\6T_GZS9P6BK_C<<3EQ"0Q(KHV98/7EO+^.R[K*M[,OYVL M?\?UUT4^7U R7B?I#'@I+2CB#^E_3&"CU"HIY>/MW@4/%&]N\[9QH\_AP#,, MNSO$S_N3]>T5^2Q3+@;!)?2UK8D&YQ0#A[7-5.287-P70'=?-^YEO.='T($, M[\# />!]4IB/;]9XO)J0UG3!ADC:-(3S9A5<.>#",/)$C8RY]1'44S2-JZ<& M\]>;BJ(#:#T10+_^D68GN68:5RND_^7/X<>.7G+DDY&UDNS.5 0RXPF Z\0@O2F!$=?VM;W$Y\I>;M'9]R-58I"96:5 M HDQUF87'((@Y\=FGN-FF!YO/F-Q/U)_CI3O+@AKT-UX9QEV8/RW7=R+TVL+ MI6=OTE#960R1#)CGJ8;QMI#[3%&9UK3B4LL 9>M&68?0.W+MTW, ZH&NQX-+ MMP,DWUS!>1 9BY'<\@2V&$<: !D$KB*$J&S.')G2K0\R[J.CBQ%!SX"".T[J M@2+I %:?ER'C70?J/(O@4NT]28$CJ^-O52YD7#A&$":*+$1*KK2^\?,H06/; MY4/E?3>-W(CY8VSLAH2SH47LSI?&=$O9;8U(8ZY1H:)ME\,M%#F M4Z"@+8OP5,2R^VO'KFIJ!)Z!^=V!3KJAT&O+L:K3KU9ZE6%@FAFKM 0TEI0W M-PPB)]^!6!JM=$%HW3K$VI:V<<$VNC/62FH=H?%J*7]9+E:KB:+0"TLI8&N/ M#F5T@N(M,VAYJ7WV+"B;2-T;DT'(Z(4/F9OFG<#O)63<\]J1%-BN M@?18MUF/5R M:'&QN\KUJ52X>M:CBR=H&.$ 8Q>N//,Q1HG6.6\M9,,D$/H#1"L\6"0=I[AP M[7NL/-,QQG::_N-B-B.QU.X6$RNED<@])$DQFT*GP3O2 B&&$FC'"F''L5?M9Z'WEUH.QWLX%*0%%+,9"4K5WO'((/F ![8)&KJ2,K+GU;N/# N/_=S%762U-P*_;=KM?%J'Y;H)#C\L%]^G*Q+;/6N;Z$@F&),%YA*M MB,LZHRPQX"4QEYF*-K9.#3]&S\B1R;-BKIE<^LL:WS^U]._+Z1H7I1P5>G$= M /,=EZ?DCFO#:/- <2F3#8F96)A"S:7*HC$$LB-[9I%W(&/DV.59@/?,POI9 M8/E^_955Q!$4*B721 &L= %5&'ETH#";/),6/ME-JO*SC8 -@N7<%=9'6@ M*_AZGCO)^VSVX<4'SALZ7#6X?-;TSY:D/'\6:!\>/7,R*#,A(FT"B(;5>?'! MTE=1 C?TP^0TZO"3-B2X[]F7PQJN1+GX,I_^-^:)XSYZXP)D7ESM JC >:9 M"/3DW#B=3.O#O]TH_#G20+O@:9N!\HTDUH'AOV]U]\X6/YLE/L7\9OYAB=^G MBY/56=O="=<,T6L#F%A/Y M6%Q.18".0M8QR!9JCU,H)FN>9(P]LQ)T20)1!*]RZ_ERK6C_R:W GMAKO07V <+/L@$FRG/G M%$7GAI]UP*B%Z1R!%^08BU>N^=64K0C[R37W,T)W)Q'V.4#AS9S626B>'I0B MN>E([T?L$UC'MO?+T[]9WIQ\A MYU"M=/GHC^&/W\F[7D[#;/4.UYOVYK6C.>T89A2)-8"QFA:LN"+/1RK:0$DR M)X)TI74+K:>I&M>4ML+';0736!JC3OR^LZ:_+Y;_J"GI1<+5K47E'*)BVH(5 MCE1FM!:<5!JT)W?:N,"#8D-![&&RQK5Y@V.LD3SZ MEO9)A77S'7UHFW%A6= MXZ(P =9J \H% 5XJ^C8EH47),F#KP&$+LL:M QP<9(WDT1?(ZA4L+IA/J(D= M60A017MPT3+P,?MLE4G>M^[2??W]XU;L#0Z;73GHR>@[OE8EQ?>^H%YW\[ MX_Q9=I/V)\O6>?!V(&M<=[\91N[TS&TLD [2 M7/?L]LV)C3-%YZ@\"+7I6VWKD#9;.PT+&60H231OXO@ *2.WOVTM\D5[_G< MHXMNY?5B_5D#]$U.[SY;4OLBK>[_U7F[).MDG?@

7:S]PS!B:JI$QF M/.;FU?@NS35'6\MMB&=;X8C'/%RVW MD+FX:4SC-%I0B5D(09)="4FI0$ZPO%T@_,!5H*?>-/*HE=$ L!A*&ATHS6OM MNV[9E2N+_ASK8=WWZ\N3X9$9B_HY_ MFR\OKX7\I=J=K)WUU3IX7<@F2$_\]DX#2TXDK5E*HO7MR6;$=]-G%QWH2CR?+U:3X_KK:O?PG3Y[V%V@JM%J2=AY[TGXNG%Y923,+O8P<,= M#;6D;NBSH\$X^1R'2X:\_.JYR<([OA :A=<[::B6PJQ M>]_A:K'U3N!T_GZ._X%A>6/E$U>4Y%DHX,83KSEY2U[F D4:@85L(X&XD[RYJEK;F=NVZ1DO^_'6Y./GR]3<*#>KJ;TIA$E.M/C4, M;/:5^Q0-!Z$*2)^=MGN1C+%[E#[+B*>'3W^3#A_:RN\^6J)];;+%@,H*OQ M4"9QVITJ ^D$)C &GO)8?L3]%/\<+O.!L&KA+N\GXRZ]A%V=I*NE1Z%\"MF1 M?7.U5_$\ ^FLY^82)>RL91"F( MORI&")+,8K#)I:1D%O)Y5?:.YR>CN\+/"=D]Y?:SW*(YRGE:GUE_N+F 7[]I M?"+RZ#L&.=?8?E7/<3J!T16#QD,*M4^"21)"H+#)$3HSI\#?EM8)^2%/)ZY. MA%[AE$K/Q-^^HJX?EL?00Q_<7KU@8O3HEJ"^N+TKYB_3.=?7N%J M^F4>KOH!&9&$]ER#L+7^*:8,P8D"P1L=M>&Z-#_'&6XU'9]K[(+(.["X2\]KRUAFO^RD9^;)#)SA9-!=: ME] [+^#71FKC,@.?:[T'!8<08I'$*>N*-L84W7I6X$.TC N_%G)^$CI[,+T# M\%PL //1ZGQ-5[[3^76-Q$J*BGLP,I*%R)HL!&>\9O+0Y>A9<.T+Y]OYQA7(> BD_C.C[:I"X.!U*I"C2 EM\-FU MODG]&#UC7Z=N)?4'X72@"#J TYLY/0M7ZX^DL3_]$;Z=:^@ZV1S,]@[ \W)Q?+S(T_7I^V]5(N>+ M$$))$X*$E(2O77X4A&0"2*<,CUK9., @HWL(&?N2Z$#0.9SI'2#GM\42R;Z_ M_I&^AOF7FJFNL_+.UQ*T]XZ3>RASK0&)4H)GB4-B.@CG@A2J=;7"8_2,>X8P M&(Z:B: #.%WS-B]=T+>7%U.!= #O?[ZK8Y=<_!U#;;IXU@5EJ*M@C[YMX*M=VZ_T.0Y# M79*)H^2@C26H1J?!&9<@ZR1])J=,A)^I#^!5*<)F'MS1C7EPYPS/[^;NMHS8U!<%%B[>ZJ@R1B0)P*1!P.&(AIT.3/1/!?1C/B. MCSIWP=N#1YW/*MP.[/'EPE^<7G[YURDNB:BOIV_Q.\XV22%DR;$4+)AD31V" M&2B($@&<$\D*A3;KUJUFMJ.LDY//YX7-0^!M)\.>D'G=F-U=W\7!C-.<^8+@ M,HO$/Z; "2? %5:OP@=IY& W8; 3G#:$"$/@;"YN'K"XIOYMY/U:L,Q?IX0 MT-D*+B0#K4P 93:-[Y*%@*F4Z)-WS6N^'B&G$YRU!\%#<#M0(IV"2YPOA6>7 M;.(2=+ ,%-D"",4XD"8;87(TKOGUI$?(Z>0(=11P[2.1#L#UZ%%?X$QJ[3FY M&I(\9@P9?!UR7E"1'YUY#JFUT?P)3NA']>6:R:LK[-V3H(_9>!%C 8N;B1=6 M0E1%@BS2\,!$$RSABDG52@RA8>TQ$"OY9 M$,"C$M$DI;QN76QT\,G8.(?S.TE]EY.Q7430 9P>*#3@@5N3H@,E$CF/GM6F M?B4""AU1TB]#\T#R@/J.<0[I#X%0 [9W )[[2PT8$[*D9" ;32NQUD,TY!MR M1NZG01TKK. M[H;+F&.*H0;9U3B@K0T1A K913\+,V\7\ MRV=<'E]K>WHYYN3H]IB3"0M\/+<)<6 MSFCX^0UT&VUWD&RZPM8U#DXXETH&9D$[S.0[UVFQ7"-('HLRR7F;VM_]NX>0 M<9NY]XBR?:748WE>;:[2NOO(D\\\N-1N-ZH;%=35E]XS'MKZ@C+8"$9I4C:2 M.3)D:" D61!U#BA;)Q;NI^10-52WR?ORDD Y7?\64D7XZ5D$A0&=8+R0 K7D M+FJ>P(<0P&<47EI97/"-E_@@,6-G;P_&P&V]TH;M79BQN+XU4C-K)ZT3%F)D MI=[SUQ ]I[ #B^7""IM]Z_J+NU2,BYA&XKUG/,X!O.X.+>_"\446LMA@I'=D M0HEN4,H@K<-X""87%EV0%!T,BIDK6L;7-8?(^%'([,GPL9,!?YNOJFN'^1/. MIXOES6UUGG2V4DL5)4)R1=?U)'""(DOGA"DV2A.D>LJ%V?9E/2%D7Y$N!N1O M!XJFIB7H:<>56?6PXZR:$HU 3$A2)S.MA"+>.!W)@2^ZR!BRMJT-TWUTC)LW M&L8T'5W,_92,[-(<+.$G M(+,'NWL S;7M=*XJ/0L94V(@1$FU(#%"U$*!\5&1!<_9A=:^S%TJ^@++/K)] M)&+:@]%C^S!OYOF$;/8TS#[B=YR?W!C0GD7@0MH"*3!?[\8'B-E$X(X+;UT6 M[G87@0>,K+9:8>(MOSL0(?<-,9G)886?=3D;C%9K\Y)FJ"$E+65F*"50.JD$%@M*6T MXB4[XI%GK4LK'R6H)_CL(^_%4,P?VWMY8"4OCUY=5(L*3()' 63/*1#PM9,* MF6_(,8@4K>="/'F"M-6;QH5(0XDNAF+OV%BIU2!O%V%^BSFB*)5\$N"D(TUL MR1V+6.J_O':UN;3/5T8J#8X/@99B'/ WS&XS9'-Z?==4- M/*0Z>Y0AVK-[S0[K(9H7AGEF:*NXK<#P^'O&=6#;@J(A1SOP2^YS[L^:G7(3 MBDP:#'H$Q6HY>HD&? G*T3^9&VSLDCQ$R[@U, /E:5OPO5/\O*WU'LOS?<8# MV49M..A"BU)>%MH/CD.PQ5C)C#"R=4#T%$W]'4GO+ODMX+2W&,:V67_'V6SU M6UA^6;P(\W^\^_/1G\]UJS+):^4$)%?328E3$"EL@,!3LL4+H6[W37_ 6CWT MAOZ0L;\0%ZTY.C8L*NGOR^_UYA2&V45'BT0K*,$"CYG,;77#7"ZT'N\BTX[\ M_]OU"@] XKZG]W= V 8.!W-R;"C4Y/5OB*NJ-S>ZD_0D,SS2VH5F9(H-17Q< M.HA9.F.T#R5L%]32N80&4$D)2CH%7K $HTM M(7,OI-]*WK>?W(FT]Y'1HA7#QI;VYZ_39?X0ENO3:PLH)MD09.U0OBFG4AD< MDQFTE;).'#+.AZTD?M_3QS'QS:5^,./&EGQEQLO%=YR'\V)+HS%E2TYI<5F! MSE'HW MT3*(+$=@00<6HR9UMKU%O_GLD77\_E)Z2-Y[L&QLB1^E_SJ9KC:7A_ZZF$US M.'VYF)]=)KKH6Z&,%2$*$$X19^A;<(:"4HPL*F:J-1-; >#)5W6"AWVDN!B, MI2,"9+5<3S[6_DEG.\26)&OU$/.JMO67G-Q=56I_P:"B#P[%5J?B]-1K:4/Z M[BIE>..%6Z'!_AR687].]B#^"]>5.[2&%0C9U)F/6,!;'>E?(; 0?=9IJQXN MVP!@3(5P@+!NBWL/SHTL\-^G\^GQR?&%HO+66X89**:E.!?K'6'T ;)7I )= M9&F[^YQ/B/S&2T<6^CXB6[3@W]B"#S^N$9Z.DXP5\SP>_-OP[.#?\]+*?5N-5F=V=#J0V/PFH-FF].RU&2?4LU MMRVYBX5S"E\;GQ/>IF$K.+B?P_XWX7-G.+FX7H=:AY 39)6)':PP4G')04;K M4@I<86Y]'_XN%>.>%!XFU4<@L@>+.P#)B[#:4']A XT6,6D)1G!>#](=A'I9 MTB29>3'%*MFZ]=]-"OH!QS[R7#1C[MBIAEJ_]^G];Q]K_ZOW'S\>7=3O)6<= M\P),J'G16!0$5!0,HRB8+6*\??WTD0K(N\\?]]2XD?1;\6]L"+R9I[-Y"&%V M>S5'^3]/SCJE74"[V"1K/S13ZM7)Q"U!VR:@GYI$81.FYE9$NP M#,7I#NS+?:[9V\NV5D)[G;S,(%WEF$1%KGO5B*Z48KD,*C>_S?X805M!RO]< M;FP["70*I_-@[L5BN5S\42\@A&_TF_7I1-'BG#1D94LV]6)F@IAM[3PB4"'% MB7C[0L<@Z'J(O@XKYO:#Q1: :R*C#O!WLW%)5=83281Z)1EP5XN_,M:CAQB@ M>.4P*,^0MXZI[E+18;E=$RP=R.^Q7:AW)]5FOR^OEN&/O/ACOIK8Z%.PNH#P MA1S +,A'8#H!HT4E*;6SM]'R@*-TY]']W70^# (-&-B!PKC.EXGE5I&Q3J!% M)MH=L[7@M$!M@N5D*"S?+KAK:I#ZNPS2WN#LQ.->U$-=P.IR!8Q[YCU:2*JN M0#!/842LJ2GZ.E#,R&Z/7WA"1=QX?']5N0W5Q/Z,[$!5_(5BR-7;Q6I%2YB_ M_K$F-^EDNOI:#1\I0#*$$_1!&>4]2(P,%"<%Z&O5.K>H"EF^$J-KK#^>)*J_ MFK V2J6M-':'ES^#UQR_A#7FS\TG5+U/MDH,[O[J_8\D&QFY8 M ?0)K[-%?5Y<[*#7/[[A?'.X0JL\J^+X_]O[LN:X;F3-]_DOF,&^O$P$M?DJ M0BUJ1+8[_,3 2M5UL8ZZ%MFZOWZ 4U5]#HH ;E-W'"@]T-9X8##UT0X,7K%N[]D&DU!?^/!LXI8;D#K%[GEUZ T3 MVC-../ P.J&4L'CK&Y?:()#(61P"X]V+Z[M\L5N8$/Y'2-5(?I<6HHV^W7HC MSW>SN"%2"^.$ R*X--,MN'C3:Y'X9ZGF'FO=[2X\_:UN@O.* LSGX'%ID=GN MX_^M]#PM>>4C=W7R-O;M3#@'K3,42 +C$8A\ LIB Q#CFJ54D!'=I*?79[L) MTBN*+I^9\Q7$$IZJUW:8T%6D1;O+V>/$-;K1 7JB! ,L4I&>.+)X1R,-,-4F M^B&*!IZ[X*'45Y_J;M*T MM&=Y9B3YYR3THK";X+VB0/P+ %6#&&YF MA;818*(ELLG&)#)RB'*&@:1)71.!H.7>D/R-WAY]OYL(O<+8^V F5R @VX#( M%SUQ-RKJ6(BT!I"H2#MR"!A)(=!1S"6GU@I/,@O(X^]W$Y!7'$COS>1:)UE> MV6_>K::^"3L!M9'3+$^NFV6B93_JSSO5DG%N3)0'$&3JV:)YJ@^!'D!I$<0< M)__M# Y-_JF6SU@9=:'RQDJM"=!$MSWGTOAS38%GCF!AHZS[W",5]I!1?G;8 M2-P/J9.AK"X=1-JA_^,LGD[_,/9W<>,UHPP)"2!V+C)'2:"T4( +KI3#-'7\ M[EB>?_Q+9>L0,XI&?KY69)ML]G.Y_);ZLEM"D$0!>)V"##*)O&6)6=PCGOJT MP]RSP?;14;9\\?Q*I3^S*Q*8M>2OM^ 45U:RZ*$A(Z(]WDZL8C#*O F"&N2# M/-<=](B,LK6,9Q27H:RNK\)H(_@W5#&E9.2%-2)RQ7J9,G@P#?:DRG#J-,L] M9WR'A+(UC^?7+;U8/%RM-$L]/8\+]+:YNYNTK]P6>N;>-K.4AHF_^S319C,C MX,*MNS+IZ<=9:.9W[?=&>$=C/SG:<#H@MR5GNMXTOSB@Y[,?]73E7_XR WQ M7 D1((!:AKA[C8%.A7O(IY<)!#HH=.;='R6H\."ILTG.L\+<;*B4=MLBS[[K M6>30&VU_GS:W7_VTO8F;*SV-S@4GWE&!='(Y(:#.I3(&CH#53'/M&#*ZVSRJ MX]\I/'7H['*3F]45F.4GKXY1B^FGK)B4X&L?5G-[3<=_5-U G.HZ P,!&YIT+(V&9II\0;TE M.+7AS#ZH\SD591W EY.GD?P?+$$__-PT.2OCOZN;(.X0O=>?D97X$Z M^A0=HO4QN(J*=MIN8JU8+_[0$;=XI;>QD[:A^PVQ7NNX#: %3/'98('"R$>% M*RCR7G&9?01U+P++/IY[P4OQ;*C5F-#MX-D_9$P?W)GX9R,STF\2 &>-;'3^ M_$M$.8;QHDC$ T>)])A)(*U-'=Q2"QZ"*(!$"FHL)8KFKN=XT8C'/YH?[=G\ MF%Z\MNS],F_?FVFTP_-/)W=FVBS0N:T 1Q; RB"/O)$ M(^"5@1);[YW)[6L,(/,U14?Z2-FNICTW@D7MR>TFCV_M1CD#A:0B=7]PZ:$0 M!L9B"9BBR%A$4\HVLT0>IZBL\)U=))JSH3-8VK[[^:1Q5\MH3XSW8(YO:!ND M7[S]IN>WR91IGW?'<[[)SBQNG"30J7B ,^7C886)$%C9A=P'G9$7\ON9J\#E?K]83NZ2[+_Q,Q\FR\4F M&[1LFM7\4<#^\S^NWUY'5BVB49[NBI?RRU9N%O'J*<(B&$T!P3@ MR@V*ZI9 H+G!PD)'#,W=P?-%O?IU25D*_MY_9]-7V!E)2' ."!72VQJ<.3D:KB/8#^!=:?0O5K>KQ3+" MQC9C"30FBHG@@".I.8]2&&A) Q!6^X"Y0A3"3L#OKEP/YD-@:G+QK#3@5_[[ MLJ7Z$?U(6F08IP"G2=F4T"C_* W)IMA"SRQ4F'?"?,_B!8>+9X9]+.7>0-M/D?.1\AJ&R0,Z^ID!^!THKD MEWFS6'R9-REDL?@0V;>G/.61FWA#I$!(B!0+\P)0$T^@9D( Q4TTNXFT(73K MM]?SP_49G /Q;EZ(^17HJ7>;SZ[[ZZ[FB=/1F_O,9 M1 8HZ1D0G!H4L%$"Y^Z@?9*H^O35.$D[#QJE]=;QD[*)?7WVRQNL?#!:(\ ( MB6K>6@%DM.CBF>%&4$MHY%FW2L:.7RR;3#F3ICH+NVLL%KM:??\^G?CYAVAR MSJR/ROEVKN\>JGW'1)T[KSTZ8CQL%YFBO5_TSV1@I<#=)J>Q>(C4&>R,@D+,)C?%A61NRD#BW0T% M0!9%^>#,D^RS?GN05]:\RB4QNU?>N?"IP+8ZM;4;JA 56G$@HG>;9A1*$-6R M!TJXM%-,/,[M!IZBJ:R0G4T8>@I=+V2*5UQUW54[,U4O_(VQT:E.-S[4J0>+ MB%: "=P!)#D,UGCEL^>PNM)6UK*O1?X&(?4*--X[O][7PY.&&\B,#M(2@!0V M:9HEB0X-,2!H*H2B7*/LO73Z4UG67ZA%*D>B5T^[E9/JWV@R%3:^75U;?(\V_--$*V>/_OU63YG"Q\1YJ-SHSN:3K+]S[%,$$)4A$5K!4T)FD2%$'@8Y"1:+62": AAO&25MS8W [[7D(*1XHRWT3Y>%Z!X'S1/]NR\,OP M;O)CXJ)WL$C%XLVLW=8-MP@)IC3@U%M H4I#+K&,6])1#Z/@K,UMVA^GJ' = M_7C(=QL@Y>-_%8_7'Q%_OZ$O?M[JVK=Z\:V=:0&EL=)+#+B2*%5&1)6-4O*< M$!8\HHBKW$_8N]!5N%=@=MG*CD4%^JK=S<.E[=ZMYI/9[9=U>B9M;'$3H$@3 MOCP(6,2K.W@?;VVC@;.,!&'2?-[<.NLT584;!&:7KDF)J-5*1;R\H6"U1A1L%OJA<]4>A/K':>!GW(^.V;>S6 M9^9BM?S6S"?_DUHVO'GDF[@;YX32EL?#Y**&IHA H$BJJ2>:&XB1<=DGF>:A MO' SPG,+Z$O@665A7]K?F[25U'S8SQ;K_G?W[Z;7KM;NS]M^>(M?VC9H3L_< MO_SD]EO\Y44T0?6M;W^07J4\]+X>F6UY.0KSI' *<337T++[M\27X3&1FS?S M;:ETNTV3MK%U?>[S"4@0STPPP L9CV6 !ABI&=".2D$%=([G[F:>] MX%^D5A:WZU:F;WX^_)D-'2WVZS@&CDJ+JZC"#+:IK(]Q8()"(!KV1!!N4P_F M\V6IQA%?>.#:R\GLD1S8"\)?@4VTICS^X3:T+X.!CBD.H)5I5*:)W)/* FRSOMN^B"762F2Y E*F MMQTB#3#BPD4;4:N A%>:YGY+=8Y]E!7N$6*UJRM+8UR!G'_U\=*9V'@KM;;@ M)E,E:3"&.A3]812/O30!* @YP!QYK[F&#N4>0+:7D,)JM+A\-+G!JB*>_\7/ MV]E<,^O7+NWVC3\G 4IE $RN*S4HVCV(,,"P@U038K3(_1[B "F%DXNUR5T. MP H7R'Q-O&MO# 2#M=AA@"!4@"J1\A*, !R$P5!!JT,GW7:B&N;^@]4DJ@N8 M@L,Y7X.X;*24,%HXQ$+3@\4I5S\D[\="5^)#WD9A;+:-=I:*]G1J^<""A,Q%O#5/3*A)V6SB>WZ<_ M277A!VU5A*=>&/O7+.WK-QH?9]'[7*TKR]+HJ>MO>G;YO>U5T::$%A]GZYSZ MC4)(,X\

4[+;9'9LUCOC>*$"(4U@-'*!I1H"Z0A*GIW5%'B R5R)QAR MJ$/Y\0\5;G%01OJR(_!Z"ONV$\7T]..LW?"ZR4CFXKRC7SE3@5WWG=51)*<< MI0[:%)\+Z6$BC_(% P0<*L^D9]#COXOD]D<@7+)MH(B'W!N;1D%%:X=YGSI6 M.\V<\S)_^.?O(KF>,GN^(KD^\%=@[#ZMG?$">Z@4 3R$2+PR$B@1O6QEA./. M:,KLWT5RN87@:)%<'T0J$*>S%"K 8 EQT !K @>440*T-@9H(X3QSD$G7SQX M^,J+Y'J)U4L4R?7!N (YWU]W93'E4B$*B#3I!@IIFID0 #FF19!,"I:[2]Q? MI4BNEWQT*I+K U8%$I?!&PV<&H&H 2CN&,5"(C<X%0@8N_OOD^;G]Y?^?F/R2:P]FQ3GYO9CWA[^/75M+ANEGKZ^.?))_W< M+'_SRS1X_':6'N$^K+3^2[OIDQNDD">"8!"T8X!*[H!4D %+N:8F6*18;BDN MMME7GX(;AXA5\0+@;*Q:YU\^-//-?TI_#MTP2I&C"=60'E22>"5K;R4P M!F(6K^+(OMR-#EYVAZ\^<5?EN1LO3!5>V,*#EZ$,5@/$*81[] M-BJ,C/Z6=4!Y1 V&!H3T<0V>U^;(CM]]5G+_+9A5<*5\;[+F!&]GP'GQTPK MV[/*Z(SF*>0=):>$) ,=E4QV'2DJ3THN7A"8"HR ?\[F]U9-W,=F M&.3B1EHJ/6<." UUZH#M01JY#!B)"A9R D/V9KX'2*EDI&LF$K;G MX_NF\^>(.^S04J,OLDXTYAI>LOG6MA/JO?!(%03E. #,E ?4:@FD)1(0R(16 MU'(>24&Y%=!,<3J-EM" I8LT QH9KAIGFV0.QXZDN>R^> M14Y?&,H*A/? R7PWF:Z6F_#NXP-ZHP)6W,1-13ZZ](2" BV9!5I3PX*BA-/< ME04]22P;<'Q)]9D%I ID\&*VG+BTE\D/?^7M:CY93OSB_9]VNHKVSX?(XQ3" M6:U!?/" [EE\UZRBW\."8U!H#.(O(H.5%< @B8&71@@D(3,B][6>A?"R4;JS MR.O+ UJC)_)FM9C,_&)QY6_3U?!.+W7N=P5]/S':S>;;7_WW9IX> M-MV++%>,41(]82ZC[J,D8*!Y*@-PB@9"91"X4X>,/H'] [2,58E;%;]>.-D= MFR\MHG*707FF *46 8HQB@<3.N"I@ 8*!*7-[;<=IJ9P^4D.2=A57IE8_THT MTJ.&VWKJ%]& N/P>C8S$S77DZ5.S&),'&/O)&$DCXG(J-X9U*F-I,#1G)A4T-@K:Y:-;/ M!2343B-G 712 "I" -I0#H*,KKFA;<'U>31Z#6]],@*[*S*#N5RZIT'D^[?) MTMOE:JZG'^;Z+AZKS6ZV+0HY<=!S WP@J6LR])$OEL?-*:Z)26->V2F[J]NG MJKC*AF#8G(VA58G'+VF>TW9$KR6("(, (2[Z-#JUD_?$ **@A,(Q*7>-HRY2 M\>@+A2NDSR ,0]E7E0QL:D<73T6:>:J5"!YX;E/JG]EXTR(/%",\6GW:6H+[ M2\/>;Q6NX#V#7(QG:6D)^93:LES9Z+ZFHL3X[ZV4$TQ#:J"NK:*)/Q)HQ070 M2'FN='I2VZTASH$/%"XIS2,+.9A7@:'YMIE'JSP:6!I6#7^BK?3^KU?SIO:L;FXF M[A?N1OY\!YN3I80Q4*2>7\FPIC2DCNK! $&A==@:IO5Y)*BDAYL+TZ,B,H#! M%=Q+]\'TK;._T9:16*JX0L"9$+TPG2Y:QC$@1B$I@Y44YKZ7#I!2D\@,P;C) MS_ *Y.;CK%VKW<+[Z22Z\2V7-IN).M=+(:-)1J-=1IV'\=;5*D6["4%!(^)S M#Z@[2E"YT0AGD:%\S*_B%>^1"_W3_?,R9)SA@7C ".0I8T* )(X#2*F*[AY1 M4J',(M6%KFHF(+Q,[#\W4A5HLB-[^C)OPF29$LP/E58VN@H<(6 "@H 2%G]% MF0%8*X6#THBS[*,W^Q!819 XHWQT%\"18%6A";_Z'WZV\NNBNUF[B7]-EM_> MKA;+YL[/UT5Y*8^\6/CX__06Z 8SB)T0",CH' ,:60L4-QP(20PQD')&<^?A M!Y!9K5R.%9MG7)CCJ4[LH]H"S+#5\7AS([$)4J!9($"))CR5@LNLC\R[$%>V:OS/-)TN*8M+UH5 M^!=/-I3ZD[9Q1QVH45A0X!1/1<^( BT( BIY_I8%%G1^JVT/(;74KF6&?5\O MUU$8U"A(FTA2O-R3'1$O>FHHH%1"(#%L;4@GA1/.J-SED =(J4A3#0/YE-@, MX'CIXH-H>/ZWM\L/R2(-/SI!@$6TVPH#Q<>,.$1SU8R"A6U^1US63OA=8!V;2 M]^%Z'.2:LFEOJ O.A*7 M"L0L#5[98=FVPL$CKPRF@.M46H6E!4HQ"G @DB'"68"Y6_<>)*8BGV0LY,TY M^%^!(#VTWTZ-;:[UVL]WJJ$@U8A'3Q]PE#JL2L*!@@P#3CVET@ADLA5NLV'8( 2$ %% M'!?*:R]H_GK8@^04?A?V0G9V+CSJ%:WMX=/0R'@\ %0T,C :$F,"BD M("'W#7>4H!JZO&> O9LX#<"@ H%*1^QRW5!I^YY6*HFME&$>DR3WE\1D150K.$("?F4ACN%V!N%SY:?S1[2]^%GV$:=34%R[:>I-4 M]Y&Z1FY&'VPWYX-@@B '@DKEC,)+8$00 .) F0X^$)=]8&@? FL8$7 .,3L? M2A6(X)$0RJ>'RO+H;R@F!/ Z.:UIQ()RR !KF67!:1FR-X;J0E?AE]7EXYK# M$*I.ZKZE5@2+&RX=Q% PH*6/)R>XZ-=:@8&PQ.D@#:BWMWZ\VLDK3J%<;/="JP'0[W@S5!($TA,!//(*$(!,PM1!8;L6O3_%5K MQGM!WKEFO __*Q"D0]7+U$-',6& *&H =5H!36G<"W9!8R.]<;E#9*^L9KP7 MT!UKQOMPO0+A.5*Y#+FFB@@@F4J=E"@#VG(&)"0H&@,F;D;_U6O&QPA0'LY7 M($(':Y>Q@<'!(("*ZCGUPM% (H]2BU>E'.3*9&_K_]IJQL<(4!:^5R _G1*0 M(5[PD44L53G =-.;U%>)@O1,73"%<;0@:ZUJJN.UYGDL[V$(U2AUBQOAI0]1 MMX(0HK-*XU?CU1T]5L:4$HPJ:U7N:([1,L$9C79C M_'1ZP(@Y4$IQP)5EC H32+>Q.'^]A'XO,>B5T.^#20T"]B29X()$C-#HR#J' MTA".U)8Y[L %#04R#B/SEQTEW O8HPG]/ERN*F.[-_\<+4DLHB,,.&0,4&XI MD)!R V!:?8R(KM5X/\)"?U>&/9+Z/=A:%7BL3_[#"&*)T-KH'@:G$&C"RNM MH(! )(QF05"M^\M']0G]/ (RGJ45W#&'TLPZVG7,,PA":D='-?'1YA,>I"Z' M'(DHZ]UZ^OUG)?2'"$Y.3E<@,)V"&HHZ8WP;;S(*QR M/]C-%F"L(K4_Q@;.CE!M4K?9S TES$1"TW@ &%)V$ *-H :!Q;.HI52.GC6, MO:&C(C<^"]K'Q&D(ZVL3G^W33R.((9)Z0%"TX"@*$!B(73QC-LWZ)L&[\V9! M>KRZ+?L<,IOX#&%]!>+S1?]L?I]=S_5L,5U#MC$1+]Q_ MKQ;+M/$;(KV3P40]*].1P:F/!PT4:!*L-]8'%,Z:3^M"9-DV8$5NPGR@5:#G M]E[U@7IE@XFVIU)IW(ED45<["+!-\RJ,]RJ(6JRLL[4\*6-E]6%]G?/WKE9F MX?^]BLN\_Y'4]XA4[J&E1J=Q.]&8*86[^ZW['!O66E/+-.!:1 $2S@*CXS5& MK8__!8NH0+(_USM R^BTQ=-UUPXMY,I[*2V S+F40XS[\Y0"8@-B5EAF=.[R MM7UT% Y3YT#_6?YB++LKN'AV]Q#_6IO705Y0;CD'&B(6WI]QL(K4(R30$6:5^)ZE"CSB@,'5 6HZELM X MF]LS.TA,7;(S".K3XC. [_4)T#8DCX-%0BD@@Q71D",J&G+: R,(- $*9O&9 M+^,JDJIY0#XN.@,X7H'8;(L0+NR_5Y/%Y+X=L"64$$4U4-I20(TS0',J %'( MA7C#P\!R:YT#I!1.=>2^KW(PO%*Y2;^<^^W14H%CSTE(CPQ("JQ3(!TT@'-L MH+?.DNRC 4X2558-98&^@S@-QZ%TH<<___5Q%I>RS:=/;[=U*BQ=XHX HE5T M(Y!-;^:\ UYXEY[):+([F>U 8N3AA'(-?G86(%ZV5&[#Y$IJA&56" @ M61J4K'6F6(L^!_Z2ME162\H 2?8 M7$8&HHZ^66_EKM7-#W;IT'OD\(H92/S'[/LD+7H=[XLW\8>_9R'S^:I%+*:3 M6&PEJA-'"AK13^CSRV^-RXS7SII%8GO#T-K/C4JP^A(_NYS?S=R'J;[-@M33 M%8M<]H-PVLN)2E!*)_[M;.'F^6#:6;+(E3Q8^SWG125 _5?SQP-]>37@@:6+ MU(0- NXX;PH#>'^G3NZ\^]#,DVWXJYZ./F['UNT"'2\*70>NU'#P%F^GS<)? M-_?DIIAFQM-W8OTN.(KR1[ ;EZK%\TPP=D)/5HI>):!]G+G)CXE;Z6F;=Q\# MU,Y299VRXSQO3C&@]%&:3A_H.AW@Z7"(]BU8#*$#/&^Z,:""?--#..GXH1D2 M>7NZ=EEGN=,I.LJ4[&"]=$)L_ZYV\ZCG#$R6%_?[!LWB>_R\G;2L^#JY_;9<7%U\O3J+6)S^7MERP1<4C\ZL M+VW [+L]XHV>=IC?&]@NW$4,U-DNR\'^P Y?:H#NGS,WG_Z\O?)V-5^W4[Q; MCL=M[ZJ=5#LLC]HQEM0 V?L_Y_;+?&(SG*^'I3J!4T%J[=GF:T#DEW@#+-_I MI?^@)_-?]725 9H]:W;"J(*$VF%V% ;KZ[YZE@*\$T2/++Y+H'[UMOGAYS\OP[-O/1.& M07+?Z0,CCNQFU>UGQD>9]RY8+$#6!Y_'A_486PHKV511MVF"F^Z T='F?>L5 MP^LHWYM.3/A+YP'.8IUT!>7O#,#?&8!>V'QN9I]]DP.4IRN5RY@=XW5S8N,5 MW2M^^3! +>G7;!?,LX6+*;6AED$7-I56>;>WR\VF1D>;GBY5K))Q*%K[65$8 MGRU!,SW]N9@L\A3I'%RT6%7C2-O[('L*HW>U_/W+W%[.KQ?S]XOEY&XS93)? MN7>G#Q0K>1R*:A^V%4;XX[/;C*KT\*K%:B"'8GF20?5<@)^;Y6_^ M_J;VN>J1NWR@6$EDALOR)-L*(_PA+MK,_':G.1*B!Y8L5AHY%,7CK*D+MWOM(3"S'[V[;"<0JXIUG>9115F!QB^B7_C5 MMWWV[K.!691RC\]T KFJT%=_'M9:!?3EQ[DJ@)ZNG*7ZYPBQ&2I_ONB?ORX> M];;)7?C39?T1YSHR9WRMS_TBQ1*N/5!X?")W=U\Z(?2GMZOEY(=_&]7$;3/_ M.;IT9/^*Y6#:Y7?3N%SUU5$HFGY\*0S=%]]D MP.EAE9(U):=YW1S9>/DBGTC2YRQP[*Y5[E%O3U .,.'O6L67O&G^KD_\NSZQ M'S;NOZ^;UA\?>SR>KE2LC.K8Z=B[V=( 3*?W9.4Y&KO+E;O6][*[Z;+WTJ#< MWB[;5TNSQ>Q7'0_OU>KN;AVW6BQGUV;ZH9E??)^:Z6_S')CU_EI)2^T08DT& M]E4 >Z(Y;G%Q]<.^72PSH;MWT9*674<0CS&CM/.3&Z?!&)WGH)WB?M.-%96@ M]&4^SP[4[IKESM, K XPI'24[M_+GQ=_S-TBD9@!JGWKE6L5W$GM'6%!+>"< MV1SI\YUR<;PC,.U#\]78($\V]OY/.[V-%M37[_.E>[Z%W">TV^?*/=+LB7EO M#A:&_K?Y^YG[D-I=7(;[3?PRGR7"W_Z8N]_F*9?N9K<7,_?/V8_%TF40@,$? MK>/H]\.WR163H& M?[38,\_L.F00LTN7,6\)7],[<\_OS;7B^S!U[=[>-C.W>#>/O\@E.9E(*/:P M-(\IO_^Q^)KF-JTK>OE-#$H M3:C()5(YOE_L<6L>>GI+EZGNKC1J1_E2NKPLDN+N:[$N M0YC8N.Z'69ZS=GKUK+Y_7"Q6&1$]MFXQVW>H'CW- MH](:]5OJW>_N"34(DQL?= MYD*WYZ?*]0D9"/8N4PR]TP?*=1K)AO5AME6'\+,@\[F0/O*A3HA7%3L:P,;" MR.]1/VGGF^!7'M"[?J,3WC5%GWHRK[I#?KG\YN=G/M_[O]$)ZIH"5SV95_I4 M:[.:ZOFGR6*9,=5]>-5.<-84SCK)H-( /MQLOHXR[]%P]*U7Q36%22HL4VUFOT3# M94/8.[^P\TF;ALE4IWIZ^4X@UA0 Z2FR2Z])1"_.-A=[G2SZ=6[X1L M3;&0S@PK?:W-%K,WL[!,3XBRU1\?6+/3FX":HB(GF%.\@N#A]5>^4H']:W:" MKJ8PR GFU#I]X.-L,8G,O)[K=O+D?)[JIM-4A9T(P,A1!$<^DV4N0==M9!A2 M\.Q3S\1B8+/?@\N.B4#?+_PN))S/D(,TIG"NY)&_V6 M=&>I8M@5"IZ77HQG>[1)7G:Y1Y>N *LCG3./[^(UG(^O?;SN\5EN)Z[*%]YK/DCRQ8[0_ULA-.,*6XI)*IR3&Y\NE*Q]_-] M;;@]VZ\%DNO)S_83C.F"@78TI4>P>AE#B7X9+EB+]J' M*,)]C*A(&5[/[V;+O+KPT9+%WK(/5X7/&5*7)LP$V.%5BSUC'Z4'JX-MZS#, M[R;KH?"9-.'NBN5>K@_1A@?X4056[__\/IGGA&IGP7+OTH<@M9\;50#U;K4F M+ -$]TN5>V4^!)Q=#E0!RY6WJ_ED.?&+B]O;BQ]Z,AW]ON'(NN7>B0\!["AO M7D1O9T\.-//9.1#'GA_>N/2IILEG>/ ME\[E>Y]>O9+4\5'#)L'YV?F^6&U#SQ_NY?J23\/Q+G(_P[OT;? M_"#]P^B%_[__Z_\#4$L#!!0 ( ER1%F)P7^\> < 'TB 7 87!O M9RUE>#,Q,5\R,#(T,#@S,2YH=&W=6MMNXS80?>]7L FZ%\!V?,W%R0;8;E,@ M+]UV&Z"/!26-+"*2J)*4'??K>X:4+['CK/?2-IL\*)8X' YG#L\,15UDKL@O M+S*2R>5W%]^WV^(G'=<%E4[$AJ2C1-16E1/Q1T+V5K3;C=0[7EI M/.R/*$KCX\%I=-+MQ]3M]8=_]@[0%>*ACW7SG-X<%*IL9\3CCX?]SLFHL3EV:"N3M=C7NG4+MF>PQGD_F?C']W M]>'F^N?K=V]OKM__LH_U9]6_[^?AIJE]!L=U2]S,Q8>.^%WE$9E,F[(E8C). MI7/A,NE>'(Y.S_>9PS'&JV228'VTW#\O\VSUUG,X;\? M_;Y;^J>=$;OA6F1R2L+05-$,S.(R9<5?M33 ;3['\TH;)W0I?M:F>''8.^Z> M][KMWX1.Q=M*3XC$%4.\,LJ2;8GK,NX@5F?/(%;])Q>K'Z5%A!"+8BYN2SW+ M*9E0*X2L"52B84*ID2DP@E2ED.5@.2Q(R M8I:I.!.VYLNJ_XP,-4IX H6R.9(3Y[F9V)I,Y'F>F87 M(#4T4=89B8$D/PQVP\K6&M;LPI@M:Y\)W(9/#FXW]V+SXO"TWSLYMPV@FO* M"4*GJ<*MC]JUD(8\/A!O%>7$<10$4$:YLAF+LU@! M&^E#GD.@-9+LW>D6O?=?>* EW MX59QCBP#0%F_8-I:PVW $=NR]T#IO8%2#,3SW$0S)#B_?W[YU.L?/R&(RM>A M!-F^8BN$@AM.\VGEXQ%M<<:+96WW[\*I)R*Q'"DD,UT;* !%3)7UQ ,I*KT> M+EQ7E+5.>X9RZ()J)!S/1&7 MK*FVG ?]ZK ^:7J:TI9@$#9\OE.%RD[%=2Z973$M;\0JGZ)'R,[K105^1<2" M($#TI^3S">]IP2G:$TY[+]\M5.V_\/<&%P Y50EC1EI=2F8X:8$WKK 82-(D MBZ "9DI&*E=NSJGNH6$9XC[^/K0!G?=$URHT3Z1WS82JVE2 EO6I.8ZU2;P! MOE:;4(F,FP-A:*&*HUX1"L,?I*ZTLD M"FT=GO#[*&BQ,50TFWSQ:H<)*5"$M;PAW9B,&IK\-I)WF&6]M.AUL">3=IGX MF 4\ZBCQ].@]T5#7')O%6\J;/>6&?.N+G?-E2'M2Q?GHF13G_FW3-728]_P JBT(Y1_0((T<::97;$P7[O))7 MP#((T#+!XC\7=XNE1W_5"N;[Q5:7L=]ZOG[^-3COT+E\40@X[SYX'Q,K0H2: MA+6LA64XK;721S)DL-%E$+WB>_[A$___*N M"70KI -53G4^)$UIGF0[\(._!"&'_*JFRLQ6,G>=1 M'VE[*F5I?'B!U#96>=T-.!C M00?_NF0Q<'-BV/$GAD=^Q"WR.B_>J.A==/#ID(-MT8/'CP>"@WDG6G/UI[ MYL]2FX?_/5S].?"+PR%6K;]NG?EM' I_76!^JT5U(._*,]A53Q,87$96V M_GQB'-X 3FGK&XD57+W#NZLN,@)F:[>[RZX/#W9^<-%#,Q,E\R,#(T,#@S M,2YH=&WM6FUO&S<2_GZ_@N?@\@)(LB1+EB,K!G*I _B :ZY!T'X\<)>S6L*K MY9;D2E9__3U#KEYL68G2IJUJ7 +8WN5P.)QY^,R0W$GN9\75)">IKOXV^7N[ M+;XS:3VCTHO4DO2D1.UT.14_*7*WHMUNI-Z9:FGU-/>BW^T/Q$_&WNJYC.U> M^X*N5GHFI_%Y;ISK=EH:?E.$SI)'9=-:>F,';\K!O^77)+.Y,S72S'+S[I M&3GQ/2W$1S.3Y8N6DZ5K.[(ZBX)._T*P">:%QT4T>00]A2YI-85>GXV^OLMU MHKTXZW7Z]RW>GKBT4\S=FVKW[Q[^^GFP_>' M6/^Z^OW]/'C4U)N6^+?T/H>V?W7$!Y>0G;9$2M;K;"E\+OWS9\.+RT,F<8X! M*ZD4%DB[H S.Z:]BHDN%>(S;9^=_VD1[G=4<_OC1[[NE?]$9LAMN1"[G)"S- M-2U +3[73OQ<2PO@%DN\KXSUPI3BO;&SY\]ZY]W+7K?]@S"9>%N9*9&X9HQ7 M5CMR+7%3IAW$ZO43B%7_Z&+U3^D0(<1BMA2WI5D4I*;4BB%K J4,3"@-4@5& MD+H4LER*NO2V)LP R2/D$01/BAF>K):%R&2*5U:8&:C.FRBW(U!22LY)NV21 MF;PEC+NET^&=@C$8L@A)"&.P0*HMD@[$2G2')8JL6.0ZS86K^<>F_X(L-4IX M C/M"F0G3G0+[7-,T%64!@-9;P73C,(TY^BF1++<=L,30>#97P>!)#)=(L8, METU,6X ?Q-%LM]IUF8%+I-?0H\NTJ!5T C=; 6P!U+IZ= V@FO* "<)DF<9CB-J-D)8"/A!O MG13$<10$4":%=CF+L]@,Y,@$R<]*N[0PKD8_IDUKB@B4RIJ4%%X[\1*X4 2@ MQ>!?WZ6Y+*A7->0F(]4LRBIK90 &Z::Q<8#U)4!CU<,6^X=&?U*]GVN/"<7(\ M.!YUSD>[.#Z8L';@?#C5'8QJK(2Y5@Q6Z4PIF=.E ]"YIF0$2ZM6: *^M4QT MH?V2D_MCP_+:"L +F(K+XI[H5DT:4L==,Z&JMA4P[4(QDJ;&JF! J$ZG5*+& M* !MM%#%:X9%4'E'^&)MZ0KL_50 G!X/@%=$3'-9U(&M.+J49:@/]1QQ<8_4 M>>M:X@#VC8^/EWX!K^@(YG2QP$Q,[?=;<$A^D&MIXNHY^_)^1R2KNCPLP<83 ML"? C0=X I!3QP.Y-6?&:.ZB@G?=3>$66AZ%WE=SDZ:UY=AO)<^-UA?( MR<9YO.%#1VAQ*50T!SGBY1X3,L 7[/5 NC$9^R0*1P5\BE#6:XM>17MRZ=8U M!O->@#NID!"")QJR7HI"WU+1G!L\D&_]9N?\-H@?U09L^$0V8.%$<;TV6AMV M8K+<1NF&J!AG7U%S[%2O:],D*EAOK%NG^? "*F0DL@WD=,SM^;D[&35H5FUXZ[H!<^N]'U&M%_=L?#VU3RO^8=^C"[\ MXP'?C8 :8-V'G[N7X6NT_!%T?\ 4$L#!!0 ( M ER1%DJ+G"Q?P0 "D1 7 87!O9RUE>#,R,5\R,#(T,#@S,2YH=&W= M6&U/XS@0_GZ_PE=T+$A-2=+T+2E(O5)T2"?*TJ*]^W1R8Z>U2.RL[0"]7W]C M)X%"MZM*=[L+UP]5DO&,GWGF\<3.<*6S]&RXHIB<_33\V7'0N8B+C'*-8DFQ MI@05BO$E^D2HND..4XT:BWPMV7*ED>_Z ?HDY!V[QZ5=,YW2LSK.\*2\'Y[8 M288+0=9G0\+N$2.G#4:\P.]W%P'MMX, !T$_[OE^KXL''<]+>J3[E]< 5QA> M^BB]3NEI(V/<65$S?QCXK5XGU]$#(WH5>J[[2\,./1LF@FN83X)_>5F&V0JF MZ:-V<,J6/+0I-4K7VAR+5,CPP+6_R%B>GT(NX$]!K*I_$'@QY.;^>7%Y7@TOYQ>H>O;F]GMZ&J.YM.=F;P5Y%X? MW;9FK7$+S29CB]YK=]SFF\<]FJ'1^?1Z/CE_5W17)!\>>%TW&KA=-+U \]\F M:#:Z^75T-9DYTS]^G_R)1N.YL?BNZ^^S%@;YMU^UP1?SN>0H%IS36#/!T0/3 M*Z17%'TLL 22TS6ZH;F0&HD$C7*QI!1-#/NY9(JJ)KKD<0L=&8_#@[[ON]%8 M9#GF:WOG1<<(@EX(F95\>:[S$25"VBER "P(HIQ DQX5RT)![_":94/&"B4L M!<,3HAF-"\DT@]0Q)VCR&*\P7U+HY%G&E#+H-W&4L&L8 +2)YI ,K!*6+JA< M"9-1$\TRR!B[R0JL#@ MK07R^F6*U5HT-[VHRMJL1Y,1)B(W;Z1-O\V!1D[59#,L%YA3Y4P?4[I&H]A6 MP,BI"7:LT0(KB 1)9VMTQ\4#<+6DAP>=?K2GWJ(<$P)O1B>EB0[;W;H9,VX( M"1W3GG^0)H^\XSJ)[S_]2UZZK79@>)A#3:J5D!0I+(L8U) :,3X)5-+/!9/4 M[!F4*=:L7%.U!HXP+ :)O,X1.7ZJ\K.FG_1&JK4]<;,],'<^@5IK1-8\9IBL -P. 4"J]RJ+5J6J^$ M<RO@ MTEQMD0>#5K_3-KMD#5MC3>J)JPUTRVZ@3S39MK5[K<' WVEV6]Y.V]?"=@"0 MV]\K[(F%7,(&8A04_;31;M0.E4Y#/W]$WLO=L9'N:VY*6K[_BG:?17)X$/0B M9?^WWJ]/ JI8^4K"KDEW3Y(J@=DC1 YIBY015.?[GACGOM2+X1L>^) MNVFL!="&@G*_^*\8.;&M:*OI?N'HO=$$7YW>?G1\'JO_R4\6)_43R#U!+ P04 " )7[$E MTUPR@XUM7@(VR0PE9)I.&W*!]-I/'6'+H(EM^2010G]]5[)-7CANF+9WEY0/ M#&:UN\\^^V@MN[]0:7+67U 2G7W7_]ZRX)R'RY1F"D)!B:(1+"7+YO AHO(. M+*M<->3Y6K#Y0H'G>"WXP,4=NR>%73&5T+,J3K]17/<;)DE_QJ/U63]B]\"B MTQIS7>+,O&:7QF&[Y?8Z79?0;M2C7M1VJ..T_G1KZ(K+"Q^IU@D]K:4LLQ94 MY_=;GGW2SE6P8I%:^*[C_% S2\_Z,<\4YA/H7_PLPFP%4_1!621A\\PW)=4* MU\H<\H0+_\ QGT!;K)BD+%G[[Z8LI1*NZ IN>$JR=W5),FE)*EA<+)3L+XJ8 M$)ZY7!603S!.PC):E>!Z&O3H8<%F3$'3L[WGB)\63L0<:U<\]]TNAGV"/42R MJ?A&X(>CF^GEQ>5P,+T<7\'U[EX9R6O!;G;A5M[8@]MF(R&!KW; M;#OU5X][,('!^?AZ.CI_4W27)!\>N!TGZ#D=&%_ ]*<13 8W/PZN1A-K_/LO MHS]@,)QJB^^V%7O[E=VWKD_5<9A#R+*.A8CR#%5,+4 L*[Y=$(,G)&FYH MSH4"'L,@YW-*8:39SP635-;A,@MM.-(>AP==SW."(4]SDJW-E1L< P:]X"(M M^'(=ZSW$7)@4.0+F$= LPB$]6,Z7$F>'6R\&,I$0LP0-&T03&BX%4PQ+)UD$ MHX=P0;(YQ4F>IDQ*C?XIC@)V!0.!UN%7HG#!"GZV82QG5,SK& 6C*G9/X3<6 M4K@65+)(WSQTBN&"T1@N6$:RD)$$QG&,BX2F0B^HOR$D4X9W22FBL_&:G&LXLTX3X MEA[7WTBC1^YQ5<373_^IMB3B[F."MT:^O:3)($T W!X)Q 0XZ]EG7C%6_F M!P:,F FMIPNN6B:%,CB.0I-3OI@M]E:C_V.Z>GLUJY#L/J)K&T$I,DMH99UQ M$5%A(=2$Y)+ZU8\@8C)/R-IGF_M6NQ%/2&UL M4$L! A0#% @ "7)$64L :>J4X@ MJP( !4 ( !)'H! M &%P;VM< @!A<&]G+3(P,C0P.#,Q7W!R92YX;6Q0 M2P$"% ,4 " )#,Q,5\R,#(T,#@S,2YH=&U02P$"% ,4 " )#,Q,E\R,#(T,#@S,2YH M=&U02P$"% ,4 " )#,R,5\R,#(T,#@S,2YH=&U02P$"% ,4 " )#,R,E\R,#(T,#@S ;,2YH=&U02P4& H "@"> @ J_(" end XML 83 apog-20240831_htm.xml IDEA: XBRL DOCUMENT 0000006845 2024-03-03 2024-08-31 0000006845 2024-10-01 0000006845 2024-08-31 0000006845 2024-03-02 0000006845 2024-06-02 2024-08-31 0000006845 2023-05-28 2023-08-26 0000006845 2023-02-26 2023-08-26 0000006845 2023-02-25 0000006845 2023-08-26 0000006845 us-gaap:CommonStockMember 2024-03-02 0000006845 us-gaap:AdditionalPaidInCapitalMember 2024-03-02 0000006845 us-gaap:RetainedEarningsMember 2024-03-02 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-02 0000006845 us-gaap:RetainedEarningsMember 2024-03-03 2024-06-01 0000006845 2024-03-03 2024-06-01 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-03-03 2024-06-01 0000006845 us-gaap:CommonStockMember 2024-03-03 2024-06-01 0000006845 us-gaap:AdditionalPaidInCapitalMember 2024-03-03 2024-06-01 0000006845 us-gaap:CommonStockMember 2024-06-01 0000006845 us-gaap:AdditionalPaidInCapitalMember 2024-06-01 0000006845 us-gaap:RetainedEarningsMember 2024-06-01 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-01 0000006845 2024-06-01 0000006845 us-gaap:RetainedEarningsMember 2024-06-02 2024-08-31 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-06-02 2024-08-31 0000006845 us-gaap:CommonStockMember 2024-06-02 2024-08-31 0000006845 us-gaap:AdditionalPaidInCapitalMember 2024-06-02 2024-08-31 0000006845 us-gaap:CommonStockMember 2024-08-31 0000006845 us-gaap:AdditionalPaidInCapitalMember 2024-08-31 0000006845 us-gaap:RetainedEarningsMember 2024-08-31 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2024-08-31 0000006845 us-gaap:CommonStockMember 2023-02-25 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-02-25 0000006845 us-gaap:RetainedEarningsMember 2023-02-25 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-02-25 0000006845 us-gaap:RetainedEarningsMember 2023-02-26 2023-05-27 0000006845 2023-02-26 2023-05-27 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-02-26 2023-05-27 0000006845 us-gaap:CommonStockMember 2023-02-26 2023-05-27 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-02-26 2023-05-27 0000006845 us-gaap:CommonStockMember 2023-05-27 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-05-27 0000006845 us-gaap:RetainedEarningsMember 2023-05-27 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-05-27 0000006845 2023-05-27 0000006845 us-gaap:RetainedEarningsMember 2023-05-28 2023-08-26 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-05-28 2023-08-26 0000006845 us-gaap:CommonStockMember 2023-05-28 2023-08-26 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-05-28 2023-08-26 0000006845 us-gaap:CommonStockMember 2023-08-26 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-08-26 0000006845 us-gaap:RetainedEarningsMember 2023-08-26 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-08-26 0000006845 us-gaap:TransferredAtPointInTimeMember 2024-06-02 2024-08-31 0000006845 us-gaap:TransferredAtPointInTimeMember 2023-05-28 2023-08-26 0000006845 us-gaap:TransferredAtPointInTimeMember 2024-03-03 2024-08-31 0000006845 us-gaap:TransferredAtPointInTimeMember 2023-02-26 2023-08-26 0000006845 apog:TransferredOverTimeInputMethodMember 2024-06-02 2024-08-31 0000006845 apog:TransferredOverTimeInputMethodMember 2023-05-28 2023-08-26 0000006845 apog:TransferredOverTimeInputMethodMember 2024-03-03 2024-08-31 0000006845 apog:TransferredOverTimeInputMethodMember 2023-02-26 2023-08-26 0000006845 apog:TransferredOverTimeOutputMethodMember 2024-06-02 2024-08-31 0000006845 apog:TransferredOverTimeOutputMethodMember 2023-05-28 2023-08-26 0000006845 apog:TransferredOverTimeOutputMethodMember 2024-03-03 2024-08-31 0000006845 apog:TransferredOverTimeOutputMethodMember 2023-02-26 2023-08-26 0000006845 us-gaap:TradeAccountsReceivableMember 2024-08-31 0000006845 us-gaap:TradeAccountsReceivableMember 2024-03-02 0000006845 apog:AccountsReceivableConstructionContractsMember 2024-08-31 0000006845 apog:AccountsReceivableConstructionContractsMember 2024-03-02 0000006845 2024-09-01 2024-08-31 0000006845 2025-08-31 2024-08-31 0000006845 2026-08-30 2024-08-31 0000006845 apog:MunicipalandCorporateBondsMember 2024-08-31 0000006845 apog:MunicipalandCorporateBondsMember 2024-03-02 0000006845 us-gaap:InterestRateSwapMember us-gaap:DesignatedAsHedgingInstrumentMember 2024-08-31 0000006845 us-gaap:CommodityOptionMember us-gaap:DesignatedAsHedgingInstrumentMember 2024-08-31 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:DesignatedAsHedgingInstrumentMember 2024-08-31 0000006845 us-gaap:FairValueInputsLevel1Member 2024-08-31 0000006845 us-gaap:FairValueInputsLevel2Member 2024-08-31 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel1Member 2024-08-31 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2024-08-31 0000006845 us-gaap:ForeignExchangeForwardMember 2024-08-31 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel1Member 2024-08-31 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2024-08-31 0000006845 us-gaap:InterestRateSwapMember 2024-08-31 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel1Member 2024-08-31 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel2Member 2024-08-31 0000006845 us-gaap:CommodityOptionMember 2024-08-31 0000006845 us-gaap:FairValueInputsLevel1Member 2024-03-02 0000006845 us-gaap:FairValueInputsLevel2Member 2024-03-02 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel1Member 2024-03-02 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2024-03-02 0000006845 us-gaap:ForeignExchangeForwardMember 2024-03-02 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel1Member 2024-03-02 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2024-03-02 0000006845 us-gaap:InterestRateSwapMember 2024-03-02 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel1Member 2024-03-02 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel2Member 2024-03-02 0000006845 us-gaap:CommodityOptionMember 2024-03-02 0000006845 apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 0000006845 us-gaap:RevolvingCreditFacilityMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 0000006845 us-gaap:RevolvingCreditFacilityMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 2024-07-19 0000006845 apog:TermLoanFacilityMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 0000006845 apog:RevolvingCreditFacilityCADMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 0000006845 apog:TermLoanFacilityMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 2024-07-19 0000006845 apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-07-19 2024-07-19 0000006845 us-gaap:RevolvingCreditFacilityMember us-gaap:LineOfCreditMember 2024-08-31 0000006845 apog:TermLoanFacilityMember apog:UnsecuredSeniorCreditFacilityMember us-gaap:LineOfCreditMember 2024-08-31 0000006845 us-gaap:RevolvingCreditFacilityMember apog:WellsFargoBankN.A.Member us-gaap:LineOfCreditMember 2024-08-31 0000006845 us-gaap:RevolvingCreditFacilityMember apog:BankOfMontrealMember us-gaap:LineOfCreditMember 2024-08-31 0000006845 us-gaap:RevolvingCreditFacilityMember apog:WellsFargoBankN.A.Member us-gaap:LineOfCreditMember 2024-03-02 0000006845 apog:CanadianCreditFacilitiesMember apog:BankOfMontrealMember us-gaap:LineOfCreditMember 2024-03-02 0000006845 apog:LenderFeesMember 2024-06-02 2024-08-31 0000006845 apog:ThirdPartyFeesMember 2024-06-02 2024-08-31 0000006845 us-gaap:LineOfCreditMember 2024-08-31 0000006845 us-gaap:RevolvingCreditFacilityMember us-gaap:LineOfCreditMember apog:AcquisitionHolidayConditionMember 2024-08-31 0000006845 srt:MinimumMember us-gaap:LineOfCreditMember us-gaap:BaseRateMember 2024-03-03 2024-08-31 0000006845 srt:MaximumMember us-gaap:LineOfCreditMember us-gaap:BaseRateMember 2024-03-03 2024-08-31 0000006845 srt:MinimumMember us-gaap:LineOfCreditMember apog:TermSOFRAndCORRAMember 2024-03-03 2024-08-31 0000006845 srt:MaximumMember us-gaap:LineOfCreditMember apog:TermSOFRAndCORRAMember 2024-03-03 2024-08-31 0000006845 srt:MinimumMember us-gaap:LineOfCreditMember apog:IncrementalTermSOFRAndCORRAAdjustmentMember 2024-03-03 2024-08-31 0000006845 srt:MaximumMember us-gaap:LineOfCreditMember apog:IncrementalTermSOFRAndCORRAAdjustmentMember 2024-03-03 2024-08-31 0000006845 apog:IndustrialRevenueBondsMember 2024-08-31 0000006845 apog:August2025Member 2024-03-03 2024-08-31 0000006845 apog:August2025Member 2024-08-31 0000006845 apog:September2025Member 2024-03-03 2024-08-31 0000006845 apog:September2025Member 2024-08-31 0000006845 2022-12-01 2022-12-31 0000006845 apog:ShareRepurchaseProgramMember 2024-03-03 2024-08-31 0000006845 apog:ShareRepurchaseProgramMember 2023-02-26 2023-08-26 0000006845 apog:ShareRepurchaseProgramMember 2023-02-26 2024-06-01 0000006845 apog:ShareRepurchaseProgramMember 2024-08-31 0000006845 us-gaap:RestrictedStockMember 2024-03-03 2024-08-31 0000006845 us-gaap:PerformanceSharesMember 2024-03-03 2024-08-31 0000006845 srt:MinimumMember us-gaap:RestrictedStockMember 2024-03-03 2024-08-31 0000006845 srt:MaximumMember us-gaap:RestrictedStockMember 2024-03-03 2024-08-31 0000006845 srt:MinimumMember us-gaap:PerformanceSharesMember 2024-08-31 0000006845 srt:MaximumMember us-gaap:PerformanceSharesMember 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2023-05-28 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2023-02-26 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2024-06-02 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2023-05-28 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2024-03-03 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2023-02-26 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2023-05-28 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2023-02-26 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2024-06-02 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2023-05-28 2023-08-26 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2024-03-03 2024-08-31 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2023-02-26 2023-08-26 0000006845 us-gaap:IntersegmentEliminationMember 2024-06-02 2024-08-31 0000006845 us-gaap:IntersegmentEliminationMember 2023-05-28 2023-08-26 0000006845 us-gaap:IntersegmentEliminationMember 2024-03-03 2024-08-31 0000006845 us-gaap:IntersegmentEliminationMember 2023-02-26 2023-08-26 0000006845 apog:ArchitecturalFramingSegmentMember 2024-06-02 2024-08-31 0000006845 apog:ArchitecturalFramingSegmentMember 2023-05-28 2023-08-26 0000006845 apog:ArchitecturalFramingSegmentMember 2024-03-03 2024-08-31 0000006845 apog:ArchitecturalFramingSegmentMember 2023-02-26 2023-08-26 0000006845 apog:ArchitecturalGlassMember 2024-06-02 2024-08-31 0000006845 apog:ArchitecturalGlassMember 2023-05-28 2023-08-26 0000006845 apog:ArchitecturalGlassMember 2024-03-03 2024-08-31 0000006845 apog:ArchitecturalGlassMember 2023-02-26 2023-08-26 0000006845 apog:ArchitecturalServicesSegmentMember 2024-06-02 2024-08-31 0000006845 apog:ArchitecturalServicesSegmentMember 2023-05-28 2023-08-26 0000006845 apog:ArchitecturalServicesSegmentMember 2024-03-03 2024-08-31 0000006845 apog:ArchitecturalServicesSegmentMember 2023-02-26 2023-08-26 0000006845 apog:LargeScaleOpticalMember 2024-06-02 2024-08-31 0000006845 apog:LargeScaleOpticalMember 2023-05-28 2023-08-26 0000006845 apog:LargeScaleOpticalMember 2024-03-03 2024-08-31 0000006845 apog:LargeScaleOpticalMember 2023-02-26 2023-08-26 0000006845 us-gaap:CorporateAndOtherMember 2024-06-02 2024-08-31 0000006845 us-gaap:CorporateAndOtherMember 2023-05-28 2023-08-26 0000006845 us-gaap:CorporateAndOtherMember 2024-03-03 2024-08-31 0000006845 us-gaap:CorporateAndOtherMember 2023-02-26 2023-08-26 0000006845 apog:ProjectFortifyMember 2024-06-02 2024-08-31 0000006845 us-gaap:CostOfSalesMember apog:ProjectFortifyMember 2024-06-02 2024-08-31 0000006845 us-gaap:SellingGeneralAndAdministrativeExpensesMember apog:ProjectFortifyMember 2024-06-02 2024-08-31 0000006845 apog:ProjectFortifyMember 2024-03-03 2024-08-31 0000006845 us-gaap:CostOfSalesMember apog:ProjectFortifyMember 2024-03-03 2024-08-31 0000006845 us-gaap:SellingGeneralAndAdministrativeExpensesMember apog:ProjectFortifyMember 2024-03-03 2024-08-31 0000006845 apog:ProjectFortifyMember 2023-02-26 2024-08-31 0000006845 srt:MinimumMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MaximumMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MinimumMember us-gaap:EmployeeSeveranceMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MaximumMember us-gaap:EmployeeSeveranceMember apog:ProjectFortifyMember 2024-08-31 0000006845 us-gaap:ContractTerminationMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MinimumMember us-gaap:OtherRestructuringMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MaximumMember us-gaap:OtherRestructuringMember apog:ProjectFortifyMember 2024-08-31 0000006845 srt:MinimumMember apog:ProjectFortifyMember 2024-03-02 0000006845 srt:MaximumMember apog:ProjectFortifyMember 2024-03-02 0000006845 us-gaap:EmployeeSeveranceMember apog:ArchitecturalFramingSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember apog:ArchitecturalServicesSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember us-gaap:CorporateAndOtherMember 2024-06-02 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember 2024-06-02 2024-08-31 0000006845 us-gaap:ContractTerminationMember apog:ArchitecturalFramingSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:ContractTerminationMember apog:ArchitecturalServicesSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:ContractTerminationMember us-gaap:CorporateAndOtherMember 2024-06-02 2024-08-31 0000006845 us-gaap:ContractTerminationMember 2024-06-02 2024-08-31 0000006845 us-gaap:OtherRestructuringMember apog:ArchitecturalFramingSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:OtherRestructuringMember apog:ArchitecturalServicesSegmentMember 2024-06-02 2024-08-31 0000006845 us-gaap:OtherRestructuringMember us-gaap:CorporateAndOtherMember 2024-06-02 2024-08-31 0000006845 us-gaap:OtherRestructuringMember 2024-06-02 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember apog:ArchitecturalFramingSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember apog:ArchitecturalServicesSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember us-gaap:CorporateAndOtherMember 2024-03-03 2024-08-31 0000006845 us-gaap:EmployeeSeveranceMember 2024-03-03 2024-08-31 0000006845 us-gaap:ContractTerminationMember apog:ArchitecturalFramingSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:ContractTerminationMember apog:ArchitecturalServicesSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:ContractTerminationMember us-gaap:CorporateAndOtherMember 2024-03-03 2024-08-31 0000006845 us-gaap:ContractTerminationMember 2024-03-03 2024-08-31 0000006845 us-gaap:OtherRestructuringMember apog:ArchitecturalFramingSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:OtherRestructuringMember apog:ArchitecturalServicesSegmentMember 2024-03-03 2024-08-31 0000006845 us-gaap:OtherRestructuringMember us-gaap:CorporateAndOtherMember 2024-03-03 2024-08-31 0000006845 us-gaap:OtherRestructuringMember 2024-03-03 2024-08-31 0000006845 apog:ArchitecturalFramingSegmentMember 2024-03-02 0000006845 apog:ArchitecturalServicesSegmentMember 2024-03-02 0000006845 us-gaap:CorporateAndOtherMember 2024-03-02 0000006845 apog:ArchitecturalFramingSegmentMember 2024-08-31 0000006845 apog:ArchitecturalServicesSegmentMember 2024-08-31 0000006845 us-gaap:CorporateAndOtherMember 2024-08-31 0000006845 apog:UWIntercoLLCMember us-gaap:SubsequentEventMember 2024-09-23 2024-09-23 shares iso4217:USD iso4217:USD shares apog:drawdown apog:lineOfCredit pure apog:acquisitionHoliday apog:quarter apog:arrangement apog:segment 0000006845 false 2025 Q2 --03-01 P2Y P3Y 10-Q true 2024-08-31 false 0-6365 APOGEE ENTERPRISES, INC. MN 41-0919654 4400 West 78th Street, Suite 520 Minneapolis MN 55435 952 835-1874 Common stock, par value $0.33 1/3 per share APOG NASDAQ Yes Yes Large Accelerated Filer false false false 21943016 51024000 37216000 177146000 173557000 79591000 69240000 49285000 49502000 36742000 29124000 393788000 358639000 460167000 445017000 240627000 244216000 41886000 40221000 129119000 129182000 64547000 66114000 47125000 45692000 917092000 884064000 86035000 84755000 40901000 53801000 41655000 34755000 12661000 12286000 57597000 59108000 238849000 244705000 62000000 62000000 33323000 31907000 32055000 30552000 44443000 43875000 1.00 1.00 200000 200000 0 0 0 0 0 0 0.33 0.33 50000000 50000000 21945986 21945986 22089265 22089265 7315000 7363000 155883000 152818000 373458000 340375000 -30234000 -29531000 506422000 471025000 917092000 884064000 342440000 353675000 673956000 715388000 245119000 258304000 477780000 527031000 97321000 95371000 196176000 188357000 55356000 54818000 112830000 114037000 41965000 40553000 83346000 74320000 1140000 2230000 1590000 4266000 290000 4900000 433000 4612000 41115000 43223000 82189000 74666000 10549000 9896000 20612000 17763000 30566000 33327000 61577000 56903000 1.40 1.54 2.83 2.61 1.40 1.52 2.80 2.57 21762000 21708000 21793000 21813000 21875000 21962000 21985000 22105000 30566000 33327000 61577000 56903000 30000 -8000 29000 25000 114000 -28000 108000 93000 -257000 66000 107000 -55000 -846000 217000 350000 -180000 -492000 508000 -1161000 943000 -1224000 697000 -703000 856000 29342000 34024000 60874000 57759000 61577000 56903000 19664000 20661000 5642000 4483000 2016000 -4281000 -291000 62000 0 4687000 5844000 6153000 -1002000 1121000 3698000 8238000 10509000 -5841000 -238000 -8992000 1335000 -3529000 -12823000 -17567000 6987000 4244000 -5748000 -6608000 -224000 4292000 7462000 2912000 64132000 62564000 15662000 15018000 608000 143000 2246000 969000 1850000 775000 -15450000 -15069000 95201000 174853000 95201000 199000000 3485000 0 15061000 11821000 10821000 10467000 -5266000 -3705000 -34633000 -50140000 -241000 -405000 13808000 -3050000 37216000 21473000 51024000 18423000 1426000 2493000 22089000 7363000 152818000 340375000 -29531000 471025000 31011000 31011000 521000 521000 170000 57000 -57000 0 2704000 2704000 242000 81000 1860000 13120000 15061000 80000 27000 603000 4206000 4836000 5409000 5409000 21937000 7312000 153002000 348651000 -29010000 479955000 30566000 30566000 -1224000 -1224000 16000 5000 -5000 0 2938000 2938000 7000 2000 52000 347000 401000 5412000 5412000 21946000 7315000 155883000 373458000 -30234000 506422000 22224000 7408000 146816000 273740000 -31556000 396408000 23576000 23576000 159000 159000 155000 52000 13000 -9000 56000 2178000 2178000 120000 40000 829000 4324000 5193000 40000 14000 281000 1438000 1733000 5245000 5245000 22219000 7406000 147897000 286300000 -31397000 410206000 33327000 33327000 697000 697000 -3000 -1000 7000 -195000 -189000 2305000 2305000 25000 8000 -1192000 -1184000 160000 53000 1160000 5415000 6628000 9000 3000 444000 547000 994000 5222000 5222000 22072000 7357000 147413000 308248000 -30700000 432318000 Summary of Significant Accounting Policies<div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of presentation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements of Apogee Enterprises, Inc. (we, us, our or the Company) have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP). The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024. We use the same accounting policies in preparing quarterly and annual financial statements. All adjustments necessary for a fair presentation of quarterly and year to date operating results are reflected herein and are of a normal, recurring nature. The results of operations for the three- and six-month periods ended August 31, 2024 are not necessarily indicative of the results to be expected for the full year.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New accounting standards</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the Financial Accounting Standards Board (FASB) issued ASU 2023-07, Improvements to Reportable Segment Disclosures, which expands the required disclosure for reportable segments. This guidance requires entities to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all segment disclosures which are currently required annually. This ASU additionally requires entities to disclose the title and position of the individual or the name of the group or committee identified as its chief operating decision-maker. Such guidance, which is required to be applied retrospectively, is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, although early adoption is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact to our segment disclosures for the year ended March 1, 2025 and future interim periods.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09, Improvements to Income Tax Disclosures, intended to enhance the transparency and decision-usefulness of income tax disclosures. Such guidance requires entities to provide additional information within their income tax rate reconciliation, including further disclosure of federal, state, and foreign income taxes and to provide more details about these reconciling items if a quantitative threshold is met. This guidance additionally requires expanded disclosure of income taxes paid, including amounts paid for federal, state, and foreign taxes. This ASU, which is required to be applied prospectively, is effective for fiscal years beginning after December 15, 2024, although early adoption and retrospective application is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact on our income tax disclosures, including the processes and controls around the collection of this information.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Basis of presentation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The consolidated financial statements of Apogee Enterprises, Inc. (we, us, our or the Company) have been prepared in accordance with accounting principles generally accepted in the United States (U.S. GAAP). The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended March 2, 2024. We use the same accounting policies in preparing quarterly and annual financial statements. All adjustments necessary for a fair presentation of quarterly and year to date operating results are reflected herein and are of a normal, recurring nature. The results of operations for the three- and six-month periods ended August 31, 2024 are not necessarily indicative of the results to be expected for the full year.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New accounting standards</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In November 2023, the Financial Accounting Standards Board (FASB) issued ASU 2023-07, Improvements to Reportable Segment Disclosures, which expands the required disclosure for reportable segments. This guidance requires entities to disclose significant segment expenses and other segment items on an annual and interim basis and to provide in interim periods all segment disclosures which are currently required annually. This ASU additionally requires entities to disclose the title and position of the individual or the name of the group or committee identified as its chief operating decision-maker. Such guidance, which is required to be applied retrospectively, is effective for fiscal years beginning after December 15, 2023, and interim periods within fiscal years beginning after December 15, 2024, although early adoption is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact to our segment disclosures for the year ended March 1, 2025 and future interim periods.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In December 2023, the FASB issued ASU 2023-09, Improvements to Income Tax Disclosures, intended to enhance the transparency and decision-usefulness of income tax disclosures. Such guidance requires entities to provide additional information within their income tax rate reconciliation, including further disclosure of federal, state, and foreign income taxes and to provide more details about these reconciling items if a quantitative threshold is met. This guidance additionally requires expanded disclosure of income taxes paid, including amounts paid for federal, state, and foreign taxes. This ASU, which is required to be applied prospectively, is effective for fiscal years beginning after December 15, 2024, although early adoption and retrospective application is permitted. While the adoption of this ASU will not have an impact on our financial position and/or results of operations, we are currently evaluating the impact on our income tax disclosures, including the processes and controls around the collection of this information.</span></div> <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Revenue, Receivables and Contract Assets and Liabilities</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Revenue</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized at shipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,518 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152,241 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">277,240 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304,895 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized over time (input method)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,683 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,270 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">235,364 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241,651 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized over time (output method)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,239 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,164 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,352 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,842 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342,440 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,675 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">673,956 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715,388 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Receivables</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Receivables reflected in the financial statements represent the net amount expected to be collected. An allowance for credit losses is established based on expected losses. Expected losses are estimated by reviewing individual accounts, considering aging, financial condition of the debtor, recent payment history, current and forecasted economic conditions and other relevant factors. Upon billing, aging of receivables is monitored until collection. An account is considered current when it is within agreed upon payment terms. An account is written off when it is determined that the asset is no longer collectible.</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:69.367%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.938%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 2, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,449 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,061 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,672 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,879 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total receivables</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,121 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,940 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for credit losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Receivables, net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177,146 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,557 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the activity in the allowance for credit losses for the six-month period ended:</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.937%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,383 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Credits charged to costs and expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,414)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deductions from allowance, net of recoveries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Contract assets and liabilities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Contract assets consist of retainage, costs and earnings in excess of billings and other unbilled amounts typically generated when revenue recognized exceeds the amount billed to the customer. Retainage on construction contracts represents amounts withheld by our customers on long-term projects until the project reaches a level of completion where amounts are released to us from the customer. Contract liabilities consist of billings in excess of costs and earnings and other deferred revenue on contracts. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The time period between when performance obligations are complete and payment is due is not significant. In certain parts of our business that recognize revenue over time, progress billings follow an agreed-upon schedule of values.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The changes in contract assets and contract liabilities were mainly due to timing of project activity within our businesses that operate under long-term contracts. </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other contract-related disclosures</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized related to contract liabilities from prior year-end</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,451 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,249 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,361 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,956 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized related to prior satisfaction of performance obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,867 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,477 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,166 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,904 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Some of our contracts have an expected duration of longer than a year, with performance obligations extending over that time frame. Generally, these contracts are found in our businesses that typically operate with long-term contracts, which recognize revenue over time. The transaction prices associated with unsatisfied performance obligations at August 31, 2024 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.937%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Within one year</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">535,538 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Between one and two years</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">305,493 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beyond two years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,600 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">952,631 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table disaggregates total revenue by timing of recognition (see Note 12 for disclosure of revenue by segment):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized at shipment</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">140,518 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">152,241 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">277,240 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">304,895 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized over time (input method)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,683 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,270 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">235,364 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">241,651 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Recognized over time (output method)</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,239 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,164 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">161,352 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">168,842 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342,440 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,675 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">673,956 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715,388 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 140518000 152241000 277240000 304895000 118683000 118270000 235364000 241651000 83239000 83164000 161352000 168842000 342440000 353675000 673956000 715388000 <div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:69.367%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.938%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 2, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Trade accounts</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108,449 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">115,061 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Construction contracts</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">70,672 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">61,879 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total receivables</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">179,121 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,940 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Less: allowance for credit losses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,383 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Receivables, net</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177,146 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">173,557 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 108449000 115061000 70672000 61879000 179121000 176940000 1975000 3383000 177146000 173557000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes the activity in the allowance for credit losses for the six-month period ended:</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.937%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beginning balance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,383 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Credits charged to costs and expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,414)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deductions from allowance, net of recoveries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">13 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Ending balance</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,975 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 3383000 -1414000 13000 -7000 1975000 <div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.835%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.940%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Other contract-related disclosures</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized related to contract liabilities from prior year-end</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,451 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,249 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,361 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">24,956 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Revenue recognized related to prior satisfaction of performance obligations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,867 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,477 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,166 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,904 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 3451000 2249000 30361000 24956000 4867000 4477000 8166000 4904000 The transaction prices associated with unsatisfied performance obligations at August 31, 2024 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:<div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.133%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.937%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Within one year</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">535,538 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Between one and two years</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">305,493 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Beyond two years</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">111,600 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">952,631 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> P1Y 535538000 P2Y 305493000 P2Y 111600000 952631000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Inventories</span><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Inventories</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"><tr><td style="width:1.0%"></td><td style="width:68.929%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.541%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.143%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.541%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.146%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 2, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,363 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,656 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,291 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,586 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,591 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,240 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Inventories</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:98.538%"><tr><td style="width:1.0%"></td><td style="width:68.929%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.541%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.143%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.541%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.146%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">March 2, 2024</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Raw materials</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,952 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">31,363 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Work-in-process</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">16,656 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">12,291 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Finished goods</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">30,983 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,586 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total inventories, net</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">79,591 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">69,240 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 31952000 31363000 16656000 12291000 30983000 25586000 79591000 69240000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Financial Instruments</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Marketable securities</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Through our wholly-owned insurance subsidiary, Prism Assurance, Ltd. (Prism), we hold the following available-for-sale marketable securities, made up of fixed-maturity investments:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:41.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.502%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Gross Unrealized Gains</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Estimated <br/>Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,708 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">March 2, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">437 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Prism insures a portion of our general liability, workers’ compensation and automobile liability risks using reinsurance agreements to meet statutory requirements. The reinsurance carrier requires Prism to maintain fixed-maturity investments for the purpose of providing collateral for Prism’s obligations under the reinsurance agreements.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortized cost and estimated fair values of these investments at August 31, 2024, by contractual maturity, are shown below. Expected maturities may differ from contractual maturities, as borrowers may have the right to call or prepay obligations with or without penalty.</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.245%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.499%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Estimated Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Due within one year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,119 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,092 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Due after one year through five years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,589 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,708 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Derivative instruments</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically use interest rate swaps, currency put options, and forward purchase contracts to manage risks generally associated with foreign exchange rate, interest rate and commodity price fluctuations. The information that follows explains the various types of derivatives and financial instruments we use, how such instruments are accounted for, and how such instruments impact our financial position and performance.</span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In fiscal 2020, we entered into an interest rate swap to hedge exposure to variability in cash flows from interest payments on floating-rate borrowings under our credit facility. As of August 31, 2024, the interest rate swap contract had a notional value of $30.0 million and has a maturity date of February 5, 2026. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We periodically enter into forward purchase contracts and/or fixed/floating swaps to manage the risk associated with fluctuations in aluminum prices and fluctuations in foreign exchange rates. These contracts generally have an original maturity date of less than one year. As of August 31, 2024, we held aluminum purchase contracts and foreign exchange option contracts with U.S. dollar notional values of $2.0 million and $1.5 million, respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The mark to market adjustments on these derivative instruments are recorded within our consolidated balance sheets within other current assets and other current liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive loss until which time the hedged transaction is settled and gains or losses are reclassified to net earnings. </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Fair value measurements</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Financial assets and liabilities are classified in the fair value hierarchy based on the lowest level input that is significant to the fair value measurement: Level 1 (unadjusted quoted prices in active markets for identical assets or liabilities); Level 2 (observable market inputs, other than quoted prices included in Level 1); and Level 3 (unobservable inputs that cannot be corroborated by observable market data). We do not have any Level 3 financial assets or liabilities. </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.040%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices in<br/>Active Markets<br/>(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Other Observable Inputs (Level 2)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal and corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency option contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Aluminum hedging contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 2, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,529 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,529 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal and corporate bonds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency forward/option contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,292 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,292 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Aluminum hedging contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">529 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">529 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Through our wholly-owned insurance subsidiary, Prism Assurance, Ltd. (Prism), we hold the following available-for-sale marketable securities, made up of fixed-maturity investments:</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:41.590%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.502%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Gross Unrealized Gains</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Gross Unrealized Losses</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Estimated <br/>Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,708 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">323 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">March 2, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,327 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">15 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">437 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 11708000 37000 323000 11422000 11327000 15000 437000 10905000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The amortized cost and estimated fair values of these investments at August 31, 2024, by contractual maturity, are shown below. Expected maturities may differ from contractual maturities, as borrowers may have the right to call or prepay obligations with or without penalty.</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:70.245%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.496%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.499%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Amortized Cost</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Estimated Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Due within one year</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,119 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,092 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Due after one year through five years</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,589 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,330 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,708 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 3119000 3092000 8589000 8330000 11708000 11422000 30000000.0 2000000.0 1500000 <div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:55.040%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.794%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Quoted Prices in<br/>Active Markets<br/>(Level 1)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Other Observable Inputs (Level 2)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Total Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">42,400 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal and corporate bonds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,422 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency option contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">28 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">781 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Aluminum hedging contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr style="height:12pt"><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">March 2, 2024</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Assets:</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Money market funds</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,529 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,529 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Municipal and corporate bonds</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,905 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency forward/option contract</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,292 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,292 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Liabilities:</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 19pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Aluminum hedging contract</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">529 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">529 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 42400000 0 42400000 0 11422000 11422000 0 28000 28000 0 781000 781000 0 20000 20000 26529000 0 26529000 0 10905000 10905000 0 3000 3000 0 1292000 1292000 0 529000 529000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Debt</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">On July 19, 2024, we entered into a Credit Agreement (the Credit Agreement) with Bank of America, N.A., as administrative agent, and other lenders. The Credit Agreement provides for an unsecured senior credit facility in an aggregate principal amount of up to $700.0 million, in which commitments are available through a $450.0 million, five-year revolving credit facility and a committed $250.0 million delayed draw term loan facility. Borrowings under the revolving credit facility can be in Canadian dollars (CAD) limited to $25.0 million USD. The term loan facility may be borrowed in up to two drawdowns, which are available to be made within one year after the closing date. The senior credit facility has a term of five years with a maturity date of July 19, 2029. Outstanding borrowings under the revolving credit facility were $50.0 million as of August 31, 2024. As of August 31, 2024, the term loan facility had not been drawn. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Credit Agreement replaces the previous revolving credit facility with Wells Fargo Bank, N.A., as administrative agent, and other lenders, with maximum borrowings up to $385.0 million, and the two Canadian credit facilities with Bank of Montreal totaling $25.0 million USD. Outstanding borrowings under the previous revolving credit facility were $50.0 million as of March 2, 2024. We had no outstanding borrowings under the Canadian facilities as of March 2, 2024. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As a result of the transaction, in the second quarter of fiscal 2025, we recognized a loss on extinguishment of debt within interest expense of $0.5 million for the write-off of unamortized financing fees related to the previous revolving credit facility. Additionally, we capitalized $3.0 million of lender fees and $0.6 million of third-party fees incurred in connection with the Credit Agreement, which were recorded as other non-current assets and will be amortized over the term of the credit facility as interest expense.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Credit Agreement contains two maintenance financial covenants that require our Consolidated Leverage Ratio (as defined in the Credit Agreement) to be less than 3.50 and our Consolidated Interest Coverage Ratio (as defined in the Credit Agreement) to exceed 3.00. At August 31, 2024, we were in compliance with all covenants as defined under the terms of the Credit Agreement. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Credit Agreement also contains an acquisition “holiday.” In the event we make an acquisition for which the purchase price is greater than $75 million, we can elect to increase the maximum Consolidated Leverage Ratio (as defined in the Credit Agreement) to 4.00 for a period of four consecutive fiscal quarters, commencing with the fiscal quarter in which a qualifying acquisition occurs. No more than two acquisition holidays can occur during the term of the Credit Agreement, and at least two fiscal quarters must separate qualifying acquisitions. </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Borrowings under the Credit Agreement bear floating interest at either the Base Rate or Term Secured Overnight Financing Rate (SOFR), or, for CAD borrowings, Canadian Overnight Repo Rate Average (CORRA) plus, in each a margin based on the Consolidated Leverage Ratio (as defined in the Credit Agreement). For Base Rate borrowings, the margin ranges from 0.25% to 0.75%. For Term SOFR and CORRA borrowings, the margin ranges from 1.25% to 1.75%, with an incremental Term SOFR and CORRA adjustment of 0.10% and 0.29547% respectively.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Credit Agreement also contains an “accordion” provision. Under this provision, we can request that the senior credit facility be increased by unlimited additional amounts. Any lender may elect or decline to participate in the requested increase at their sole discretion.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At August 31, 2024, we had a total of $42.5 million of ongoing letters of credit related to the senior credit facility and industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal years 2026 through 2032 and reduce borrowing capacity under the revolving credit facility. As of August 31, 2024, the amount available for revolving borrowings was $357.5 million.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At August 31, 2024, debt included $12.0 million of industrial revenue bonds that mature in fiscal years 2036 through 2043. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The fair value of our senior credit facility and industrial revenue bonds approximated carrying values at August 31, 2024, and would be classified as Level 2 within the fair value hierarchy described in Note 4, due to the variable interest rates on these instruments.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.939%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,661 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,171 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap gain</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(236)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(472)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">594 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">615 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(557)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(328)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,066)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(563)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,140 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,230 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,266 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Interest payments under the credit facilities were $2.6 million and $5.4 million for the six months ended August 31, 2024 and August 26, 2023, respectively.</span></div> 700000000 450000000 P5Y 250000000 25000000 2 P1Y P5Y 50000000.0 0 385000000 2 25000000 50000000 0 -500000 3000000 600000 3.50 3.00 75000000 4.00 2 2 0.0025 0.0075 0.0125 0.0175 0.0010 0.0029547 42500000 357500000 12000000.0 <div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.397%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.935%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.969%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.939%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest on debt</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,339 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,661 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,513 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,171 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest rate swap gain</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(236)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(153)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(472)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(420)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other interest expense</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">594 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">50 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">615 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">78 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(557)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(328)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,066)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(563)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Interest expense, net</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,140 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,230 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,590 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,266 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 1339000 2661000 2513000 5171000 -236000 -153000 -472000 -420000 594000 50000 615000 78000 557000 328000 1066000 563000 1140000 2230000 1590000 4266000 2600000 5400000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Commitments and Contingent Liabilities</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Bond commitments</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">In the ordinary course of business, predominantly in our Architectural Services and Architectural Framing Systems Segments, we are required to provide surety or performance bonds that commit payments to our customers for any non-performance. At August 31, 2024, $1.2 billion of these types of bonds were outstanding, of which $366.0 million is in our backlog. These bonds have expiration dates that align with completion of the sales order or contract. We have never been required to make payments under surety or performance bonds with respect to our existing businesses. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Warranty and project-related contingencies</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We reserve estimated exposures on known claims, as well as on a portion of anticipated claims, for product warranty and rework cost, based on historical product liability claims as a ratio of sales. Claim costs are deducted from the accrual when paid. Factors that could have an impact on these accruals in any given period include changes in manufacturing quality, changes in product mix, and any significant changes in sales volume. </span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.280%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.790%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,362 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions charged to costs and expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,967 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deductions from reserve, net of recoveries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,585)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,744 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Additionally, we are subject to project management and installation-related contingencies as a result of our fixed-price material supply and installation service contracts, primarily in our Architectural Services Segment and in certain parts of our Architectural Framing Systems Segment. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Letters of credit</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At August 31, 2024, we had $42.5 million of ongoing letters of credit as discussed in Note 5. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Purchase obligations</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Purchase obligations for raw material commitments and capital expenditures totaled $14.2 million as of August 31, 2024.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">New Markets Tax Credit (NMTC) transactions</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have two outstanding NMTC arrangements which help to support operational expansion. Proceeds received from investors on these transactions are included within other non-current liabilities in our consolidated balance sheets. The NMTC arrangements are subject to 100 percent tax credit recapture for a period of seven years from the date of each respective transaction. Upon the termination of each arrangement, these proceeds will be recognized in earnings in exchange for the transfer of tax credits. The direct and incremental costs incurred in structuring these arrangements have been deferred and are included in other non-current assets in our consolidated balance sheets. These costs will be recognized in conjunction with the recognition of the related proceeds on each arrangement. During the construction phase or for working capital purposes for each project, we are required to hold cash dedicated to fund each project, which is classified as restricted cash in our consolidated balance sheets. As a result of the structure of these transactions, variable-interest entities were created. As the other investors in these programs do not have a material interest in the entities' underlying economics, we include 100% of the results of the variable-interest entities in our consolidated financial statements. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below provides a summary of estimated benefits related to our outstanding NMTC transactions (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:23.936%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.936%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.568%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inception date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Termination date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred Benefit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred costs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net benefit</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2022</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,052 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,604 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 2018</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,198 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,031 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,167 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,250 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,635 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,615 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(1) Continuation of the August 2018 NMTC financing transaction</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Litigation</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The Company is a party to various legal proceedings incidental to its normal operating activities. In particular, like others in the construction supply and services industry, the Company is routinely involved in various disputes and claims arising out of construction projects, sometimes involving significant monetary damages or product replacement. We have in the past and are currently subject to product liability and warranty claims, including certain legal claims related to a commercial sealant product formerly incorporated into our products. In December 2022, the claimant in an arbitration of one such claim was awarded $20 million. The Company has appealed the award and believes, after taking into account all currently available information, including the advice of counsel and the likelihood of available insurance coverage, that this award will not have a material adverse effect on the Company's business, financial condition, results of operations or cash flows. The Company is also subject to litigation arising out of areas such as employment practices, workers compensation and general liability matters. Although it is very difficult to accurately predict the outcome of any such proceedings, facts currently available indicate that no matters will result in losses that would have a material adverse effect on the results of operations, cash flows or financial condition of the Company.</span></div> 1200000000 366000000.0 <div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:84.280%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.790%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> </span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,362 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Additions charged to costs and expenses</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5,967 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Deductions from reserve, net of recoveries</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,585)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">20,744 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 21362000 5967000 6585000 20744000 42500000 14200000 2 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below provides a summary of estimated benefits related to our outstanding NMTC transactions (in thousands):</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:99.853%"><tr><td style="width:1.0%"></td><td style="width:23.936%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:23.936%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.566%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.532%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.568%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Inception date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Termination date</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred Benefit</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Deferred costs</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Net benefit</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">May 2022</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">August 2025</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,052 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,604 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 2018</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">September 2025</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,198 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,031 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,167 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,250 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,635 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,615 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:120%">(1) Continuation of the August 2018 NMTC financing transaction</span></div> 6052000 1604000 4448000 3198000 1031000 2167000 9250000 2635000 6615000 20000000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Supplier Finance Program Obligations</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">In the first quarter of fiscal 2024, we implemented a supplier financing arrangement that enables select suppliers, at their sole discretion, to sell our receivables (i.e., our payment obligations to the suppliers) on a non-recourse basis in order to be paid earlier than our payment terms provide. These suppliers’ voluntary inclusion of invoices in the supplier financing arrangement has no bearing on our payment terms, the amounts we pay, or our liquidity. We have no economic interest in the supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. The balances owed are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided by operating activities in our consolidated statements of cash flows when settled.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The following table summarizes the obligation activity and outstanding balance as of August 31, 2024 that we have confirmed as valid to the administrators of our program:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:82.525%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.545%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,527 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Obligations added to the program</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,411 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Obligations settled</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(20,503)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,435 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The following table summarizes the obligation activity and outstanding balance as of August 31, 2024 that we have confirmed as valid to the administrators of our program:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:82.525%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:14.545%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at beginning of period</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,527 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Obligations added to the program</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,411 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Obligations settled</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(20,503)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at end of period</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,435 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 6527000 22411000 20503000 8435000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Shareholders' Equity</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">We paid dividends totaling $10.8 million ($0.50 per share) in the first six months of fiscal 2025, compared to dividends paid of $10.5 million ($0.48 per share) in the comparable prior year period. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During fiscal 2004, the Board of Directors authorized a share repurchase program allowing us to repurchase shares of our outstanding common stock, with subsequent increases in authorization. During the six-months ended August 31, 2024, we repurchased 241,573 shares under the program, for a total cost of $15.1 million, inclusive of the applicable excise tax. During the six-months ended August 26, 2023, we repurchased 279,916 shares under the program, for a total cost of $11.8 million. We have repurchased a total of 11,518,090 shares, at a total cost of $408.5 million, since the inception of this program in fiscal 2004. We have remaining authority to repurchase 2,731,910 shares under this program, which has no expiration date. We may also elect to repurchase additional shares of common stock under our authorization, subject to limitations contained in our debt agreements and based upon our assessment of a number of factors, including share price, trading volume and general market conditions, working capital requirements, general business conditions, financial conditions, any applicable contractual limitations, and other factors, including alternative investment opportunities. We may finance share repurchases with available cash, additional debt or other sources of financing.</span></div>Additionally, shares withheld from the vesting of restricted awards, or the settlement of performance-based awards, are treated as purchases and retirements, and are included within other, net in the financing activities section in the consolidated statement of cash flows. 10800000 0.50 10500000 0.48 241573 15100000 279916 11800000 11518090 408500000 2731910000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Share-Based Compensation</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">As part of our compensation structure, we grant stock-based compensation awards to certain employees and non-employee directors during the fiscal year. These awards may be in the form of incentive stock options (to employees only), nonstatutory options, or nonvested share awards and units, all of which are granted at a price or with an exercise price equal to the fair market value of the Company’s stock at the date of award, unless the date of the award is on a day the Nasdaq Stock Market is not open for trading, then the exercise price shall equal the fair market value on the most recent preceding date when such market is open. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the number of stock-based compensation awards granted during the six-months ended August 31, 2024, along with the weighted average grant date fair value:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:69.660%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.792%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Number of Awards</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock awards and restricted stock units</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,092 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.54 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance share units </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,151 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.78 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:5pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Represent service condition awards which generally vest over a <span style="-sec-ix-hidden:f-610">two</span>- or <span style="-sec-ix-hidden:f-611">three</span>-year period.</span></div></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> Represent performance condition awards with the grant equal to the target number of performance shares based on the share price at grant date. These grants allow for the right to receive a variable number of shares, between 0% and 200% of target, dependent on being employed at the end of the performance period and achieving defined performance goals for average return on invested capital and cumulative earnings per share.</span></div></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Total share-based compensation expense included in the results of operations was $2.9 million and $2.3 million for the three-month periods ended August 31, 2024 and August 26, 2023, respectively and $5.6 million and $4.5 million for the six-month periods ended August 31, 2024 and August 26, 2023, respectively. </span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At August 31, 2024, there was $17.3 million of total unrecognized compensation cost related to nonvested share and nonvested share unit awards, which is expected to be recognized over a weighted average period of approximately 24 months. The total fair value of shares vested during the six-months ended August 31, 2024 was $8.6 million.</span></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the number of stock-based compensation awards granted during the six-months ended August 31, 2024, along with the weighted average grant date fair value:</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:69.660%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.788%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:12.792%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Awards</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Number of Awards</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Weighted Average Grant Date Fair Value</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restricted stock awards and restricted stock units</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(1)</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">118,092 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.54 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Performance share units </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:6.5pt;font-weight:400;line-height:100%;position:relative;top:-3.5pt;vertical-align:baseline">(2)</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">37,151 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">62.78 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:5pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(1) </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%">Represent service condition awards which generally vest over a <span style="-sec-ix-hidden:f-610">two</span>- or <span style="-sec-ix-hidden:f-611">three</span>-year period.</span></div></td></tr><tr><td colspan="15" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.85pt;font-weight:400;line-height:100%;position:relative;top:-3.15pt;vertical-align:baseline">(2)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:100%"> Represent performance condition awards with the grant equal to the target number of performance shares based on the share price at grant date. These grants allow for the right to receive a variable number of shares, between 0% and 200% of target, dependent on being employed at the end of the performance period and achieving defined performance goals for average return on invested capital and cumulative earnings per share.</span></div></td></tr></table></div> 118092 62.54 37151 62.78 0 2 2900000 2300000 5600000 4500000 17300000 P24M 8600000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:5.5pt">Income Taxes</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We file income tax returns in the U.S. federal jurisdiction, various U.S. state and local jurisdictions, Canada, Brazil and other international jurisdictions. We are not subject to U.S. federal tax examinations for years prior to fiscal 2021, or state and local income tax examinations for years prior to fiscal 2015. We are not currently under U.S. federal examination for years subsequent to fiscal 2020, and there is very limited audit activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">For interim periods, our income tax expense and resulting effective tax rate are based upon an estimated annual effective tax rate adjusted for the effects of items required to be treated as discrete to the period, including changes in tax laws, changes in estimated exposures for uncertain tax positions and other items. For the three-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.7%, compared to 22.9% for the same period last year. For the six-months ended August 31, 2024, income tax expense as a percentage of earnings before income tax was 25.1%, compared to 23.8% for the same period last year. The change in the effective tax rate for both the three- and six-month periods was primarily due to an increase in tax expense on discrete items.</span></div>The total liability for unrecognized tax benefits was $5.6 million at August 31, 2024 compared to $5.1 million at March 2, 2024, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense. 0.257 0.229 0.251 0.238 5600000 5100000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:5.5pt">Earnings per Share</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a reconciliation of the share amounts used in the computation of basic and diluted earnings per share (diluted EPS):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:45.098%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.625%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic earnings per share – weighted average common shares outstanding</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,762 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,708 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,813 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average effect of nonvested share grants and assumed exercise of stock options</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted earnings per share – weighted average common shares and potential common shares outstanding</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,875 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,962 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,985 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,105 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table presents a reconciliation of the share amounts used in the computation of basic and diluted earnings per share (diluted EPS):</span></div><div style="margin-top:5pt"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:45.098%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.619%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:11.625%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Basic earnings per share – weighted average common shares outstanding</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,762 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,708 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,793 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,813 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Weighted average effect of nonvested share grants and assumed exercise of stock options</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">113 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">254 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">192 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">292 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Diluted earnings per share – weighted average common shares and potential common shares outstanding</span></div></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,875 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,962 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,985 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">22,105 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><div style="padding-left:9pt;text-align:justify;text-indent:-9pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Stock awards excluded from the calculation of earnings per share because the effect was anti-dilutive (award price greater than average market price of the shares)</span></div></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">51 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">65 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="border-top:3pt double #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">73 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 21762000 21708000 21793000 21813000 113000 254000 192000 292000 21875000 21962000 21985000 22105000 11000 51000 65000 73000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:5.5pt">Business Segment Data</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">We have four reporting segments: </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;padding-left:14.5pt">The </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Architectural Framing Systems</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Segment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> designs, engineers, fabricates and finishes aluminum window, curtainwall, storefront and entrance systems for the exterior of buildings. </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%;padding-left:14.5pt">The </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Architectural Glass</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:115%">Segment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%"> coats and fabricates, high-performance glass used in custom window and wall systems on non-residential buildings. </span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Architectural Services</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Segment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> integrates technical services, project management, and field installation services to design, engineer, fabricate, and install building glass and curtainwall systems.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">The </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Large-Scale Optical (LSO)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%">Segment</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%"> manufactures high-performance glass and acrylic products for the custom framing, fine art, and engineered optics markets. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Segment net sales is defined as net sales for a certain segment and includes revenue related to intersegment transactions. We report net sales intersegment eliminations separately to exclude these sales from our consolidated total. Segment operating income is equal to net sales, less cost of goods sold, selling, general and administrative expenses, and any asset impairment charges associated with the segment. Segment operating income includes operating income related to intersegment sales transactions and excludes certain corporate costs that are not allocated at a segment level. We report these unallocated corporate costs in Corporate and Other. Operating income does not include other income or expense, interest expense or income tax expense.</span></div><div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.250%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.087%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Framing Systems</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,350 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,801 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">274,522 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322,963 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Glass</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,101 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94,096 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,804 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,298 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,018 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,064 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197,045 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177,482 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large-Scale Optical</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,832 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,645 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,036 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,101 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intersegment eliminations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,861)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,931)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,451)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(22,456)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342,440 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,675 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">673,956 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715,388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment operating income (loss)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Framing Systems</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,141 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,060 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,477 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,005 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Glass</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,068 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,955 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,130 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,519 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,753 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,923 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large-Scale Optical</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,793 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,639 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,188 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate and Other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,167)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,123)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,682)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,751)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,965 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,553 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,346 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,320 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Due to the varying combinations and integration of individual window, storefront and curtainwall systems, it is impractical to report product revenues generated by class of product, beyond the segment revenues currently reported.</span></div> 4 <div style="margin-top:5pt;text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:39.250%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.081%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:13.087%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Three Months Ended</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="9" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Six Months Ended</span></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:7pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 31, 2024</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">August 26, 2023</span></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Framing Systems</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">141,350 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">158,801 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">274,522 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">322,963 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Glass</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,101 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">94,096 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">176,804 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">191,298 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Services</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">98,018 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">88,064 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">197,045 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">177,482 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large-Scale Optical</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">19,832 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">23,645 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,036 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">46,101 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Intersegment eliminations</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,861)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,931)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(15,451)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(22,456)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Net sales</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">342,440 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">353,675 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">673,956 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">715,388 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Segment operating income (loss)</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Framing Systems</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,141 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,060 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">35,477 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,005 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Glass</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">21,068 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">17,434 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">38,159 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">33,955 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Architectural Services</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">6,130 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,519 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">11,753 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,923 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Large-Scale Optical</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,793 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,663 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">8,639 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,188 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 2px 12.25pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Corporate and Other</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,167)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(6,123)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(10,682)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(13,751)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt 2px 25.75pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Operating income</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">41,965 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">40,553 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">83,346 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">74,320 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 141350000 158801000 274522000 322963000 90101000 94096000 176804000 191298000 98018000 88064000 197045000 177482000 19832000 23645000 41036000 46101000 -6861000 -10931000 -15451000 -22456000 342440000 353675000 673956000 715388000 17141000 21060000 35477000 41005000 21068000 17434000 38159000 33955000 6130000 3519000 11753000 2923000 3793000 4663000 8639000 10188000 -6167000 -6123000 -10682000 -13751000 41965000 40553000 83346000 74320000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:5.5pt">Restructuring</span><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">During the fourth quarter of fiscal 2024, we announced strategic actions to further streamline our business operations, enable a more efficient cost model, and better position the Company for profitable growth (referred to as “Project Fortify”). Project Fortify primarily impacts the Architectural Framing Systems Segment and includes:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Eliminating certain lower-margin product and service offerings, enabling consolidation into a single operating entity.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Transferring production operations from the Company’s facility in Walker, Michigan, to the Company’s facilities in Monett, Missouri and Wausau, Wisconsin.</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Simplifying the segment’s brand portfolio and commercial model to improve flexibility, better leverage the Company’s capabilities, and enhance customer service.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Additionally, the Company has implemented actions to optimize processes and streamline resources in its Architectural Services Segment and Corporate. </span></div><div><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">During the second quarter of fiscal 2025, we incurred $1.2 million of pre-tax costs associated with Project Fortify, of which $0.9 million was included within cost of sales and $0.3 million was included within selling, general and administrative expenses. During the first six-months of fiscal 2025, we incurred $2.3 million of pre-tax costs associated with Project Fortify, of which $1.5 million was included within cost of sales and $0.8 million was included within selling, general and administrative expenses. Since announcing Project Fortify, we have incurred $14.7 million of pre-tax costs. The Company expects these restructuring actions to be substantially complete by the end of the third quarter of fiscal 2025 and expects to incur total pre-tax charges of approximately $15.0 million to $16.0 million. Total Project Fortify restructuring charges are expected to include:</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">$6.5 million to $7.0 million of severance and employee related costs;</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">Approximately $1.7 million of contract termination costs; and</span></div><div style="padding-left:36pt;text-align:justify;text-indent:-18pt"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">•</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%;padding-left:14.5pt">$6.5 million to $7.5 million of other expenses.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">The Company expects that these actions will lead to annualized cost savings of $13 million to $14 million. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended August 31, 2024</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Termination benefits </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">271 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract termination costs</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other restructuring charges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">537 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total restructuring charges</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">916 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,179 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Six Months Ended August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Termination benefits </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">573 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">874 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract termination costs</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other restructuring charges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,233 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,319 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total restructuring charges</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,914 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,301 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our restructuring related accrual balances included within accrued payroll and related benefits and other current liabilities in the consolidated balance sheets. All remaining accrual balances are expected to be paid within fiscal 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at March 2, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,814 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,067 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,937 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructuring expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,195)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(348)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(117)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,660)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,133 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,719 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,915 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The charges presented in the rollforward of our restructuring accruals do not include items charged directly to expense as incurred, as those items are not reflected in accrued payroll and related benefits and other current liabilities in the consolidated balance sheets.</span></div> 1200000 900000 300000 2300000 1500000 800000 14700000 15000000.0 16000000.0 6500000 7000000 1700000 6500000 7500000 13000000 14000000 <div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><div style="text-align:center"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Three Months Ended August 31, 2024</span></div></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Termination benefits </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">271 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">448 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract termination costs</span></div></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other restructuring charges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">537 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">623 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total restructuring charges</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">916 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">5 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,179 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="21" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Six Months Ended August 31, 2024</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Termination benefits </span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">573 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">172 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">874 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Contract termination costs</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">108 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other restructuring charges</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,233 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">86 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,319 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Total restructuring charges</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,914 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">258 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,301 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr></table></div> 271000 172000 5000 448000 108000 0 0 108000 537000 86000 0 623000 916000 258000 5000 1179000 573000 172000 129000 874000 108000 0 0 108000 1233000 86000 0 1319000 1914000 258000 129000 2301000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The following table summarizes our restructuring related accrual balances included within accrued payroll and related benefits and other current liabilities in the consolidated balance sheets. All remaining accrual balances are expected to be paid within fiscal 2025.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><table style="border-collapse:collapse;display:inline-table;margin-bottom:5pt;vertical-align:text-bottom;width:100.000%"><tr><td style="width:1.0%"></td><td style="width:49.484%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.530%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="width:1.0%"></td><td style="width:10.595%"></td><td style="width:0.1%"></td><td style="width:0.1%"></td><td style="width:0.384%"></td><td style="width:0.1%"></td><td style="width:1.0%"></td><td style="width:10.603%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-style:italic;font-weight:400;line-height:100%">(In thousands)</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Framing</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Architectural Services</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Corporate &amp; Other</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:700;line-height:100%">Total</span></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at March 2, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,814 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,067 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">56 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,937 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Restructuring expense</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">736 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">124 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">860 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Payments</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,195)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(348)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(117)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(3,660)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Other adjustments</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">778 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Balance at August 31, 2024</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,133 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,719 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">63 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,915 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 2814000 2067000 56000 4937000 736000 0 124000 860000 3195000 348000 117000 3660000 778000 0 0 778000 1133000 1719000 63000 2915000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:5.5pt">Subsequent Events</span>On September 23, 2024, we entered into a purchase agreement for the acquisition of UW Interco, LLC (UW Solutions), a leading developer and manufacturer of high-performance coated materials. The total initial purchase price was $240.0 million, which is subject to customary closing adjustments. We intend to fund the acquisition with cash on hand and borrowings under our existing credit facility. 240000000 false false false false

?SO@=AAB@(6. ]$8^X:P8*5NL0J'FMD=36]U:MT#LWJWVW+VLN)-H:A=?5J2QUE4VV[7;=- MM32[6SOTV5JKL_[ENY^: ]Q9GY:T]$F^K3^>QICI] M_'?L.^/QS\\I^9T@++_A?-E8N1?RUU6NG-4'RYPW?,0 #PZA>YJ*<^]X(F(, M'@G_"P'L0B%$%*2L(1[P<>]%9?1]VO>] 7B08.Z&*?CVKG)/[6I@XH))\Q Y MXUBYZE\JL7T24Y,X,#EIY1#E_T0/.JN;G2K_CR7*KZP ZUER<#-<=SUG6]A! MXN0BA6;5*!EL*LK] QR5M=DJ)5C_/0U87O<&QB;_MY@,?,J#4[<&[ZE/5=T2 MT(;:[E0]R7X'2JMVZ.I*>5$)K8=%Y?'LI"TQ^?I@^#O58;E;?GA;USKM\R3A M2Y9,E(@WWTK$GAMB3;5C&6K/T&N(VLI6UY#^US##RM*+EA48_&;G!9;5 @@J MDWD)"!M"R2VUV[(K4G$YP1Q,!ETNB9X+0L\+W>6:>,0;.<]S M@^X+37JT_C4_;*O86$4-A*['3QS.IR%3+Q3?$CT!- M"+PKD"\[.S>+&B#%NKS5 0BZ8Q=76MCLWYT 2&7*!2O.(H ]=]_B8P8^-+<% M<9BXMB6/B+T9[]0G5P1O$6VH,)T!-+ M*3RA:_#Y'[QZCI?3F6]Y(^E4,1?VJE;:K&*MV 0_(">[JTV_61SR95P8LKC0 M(QHL3DBOVALHR/PBA\OU]C)F"P4XN"$?Q9:9'R$: MPC37JG3ZFF*TG6OC:IB/6YN;GJ;\[#W?PKJ?TS%\PH#F"@%TOB+3#Z[M5TK@ MC $@;.#>?@X#7,_0^[8!D"?\,/>#[SR\4CC%@RA_3FZ'WC-S 5Y^#.(#Y?OP MNM/!H<=;OVGWUQBO?G'X S_?S+WNE\5_(]AV_O;OT3A(MMV3N>NG5WJ+]>J7 M1'#)%A^/UJ;:T%DRCK,L10MK:^K=T_)ZL89[BW)]^@< 9&23*);V]N MGIZ>--BG]A ^WMR!"XTGR-PP]\&);L!+=F[:W99] YLUC)YEF+;>TCL]RS9O M7/9L&=HH&>-T^CBA4-L=(D^,L?B8C[RB0-O5Q^((K#X>V3-D$<,Q3TF822,% MJ O_^97&8N!(KO_>:KP]CD:YYN;6!]:/*&; :^#TEO:FQ'_9J0VR:07YEF;N MH^! LFI#616H7^]VNYT;M]MIV4:WP+%%1KW#HKY<,++5-_ Z+M9WU)_ MGQ&CFV8'&-W0#7XJL_,0,>*<:^2-9\[U[_B!S7?9-4I.NT)=BKDT2I\E3SAT M=)6(4/-!U?E,4C<BQ?FXZ+,> #U#>H\C&"I7YW@A_ ) M(J N5?FLW6G\Z!9W[ 5"!F Z_8$.\8AQM","2_&I<(<$S^\W[Q0OCM/"&3;Q M-)L7C"=.TZVQ..H<1W6+J>@X8!6/8J8#(?%($K0YX+]CL_"]J)^D[ MXNLOSSZ;9MQF@LUXN7K+E'KKW+AM+WJK$=S6--UFZ,U1;8<"A&$NG<&5Y89B MGF-9%3;;MK)#5%_.':F]W._"FQ[XP:>*]W]__?H[%H-2TNC]<\*"V,,B\E_% MP9SB3;C;W\%42YT']N863[@7::N I@'PZA8\;'4 ]#]B+(E%1''A]10>G#LN M3Z4SZY=7^SH[>:'YOK/5^OZ_#A$4G^FRF:5.FE96_-<^EY M2W'$1@@3T,WOG2B@$X'WN(G'S7O (S8_T!&;V7MW?-GF=]$!)]B_SZ+XO[.# M[_;VM?CCU2- _7.(#<8@/.>V,A/+LTUIEVB:&'KK4)9)UJA8FV]]AT<**_<@ M57@6@4[29LIO3N( 08 ?_N@H5W]Y0V> 4T$ #Z=C/0!>U99AO'* RS';\TM[T>K2 MLV_I>^G9-UNR9_\\>_:/3ZCE+9+?/O[M\]WW/[Z^_[;-^:R]([1REC/4?<$+ MXQ-BP%Z)9L;,%K%&53R8I5>5$79Z8YW)P$GYP!@/!Q>1K0VOZ3,2B3RSB"*S MST:./\Q.Q"5B$3=0\50:P$.TWFR:S>J90R<^]1:D@*9S25"EG[-E:W;%?LY5 MOYN:W=E/9ZBI]7K[.8$5/L_:L-26)[#N?D#BZ0YJ736*L&S,7/Y-[5V_Z70V MT-W]E[^]?Z^\__S]_=?[KQ^_O?\&GO?G=R6&3A(M6#:&X-5]X/Y M^WWB.#3 M80F\ G:;SYMJ;7V @F2M$R+MU^FMHMS$-\KWJ?)54[YY/B /=&%0Q5&[.!E: M\#&W&;ZYR4_=XTFQ)YUTND1#.+/I/F(XW C,-PP,K,BHT9U7]Y$7X-A*?_F& MDL#!2J=VR5);,T#J$LVXEE7MB:.8<;;5VX<95WN!*[5D0[4D*LE/3@*>XY/R M=TWY$@/^'J26E%JR*C$M$Q%JIIG&^S^@[Y0RK;F4&5_4FK,;*,,S&(1I0+G! M"DIT@[9<<_$4,>7:A(^-U>'CFW[H3N$_HV3L__+_ 5!+ P04 " )'-D[5UK<]JX&O[>7Z'# ME].=62>06YM,TQV20,L,"5F@VSV?=H0M0%MC44G.Y?SZ(\DV&&0C&9+69\W. M[&ZPW_OS2I9>2?:'WYYF/GA E&$27-8:!_4:0(%+/!Q,+FM?AFWG?>VWCV_> M?/B7X_QYU>^"&^*&,Q1P<$T1Y,@#CYA/ 9\B\)70;_@!@GL?\C&A,\?YJ-BN MR?R9XLF4@Z/ZT4E"EMRE%\<-Z*+Z\=B!9R='SLE)W7-&9R/H(/3NY.3MRH.V='[QK.R;NC$P>>GPJ&L]')R>GI\?MC]UP)?6(7S)VB M&03"M8!=/+'+VI3S^<7AX>/CX\'C\0&AD\.C>KUQ^.=M=Z!(:S&MCX-O*]1/ M(^HG],>'\O8(,I20PSF9K)#+"P,P2/4X= M_CQ'+)M'W#Z4MZ6>(Z=^["PU+3@;9M:Z4V\X1RM&>GS!EK;P]#"Z60.04@T!C&T,V4F8RRA5;#43X=XD+N4IK2&3S,YL"S)33M$[\D^G<202J(#: MO-RUURU^.0G?2]BP;)G%;$CX=K0ALU'EY8*)4_UFNYJQZ!8*FQ%S%C(CNZ^P MQ")AD""<%E'(D'LP(0^''L(V[6^=7/Y1I,6M"$&N5T1G0B[_R- )@X!PQ2^O MQ-?FI$D;!^-DUY;>VAE] KJ?Q>0NI3XAB[D<$[)'%&.$4L_ M\)2 *47CRYKLI)VD@_YK3M&!L"0AT12LMCIY6VA 3#P@E+_=I4.)")EXES4F MQ^.BGHO6)#_?^^X"_VBC@L6-_2WR7K)/A3W M ?8N:]=$C-?OX428)Z]_Z7>RAU!*YY(XD9C(7";AQ[KZIP& 8H32-8/ MA^L,:Z)"AKQ>\%']O=ZV8^:89 /C6G2L^58;4R9;?#&)XJ;8]NX&O6[GICEL MW5PUN\V[Z];@O%D$W2]F QKF8UC1.)1H#$4:4P)&2"6*A M()(*WB[D_K+'*A7E>TB%>U/$L3#X98!;%6E$\6@[%,';%3U51;7?&GSI#@>] M=N^^U6\..^+6UNUPHRPCCL>;<(Q%@UX;+(7O&^7-8"C^>]NZDU&_[MW>]UN? M6W>#SA^M5K-_U[G[M#V8!20;H3W9!.U2D41W115(=%45:1(PXF-/5@$7\6-D M?$UFPK$I"AA^0"U( QQ,V Y=\@NH,>; Z7H.I)0N;S! QF!%+T@4[SOOS:V_ M.?C<[O:^OE"+UZ49$3XKT,J%>*#D5[5EY\1]\+DI>K]>]Z;5'[1^_](9_N=% MX-PDUHCK.WM='VN MF ?;@&HIR8CC>SGYQ,SU"0LIDJ!&@F67FQ(-EK)!(KQ"N/71 PI"U$BRBG4FGS'H MC?6@+\2 E)P*A?\&C;A-N!6=,;Q'Z^&5;!6*IIB(S#!7.13WU^*A*'X5[/UM MQ!BQ.%['(B5UTB2W!CO=_HH M5'(#Q5ZA&"=%PSFB*N-L JWQ&*.MS:@7M4HA(TKU"L7\*F0X0(P-T$2.2FX@ MAS9ASV(S1EZ;_2920"P&2#D5"GX?R>F.RT,J\L^N))%F, 7\G3:]7>&O4* ' MX8BA[Z%PH/5@.[G5>(SAUB:V2Q$@DE&ID-L40%^^I&I96CTYR8++MK0*WB9_ M5:DZ7K@@.E1$KU)KC44;0=:J(=M67,';2&65 $]50^VAU)F,(&EEDI2,*L8] MJZYJ#\ &;B,26ADDLS9;14QD%=4>@Q2U,>9:P4,R5S'$%B57>P3LA1D!TNHA M=E7<*D)HK,3: V@KR@B?5EZQ*>U6$KS,>F$!Q#;Q&V'2=SKD5!VK",UZF ME!Q.(QQ:L48ODU41B(S"EST6^IL1A2TDL&* ME&I&O^#$/6:X01QB_W5J VLJC*B^7(U@P0K>QMKWN; !J+BRQI8+%7Z^3Q[E>'U,Z#5%'N9=(LC8J^:,0:?039H]O@4T82@CWQYC&4)SJLFDJ5J8SYIQ:(=\DG9M*!S M8JM2XO=I98^M&Q/0*(K>#TPKLVIC6FDEKIW3*C'*B:T"WCZM7@/;OQH_,;'^ M:NQ3JP2IE5HN*]#99' 9P3ID1:*T:F[T0Z(!$O]PUL;# $28XT@:P- (L MK=AGB@[>C%"._RM+Y_+M;UZ+<3R3G5L;8OH']$/$R%@V-A:M.XV>D]XRA/XM ME 4H_OQRJ?22UAAS32LU6^5:8B*0-JIGQ<)*(,T$D9V2-F4I&#V#E*T@,7:? MDG&8F^(Q+\7+B_)UIIQKI>^\]%BJ 2D]>V2UYKUHQ;<(RIBJ MVR_6>6R4;D3;[G0@<-)]P;*Y@[3.2B(O-X_LVH:-,HPH9AY"W#?1=:"6C:83 M<"3[[$P'G+C?M/M-\7STV"?UQ/1$#_45R8_# M(*_Y@"B<('7C1G1EB^EU49A_G$7&W-$J?KE[?5?[=V5G%EED*HAM50^,Q%H0 MFQO=E-LD4;I@L$_0!=P[3ENVD&I(E-.Z5OO;D"C[N4G6VRH*+0AJ7$: M')= M^MT5E8S]^H;[ @#DL1I1T,IM69OU*XA%QH;[77NYHB*-V&F5M^R=_?O^;3.N MJ<$,C+:W]$3N0SEGC+HDN5%R-YP+J3#BKA7A\G!?&0#!9+/,0G72X[Z5VG^I M9#JLG,+8M8';"S-"G+%9,WU<9-^D\S!<^2'7]XMMHK229$0O8^/:*GJKOY7P M/73B!Z(/Q0YRY+,;0=+J1!D@28&5!&;]%4:%*GG9K$9 ,EY8OO82I'\Z%!\. M5S]2&/U>^9"A_(QA_#58!92,_5\#Q'ETK3>^0X_1SCDF)E+128]4H;H&X(BI M+4R7M3'TY0?9Y%<9!> %1 385WOU+FNBO:A)/I$23B_K$64F*-9#41?;HNNS$@@0*?/'7%' M2E]^XE&/0SS>Z:TO9JO3E4/TQ*]\XG[+#X(M?Y$(6+FZ^,;P!4^T6/B[ "H+ M)Q:_E,K2]ZUDE20.RM(QHL+LW@.B0SQ#G6 >\EO$I\2[1;,1HFG'(V,CO^UX M7]%1C\P@#K;SLA?R[=W,8BZ#G_II2_GQ(/5H%IJ2+9ALL[\%A;R>WXU='%^< MVVNG#Q%^I4(3&8^;8]%)"6+Y6 M7+<\%_>"4LR>1U]AYS^V.7P1HQ17#)N] 0IPDJYMZ,K=#L^;T;9B+<.#H1-X MHM%1#/WX()A%*F_F*8-7PB[B/\@:PTK@KYLWFSTS\Y7!.]FRN@0&=JF81UT& M3ZYA #T,@Y5P8V3(/Q-7&3S[BGR?M2&=D"L8?+L[:!YL]BF?O@S>2)MZXULY MPD/0W^Q)-FT9O)";J-L(L>835O_F>:#3O8#U'K_PQ 0A8.)R1WLJR>XTF!3T MX48Y;N-%0ED&%+HH\!"5EFW.(YVN#-8/IYC*[[;R9[,'V;1E\$+FQK68C 3R MI=V&EK!*5ZZ6D-AF;@GKE&5 H>E^#S%3-AM*4WOJ'P MT2./0?YL+X.RP(RNP-P-!QQ-$"U@?%>NX??&UW%)P.# &O7/=D+V6\M3EDD/ M=H>X>I\U:5UUAC?-ODR#6_B$9^$LU\$M)+V.\W,Q)][:\\C,(5E;2(CLQL$6 M$;"26,)(Z ^ @HYG"=B^"O/*%;WS/9L/[L5IX8]WLH1HJ(L@&: MPV@O41%/"TKYV4ZO-;AHT]2-4/\@;'Y ^7Z:&?3.*C M4$.B=I'E.FQB*VNK31(R8^&[.:$(;5XXL.3^V6G<>N)RENK=4^*%+O\:G:E\ M;KHN#:&?["=CUU-()Q(SM2M)#/OB[,WW?W?!I5U V>Q:L76XK625M8.0TP(< M1'L:11/?-"_/)"W/U'S-O,VS\QSB4JR&-<.)F)D=U8].#1-RC:X4YHM! %?V MF#W()"V%$T(88Z*!NPAYK$W);,O=6(7EE+6?V&QW?-1:S.W,VY*, LH: G6& MIH_$',J=0I:<;#9D^$:>4J3Z4#[->3+VN4=4;4(7X52VYX\6C'PO/4Y:EI.$ M#%?X8%=#B\ZSQ6.4)KN/>.$$]<;)$:DK^;Y$E#K[%A-MF!#L)O852VWVL6F* MG!0RY#YIZ+=%6@J;XW,GA@>/F;$4F;UBYR"*669OSK&;M>R[NN78L&,BF[8, M-?G5TU"!%Q<#Y.RO&01BRI.\)70 Y2Z6_"=&<4%EW:/U556$7-+M7ANV9&50 M_E!,U2?L^OT'I?%S'NE]1)MA1;3E3E M6"[).3G[Q&H #8L;BO0.*=G:7[\-ZF+=18D8:>Q-.;1)43-?H[]!7]!H_.,_ MOQQ,-HZPFX]GTY]?B!_YBPV3S_^_.+/#V^8?_&?O_SPPS_^C;%__;K[ M=N/U+!T>X'2Q\:I#6&#>^#Q>[&\L]G'CKUGW]_@(-MY/8%%FW0%CORQ_[=7L MTW$W_KB_V)!-/Y\NW/+_87BT\_ MO7SY^?/G'[_$;O+CK/OX4G*N7IY]^\7IU[]<^_YGM?RV""&\7/[T_*OS\4U? MI,N*E__ZX^U>VL<#8./I? '35&\P'_\T7W[X=I9@L1SU>W%MW/J-^HZ=?8W5 MCYB03(D?O\SSBU]^V-@X&8YN-L%=+!OU[S]WMR_=$C[-/OZ89@MU[]NOMU\]VIK[_>MK0][?T[A,(])XR3#\IJ+XT_X\XOY^.#3 M!,\^V^^P_/RB7I%597-_@N3?5[CJRZ]H$TS2X60Y.&_I_>FU*[R&P/'+ J<9 M3T;I[,Z36;KTI4G5T:P[^\T)1)PL/QT=SME'@$^CO<4L_;T_FV1ZA+;^YW"\ M.!Z)HC,$IUC6PC&-'AFDK%E";:S2HM!5+@]8%6I.4BUU6V >EPH^O<7+.I(O M<;*8GWVR'-OEN-Z.XF0\'R_79J8Q(P7 Y#V,\_;T%7P:+V R$K9XIX)G)I!( M.H3$/#I@.1B0&H65.3<6[A8HER6\P)G-+FW,.AH*FL]>;'S&.O><3FTGN*!+ MU\AT^;$Z_<;+^>'!P?*:C AT?INZ7VNXFRE] M%Q@FY*KL!\,Y'9KV.,^366<1HO1BG9F(3A+$3OF2Y!LQ@\"5D 8S1! M^MQZFKL?U2K$4-\F,1JKI!E5+N#8(3^P(P)_ZG ?I_/Q$6Z3+WF ;V?S^3M< M[)0/\&6D:+;*DL0WWAMRY B?]SDPFL.4#3Y"R;ZU!7D8Q%5(I+]-$O6IK&:, M>D]:QZ[#?&$63!081"XI2I")W/\L%?-@/4O.NZQ=T%Z4QJRY <8JS##?)C/6 M'?1FVG\[ACB>D/^#\U>'!&BZ&$FE$CDW2T'(\"F:UP!\IE GI!(R*A%;>QS7 M4328)V>'T\7\/1Q#G."9;" "=S(8YJ5#IA./](1%RRSD#(IS]+:U;#HGAY=HP4CB]GX1LDU0H-!@!6?+9,6P$,O$K,:@6B>!5D M$8T9<2^H(3G[.L!V?(7-%:;1>,)J. M26ZN/(-(-"X "EP4 E-KJJR":TA>>&.V-%=+,\+L?,*.!F3Z\2W"'*]ARC5= M8"$P3T$">7)(_\(:($AG;!)0H,C&5+D;T9"\[,8D::B*=O2H[OX-6;>)/8$)0YIN+5]!U MQS17GX:\@)$>N\30FL(T.,>BTQ03Y.KK1:NVN&^$&.-"YX$S]"'IW2'N7Q>K[F=XM<<[69:WYX> MT;UGW3'1;Y2SB/2_)&],9G+X1&0A*L.X%\ESX8/6K;V&B_F[(HB<17'&8F%?,^02Z M>$Y:[T-R+*:DB*A&,8H+#!,^85'%&8[NB>NH;R:$_1X(L:8"FI8;CQ<'RSS@ M--=L,ED^G"82>N3 /) A5>X\5 =LXISI13)85D4VJ>?;L#SBK4<-\#-5JI MI/$*UBAJ(F#QY/%@=7MB-"Q$1](%HT%K[87BC>EPJYJ B1$5NM,6/0R,E'7&IWTB3=?F#J[]Y!"[T?H\RI''S6D/450NW7(=LJ? ME4ZPS< M*KB&%%P]F!?T?L_7EX=F+?T?MW]];M;>W^^_;"W\V;G_=;NYH=M M^E&S7?9W7KOE7OO5A6BTX_[K+K4WQ)V3:/20C/FI&SB;SG_%,NM.=[-]@"\X MW_JRZ(!H/)Y"=[Q-[%O2HA:JS29TFX_D(V"'\T4-'D!+8IF/M>C \\(B(H7* MH0@+T@KDK5-./8JS[IQ%5YV=^=8GM]_Z\@FG', M:*\-.$XS:^OUH%O!#"F0'0HWKTZ(;339/ES^.EXC[3"#TI8E[L@%#UXPK^NN M=RV$R87"=][<%%Z',:30>*AD6E=[+:/LI32G7+Y(\E%4QB47@"4 XK5&5]_7#J>+ZJ81^<^@"TJ MEL #4\YD"HAEK1RAP,@"9NV#]09;YZ=70_9 :]SOM-F:'3THIQEQWN'B@I3% M9G#$7IK/:UL)*VHIMK?,*R>RL+;H8EI[^QV?CQ'+SN6 Q#_PT=WU.@IY/$KS2'5".CT$8( MF=SN7+WP[#P+M88G2VV<#^28Q7[2%]>@#&KF;LVD]0:^&0LNNA<*?7"F%&9- M;0U7D&A8C&92%TA:)N%,Z\J86YVXATNRBTF1"3UZ06?+C3#:^-9YT%;8AV0[GY+!-ZYF/S47 MVA8^W(*>0)/RIB>%&>GX0P?3.7D3=1"G>?GN5.'GLIP$:E48M#R!58896\@V M!2EJG6=B0,(X RGETDOI1'M1AK3F-%2>/Q53GH3VM=W)F\GL\^^8/^)O,)XN MG^2RP&X7TP3F\W$9GYP-484C"6Q403ARG".:6K%$SRS(6G.O.'?>% C-*T5; MXA]21>E0"=XK)UINSKD*_MRZ)*6C4CPSBNM$K:$M+/CBZ<5P3R8FVN;)ISO@ MM,V @_<.G/(L*R_KLF:UG(*S+*0O*DJRIZU7_>[(@#^O*]2* ]=J5!X]XD\R M::\R.01E'*<9@*GL*; U%"_'VC*VN"BX1EV\?DIG^\%QRO/Z'GT1ZRFU^O3I MBLV]W]^\W?FKIQ3%]:OWEI:X1Y!&J8C:5XQ,[?MN=C2FJ_UZ_.<<\_;TS7@* MTU23EN14'BT#J!$1+F."S&RL9Q]8A-I503($>K5@?/*MB_!71[?VYA,X7F[H MW"FOQ_5>TSR_C>B!%K#W M!:4^2'1METH['35LB_CI'-59#QMZ^)'>ONJ0GMN1MPF2"D@N<3VD2A?#8C#( MT&JH!_@5+5H'*_>"&E2&_8G8TU93+7>])<2\7(H_(SA%]TLC?=,0!&X425I7 M!T*HAUX)!EQ()@MA5[X@CZUSOP^$.*3P]JEFIAZ5V O3+A-?.E>*D#4C9.N. M(BRL]AUFV:E@%: .OO7JWZU@AK2S\AG8\WC%M./)5P+3G'G8I7V8(T&Z8&J# M .^DH?#3U\*1) 0+2BH6I70'G =N]?RN6+.N M=IKVHK_2]'P7YXMNG"CN/6V*?OF#"]]\C]UX1J.4NMKOXC6>_$WO3\INMK[0 M0S']B+NPP*U2,"U&"J*.V1?FM15,2R]9S&2(G38B<9=!F]:1[--*V"#;>Q,/ MSTN^+_ P*<.SKD<@BKK#!3U%72D"H//%P.7Y#ZKD/ M];_B&"/_!^<9%#*U.:."K*U4J:\DT)W OH6EL74I M=5M$WTYCO:2=:TGN3KFUV]PHR^2A[N8U01>F%5CF@^),&A^B-T&8T/Y4^Y7A M#]:2\WMA%B/Z 127\\4ZYO1I\)$K0T6O%C,9ZG)92]"AP2>9/%4\/ M@D^^]:%&CX0Z)"_\F5C7AU*;I[K/I]X[GA ?N9&)YE^L'?>P.EE)<(9"*8G+ MPV];-PY8'=T#G=_OTVRVT5W?#NE-B3BKG;9&<@;U0$CM ^$+TC'N0PA)JAB; MM^I[;![VX>.PMP\=_DHA3*YUBSB=+SDT4AD4!8V?.DSC)0+Z]P1/]P5L'M0RUO\]09:B MJ4^P9(7F"Z:M!A:%\"S(E*2)#@%:6_Q5<'T#3F5KZC175T]]?E1V:)UR##V6 M>N1J8B%[SA(F%SV2X,W+UQ^\R^&9/;_6U'B\ EHVD[F2-;OEP+E1"D$6Z8!) ME47=/VJ8)X^#!9 N^"(*=[$Q/U8&-Z14YA-QIQ_%]')%Y0W$1STH9*\%A\X[!#X#W+=19]4^H-MIKN\&O=G*CP;C6@SI>ZP2G[>(_ ] M'->9]:K&=FTB M3YM)[$QO6-#ZFN^5WI:DBZH'G]5&ID#_L74/)BLF(RH*EGBCA6N\HPZX4#CT6ZYO5<]X):B3[? M60Z\K:9Z)%!=C9_2+U6!D1MI@]"LMGBOYYX#@\R1%8PE*1,]UZW/9[T3T$K$ M>>YRAOZ9\U@5];F:4C,;YY*_@D_C!4SJ.;-@+1E-J9CCA$KS4B7/B2DMP%DH MKJ36!^^LCFXE/GW_"?$FRNN17%L'GR:S8\1=).U@/G/7EG5"QI!EK6E5KJ > M=YI9!*%8ULH9$9&#;;U1\2'X5B+84YTY^VS\:J2_M1E6>W2-]G"QF& -+'?* M._Q\4E(])W_NI#O#A::KH^111\<+C8*J)VF8Q""4S)S@F7L(4EUUO*\W'7O@ M/52%N]3'[WUJ#L]&.+"(B),\UE4>7(<,WUP@>-G?M[7WWB-"QA/YI>A MKM;#KN'=U^UQU]= -.J!=_UNU:(E78SP5C,3ED=X%EY/;8Q,8*3_2@0>6WNT M-P)9UTA>O^CR2(N1\,'X0(^(]<&3Q:87+\&R;,D]1 0LL76NX!8H0ZJ>7)\+ M5XUU&$U9(-J7-<#5]JKIS?K=B&T7,-*W7"5=:W-?< :68VSVQQ7I0>. M)NID&2^!8FL1(PO"*&:%D1(CCZGYD9 7[[]^('5ZK;]FW=_;T^7^F]-FP+LX MQ^ZH=OH(Y%(52$SD&$Z.,@[.R'INE0XZ@>:F=9.X%6 -R78\FA'7XZ*VZF@8 M<)\"VP5ROQ?8C6%R!5>T*AA>$N/@(M,Q!>6%+%-DP3^X.TYF<'Q )Z]91"-F18^3:)V/N MA36D@OOV-&FDCMX%R8]Y>(L"'$YR5T_J1NMUHOJ!H<6N^ M&!_4'-$;&'?_A,DASF?E9'_@\C?C\5F >0B3L]VC:S@J3XAN70?HN0:R53A^ MZP;?VJWPPG;?()01!3G32,^"3JKN](5Z)F.6UD09LVJ]_6]5;&O':7?>YU0+ M]*[6)HRG.U/\+X3N7(&C6D-L."J6H+9"]TDQ2,HS)2ELL*:XHIK']FLA'I(; MUPO_KD5Z3Z?@=LF#%3$OCVDBR!_VN]GAQ_TWXZ,E^OE7^* S:'2&<0F%[(W1 M+ "0T0F&7!*A9&E>(MP,_)!\R4%1M:W:>V/MY9&Y9 U_A?F8G.:HLIM:5:IW86A_UD*W0(#C;2.&]1;O+03H/RK:G](11Q'5:*;I&G+K2==>- M,!\.OEG2_=*M1C(Z:Z.^'#2+5CDF0=L4$O>Z>61[$XXA&<9U-'\]);;FF#?,E9X@ M.2D5/P'B$YJ@(S*MZB:61!8UI)""9BUA,+;?/WD-QJ!66OM0_F.'O+GN MSZ?-N!BIDK1)9 J+ 2*A\!2G99D9X5-!*;*-O/79*#? &%8>O+?G_L$CWJ:L M\ J*$QZ^QFY\1.-1L_%%&531 @O9 4'BA46*C5E61I9D?5"NW.<&K'2G(36) M::'G]L.[HOMW^GE]B3#'7W[X/U!+ P04 " )^8)4:L(-X@C Z!:FE]_LPX <0% CQU !)2V*$6%^%\E?F= MJMPJ\S__WY?ST4^?TV0Z;,9_^9G^0G[^*8U#$X?CCW_Y^>\?7H+Y^?_]]4]_ M^L__ _#?3]^]_NEY$R[.TWCVT[-)__F7E]__@ M[6]3:^V3]J???G4Z7/>+^+'TR7^_>?T^G*5S!\/Q=.;&X?(!^/@X^_8/KZ*1 M3^8_Q%^=#O\\;?_]ZR:X6:N@.Y?PT\;?*%_!\M>@? LH TY_^3*-/__U3S_] M-)>_OWNUBG0XGCV)P_,GB]]YXD8C1-Q^PNSKI_27GZ?# M\T^CM/S>V23EC>B72RZ@9('S'^73GG3&=(9 )N'")\#OIG&A>$6,ZSZ].^9O MGP4Q97/OA_>G+]W\[>??B;Z>O MG[]X]_[%?_W]U8?_^?O87<0A[KUW+Z \ LJV2\S\1?^/^SSFRGJ0.,/QL.Q% MK_'+Q;,*_CY7EK[,TCBF^2ZU1#)JPK5?&I4]LOFFU)'S:=1^=W QA8_.?1J\ MG^&!5X5^G \^89B9FL(1+/$I, B]P5Q3X_4B$U-3E54I,EQ3+;NI; M4BP>\:2(^DD:S:;+[[3";P6_&<55S3F I"592$0PC?1%C':"*/+GE MI+^%-_=0]";.=!;X.@IU9,,-3,_;,VHK4(,;MD\ M&;^?->'W-ZVU.HB6HVW%(Q J\,RT6H#G>'IFE@5U5./?;67MKX"HJ?EU)OZJ MVBLHIZDIV555DZZJ/HFQ%:(;_>:&\=7XF?LTG+G1 AQ-.I#,.1#-':[72; I M,K".$.5RE$*%RFJ_%= Q4*">Q'MX\]^E&:XOQ1=N,AZ./TX7J+AT*DCAP7F* MJ+RG"(@A-!>\GL+$W*BB?I MK!R0G].K,3KJ:0$T*8,(.07I)"T4U6 E3X!'(*Z?/I7C$WVJI ?KX_V9FZ3IZ<6L9#Y*.FD@ M29(J)P*:1U?R-@J\16^;69<=8M*$K8F_=HL_W 2Q?Q;TJK:;X8A.,N_!YEA= MZB!'0[7C"I(09?N,!(QE!KQS,E*A(M/56;""XLAIT$WJ/5@@;]-L?KJ];J;3 M 5/>"(.&L,?=$$1 &]BD;, RGABU(C#N*E/@&H#CUO[]9=V#';')RBG8$.AI M_N"^#&@(Q!&? ')[]EB;#)LZ/N?;/IRBE6%:!2VA+) ;..8V"D&B/!X.&E0O@N%$@ M+1%:9Z&3J^W/W@/F<7.K;[VM4DWV1+5_N-%%VH!8.*4LR1;=>,]!&%%D14BI M36(Y4Y$\C?MAVBTHOTNBU=+:*L]4]Z#LORZFL^(53C\T&^*%+7)_$_F[A**; M#F?I?9I\'H8T7^J[%)J/]WN(EQ^>?BI@IR^^I$D8XAH'B@0?=8[ 1$:S(U(/UAL' MT7BMJ.!];:*L],KR?X6L#@;90?.<0**F&"$ MDRQIL\\#_ ?+ZNILE62V"LG>I4\7DW!6MN.3,>ZWL^%DW5LR(/@.2!THI"#P MA4"[ WR@&=#Z$#D+9KWH)=2U);[O@%I]:&I-F+1[L'PKL//CW"B&^VDI**!H MQ0IB2:E&B> 2"YD3:I5@!V'5=V"K]:6G-9RJ$WM_EV)*YRF>3IZYT6@M]Z.* MSDETO*5*Q3Q4* K.!23GHG'V[X%)5_:SA4>?8_9TXYW07WL>< M#0,>:42_&H7B.-7@HPTR,"Y3KETZL!VR[YQ%NVMG#8DZYP&>#S\/8QK'Z94J MN6=N>C;@T87$$SH-M(3]*)Z\IJ"30:>HE/!"U+ZML G+<1.EB@;64*-[D'\E M:2T\RXE)!<27*@G.=$&D0<=HHJ")$%H[/WA'H4"5S#>3A# ;*=!4Z(Y>2<=KY4DB&U(N:@:'" &6*1.X5][%VJN(N3-U/ ME+6?/[_30W54AF<&2K59;]Q&/*X3(OIWS&A"O*/[6>]>;\15Y<'J 5))X _E MMMR'X3EN]*?YP\2-ISE-3O.O38,VU"*:WM[_(-YHF;."%"TO,Z.5>/ DV_JNBAE.T.B(OBX&U ]G2[;BN A[EM5UV]N]&G M@VX.1B3AI/"4E*2=1H<-+6&PSEE@Z,!EHJ*FU+Z'!-XR"1I1,"L;?EP2KC_L>6-!1R#T4W"\L\Y6_V&];6;X: 32 MX#9V^>A+-A-)E!:20U+:EGP 'F#HVP/5U&MN').R=O1]6VR=@_+A+,6+43K- MUY[8/@X?^W(X=N. +]OEH^>A#<]$)%H(X,GC6QXT!<=0)#K2Z+GV@M+J;<+N M!W5?D<9>V+22V]R#NAY*,'+;%3[]>F6U^-FM[QN-3L[C 61I*'Z'SFAGE+L3 M$I>=;=2$URYD[(+W8(V_]L&GU1O_^]%K+QU#KB):V,W;8.HIPKD.SV$"FOO3 MZHJY6$DE^Z*+SXKC7H_^;U:E@58BX&C;"47H&&DB0M9.H.R/)G>$+1\62W;1 M1#_ARYA63=Z%NVR"",EQ#X0XBBY43@@N>6#*L\C*E1+BX3SJ$D5-L7C7 5\)[Q XL<&AXQN9 MN\M+W/VQCY@ /ROD]*\0"B>4\X9-+6X!RJ9P1'I@'F18]#*,%&[ MC&,#E/W382\>5@W!]]&Y<#1J_BCS$EXVD^?-A9_EB]$JU '3UF5C E"/.Y<0 MRH%+0@./1K*LDM2A^E77K9 =*UOJJV4OF\G;-!M83532Y4I/*7L6Y:Z/4RH" M*[V?K8M4A;YP[R.A2O'L;UC+2S"_[5"F#I7MZ=2/AO-DS8LOGU) 3,N4X'O\[C2[ ML!#+@OC69Q-#9B ]XR""*KT6*8.LHJ0ANF1D[?Y#]=!7RA3>'\DB1B84BYD2 M,(1D$(DDW#R8!Q^SDD1&1U7M6XEUD.\K8GX@OF[(-^Y3W0\EQ-YYZ>]G;C)[ MCGM<&Z#)A!-6/"4BG(#2-P8LB1J"\<4SLU2YVGFRNBLX5!C^$!2L_1;F-6\ M*%QRHU=M'4';L'994=GDD\]HW)6S -?QWHW2&S?Y'0T^_,;[%"XFK8'8(6%2 M[^$=K>*>I%!KQ/5EA>L2R6BR621&TLKISS,H<)=W*-+S4:,\Z'1#BUM>]9 M;P%K;R.T>^/+2O>0RKIX*%;DFOV@#0D;E67TP@(3[?5"+<$E79IC,.YP)P^L M^I61#5 .UBRDML:;^I+O\9I^*;68WSAM;8AUYT:I\YNN_]&B_&^;M?353J3B M.@Y3I%^%(!L: !Q,NP^=L=IPY6UR8&P9-A#+E6=+""@O@E"14%]]EOC#9^H= M]P0>/%%W46KMG@9O+L:(_9,;M='GR:=FXF;I:3..R]KE1(QO:U6-3!K],*)+ M1W@%P@4AG,B2*WJ7>['5DP[0R>!@2FSZTD ?U<(W3(L;AL=Y,YD-_[=,3IG. MGKHIOE=6>D%X&3"EJ 216>G,K14$=*F9(5[:5-OOV17C :;5[LT5Z%5?/?#K M=D,67\V_I5'\T+QQL_(K7Y_-)SP//Z>_CR?S63RXFE_;BWK2:%M>%"MSF1]M M47[62"#!L" E"8%5;W9<"_PQ,_(P&N[!E*NRD'9N:$H6G3.EP-!2TI1)F15; M1M9':2TE) E3.V1<#?P/JM;6< \=BC8+ZOH2!UP+(Y46H @/($QT);?(@">* MED:R3)C:Z?AML1TST7K1S\8)P[UF*2Z'ZKT:MVF6\D7E9,2MS^@AY[#]FFKU M&$^3X>=V)YF^=,-).U;BDFE&4[31/.K?.G0NK)?@\1L0%3>4&B5)KIT#OQ50 MY[#N\A.G5Q[SM+A (;T_2VGVNGP$BOSIU\M?6!9'%5_LZ=>_I?@1W;7G:3K\ M.':7M1**!28M&K),%VO6APC.L S.*NDE6KBY^O3S_E:SM\[FU=BW$D9^&)I^ M*/F,U;6TH:C J) \:#!%KH+0 (8'!ME9R@*Q4M/:-['7(SE4-N.AT*2IKJX> MW)!55(L8U#:X>LIG;,)TF-Q$#;W=284.0M\G*:3B4IE8FE@6 S)Y!\YGCJ^# M-AD=%)5E[6F_^R7#'>'_?7)A%UGW$I^8 TKQ9+K >&G3+ALHDQR\H!84+P/: MH^3@**&0"$LF>DN[ MY#9P1$=RM)XFX*5(4/T+(2DG8VF=E'7 M_NEQA[5R&';L(OD>6/$*?>U)FL[>XV6?9X4JJ2[2&!@.>, M .=<"F5]BJIVU&L]D@,TQ:^FK::ZJ'LP2MJAJ7$X^WKZJ[$!;B@'' C%/52:'^S]*2S_M<".2+U=Q=T#Z__RV:2T$IZ\26D0NTP?15Y]S\, MY?;K0=]D\B:YE&DZX_BV*041\R_;,K-+GE+.4N;H^%JN6!DEZ,J$=0F:$*UL($S1VI?7 MJRZ@6O*S YAY,"$;SY*U^,8[*5&2)H.G3H%"VRV9& FK[C!5 [^OU.;AN+LQ M%;I7O3^4S.>WU3_]^NVO?QNF"2([^_HZ?4ZCUL5-!%W;X#2HH-$1*5VRT;Q! M*1L6-!-)1UF[>'@[9 >/1>Z7-9NX6T][?3@2ZP[&5;P+VWD;L#U%)7<">J#K M73UH?!.I>E/7P3DFC:3$Y@0F$H_O'!%@F&%@,BFE?(XKWMMV=CANW74AZZ%1 M:QPJ/KH+$%-!I-T(%RD$X3$'B4@RO#3+B*BJGHE6'5XV.;X7QO M!+F/%GI-JZW)&CE*N)26HK7'+8CDT'LAW$-.(G$::72A]AGTH)/Z!S6DJVEJ MWSG\;;#]R.'OK,5=LK3W4<&^<_@^*LN\SZ"3Y2"LYN!%YL S5]01EEGU:L/' ME,*^"$%;6KBM[1$F\G32W2Q)O M%['W8+9NJ#6@CFH5O '! AK3EI0[DME#8M(GCC]TU7WB1U'6T84&%43=PYZP MOMJ $,9S" JBDHA,:PM>H:U,"9KC*AF/CO]W6-;11?W=!=V#.?FF&:>O\Q:- M+R_&<7HR>^8FDZ]H2[=F^(#[Z(-WQ5,J#$V:@DF,@>;<,ZI%)M4O/=T!Z8#> MZ\&S4S6U5?$L:5ODO&[&'S^DR?FK\6?L\1 ,5-[87S9T+-KIL=\C=WI63J^^RUQH Y5M]EY0()+A"9G* M;0Q#!&Z9+GF.^R3-_=40R!7)#*@E ONB 9IROQF+2V:43(! MISX+%8S5H?Z=J35 ?C"EBV;Z[XY16G?4[H9QYV=V+#7;#7.E@K)"B=/\#+DS MG+UTH6CSZR5-F+0R6!Z!FXBF!D\"K,X2E,EX2%#N1*R=\[H54-=-9=V'SR/) MR27#",VXO6E( MWKKS98!@&UR]96#68SI4]J6;SFZE0$>![Y,063O%K4%K!_& $"HA/F7!J9B) M-XZC0_6HB7!GGF4_/-A%SK7[,_]]/"W&=(KOTWC83*YO?XLXG^:2"\\3!(,G M)>(+8!CZU,8PE;7GRG%QEYFY[<,.$32MH9:F1YGVD#HI0959FIR7Q9<8\;P@ M+BF64DBHN:1 ,-&.Q?+H]F29N7=1ZNIV\1H-W4&!#N+NX?C?@(YXB@Z1EF!8N#R1(74P@$&,NA5!IZ\)()4-8+M'EB-*ZVT;>* M8O]60 W]W!(NN(=P:R>Y7HWC!5HY0S=:C"^\.@,B,D<9UQF"([;<\W;@H_) M#656F\C,S5OP&TR\VY[RJ+5:5X9]%$-<,USFM6 Z62_1R"1<(R+.(QJOR>'? M!(O$1)M][;S"*HKC,NEG%M@ZLF46X?G,(9<5UW=JOH.@N[] MY5_&EUSR1$4.,E*&/J:4X!CA0))F7I,L%*U]=6-_RK_#@-N'[G>1;P\ZQR.H M&7T>CC^N#3 XP3@OS;L8*::&2 0