0000006845-24-000004.txt : 20240103 0000006845-24-000004.hdr.sgml : 20240103 20240103142445 ACCESSION NUMBER: 0000006845-24-000004 CONFORMED SUBMISSION TYPE: 10-Q PUBLIC DOCUMENT COUNT: 69 CONFORMED PERIOD OF REPORT: 20231125 FILED AS OF DATE: 20240103 DATE AS OF CHANGE: 20240103 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: 0302 FILING VALUES: FORM TYPE: 10-Q SEC ACT: 1934 Act SEC FILE NUMBER: 000-06365 FILM NUMBER: 24505585 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-20231125.htm 10-Q apog-20231125
0000006845false2024Q3March 200000068452023-02-262023-11-2500000068452023-12-29xbrli:shares00000068452023-11-25iso4217:USD00000068452023-02-25iso4217:USDxbrli:shares00000068452023-08-272023-11-2500000068452022-08-282022-11-2600000068452022-02-272022-11-2600000068452022-02-2600000068452022-11-260000006845us-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-2700000068452023-05-270000006845us-gaap:CommonStockMember2023-05-270000006845us-gaap:AdditionalPaidInCapitalMember2023-05-270000006845us-gaap:RetainedEarningsMember2023-05-270000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-05-270000006845us-gaap:RetainedEarningsMember2023-05-282023-08-2600000068452023-05-282023-08-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-05-282023-08-260000006845us-gaap:CommonStockMember2023-05-282023-08-260000006845us-gaap:AdditionalPaidInCapitalMember2023-05-282023-08-2600000068452023-08-260000006845us-gaap:CommonStockMember2023-08-260000006845us-gaap:AdditionalPaidInCapitalMember2023-08-260000006845us-gaap:RetainedEarningsMember2023-08-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-08-260000006845us-gaap:RetainedEarningsMember2023-08-272023-11-250000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-08-272023-11-250000006845us-gaap:CommonStockMember2023-08-272023-11-250000006845us-gaap:AdditionalPaidInCapitalMember2023-08-272023-11-250000006845us-gaap:CommonStockMember2023-11-250000006845us-gaap:AdditionalPaidInCapitalMember2023-11-250000006845us-gaap:RetainedEarningsMember2023-11-250000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2023-11-250000006845us-gaap:CommonStockMember2022-02-260000006845us-gaap:AdditionalPaidInCapitalMember2022-02-260000006845us-gaap:RetainedEarningsMember2022-02-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-02-260000006845us-gaap:RetainedEarningsMember2022-02-272022-05-2800000068452022-02-272022-05-280000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-02-272022-05-280000006845us-gaap:CommonStockMember2022-02-272022-05-280000006845us-gaap:AdditionalPaidInCapitalMember2022-02-272022-05-2800000068452022-05-280000006845us-gaap:CommonStockMember2022-05-280000006845us-gaap:AdditionalPaidInCapitalMember2022-05-280000006845us-gaap:RetainedEarningsMember2022-05-280000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-05-280000006845us-gaap:RetainedEarningsMember2022-05-292022-08-2700000068452022-05-292022-08-270000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-05-292022-08-270000006845us-gaap:CommonStockMember2022-05-292022-08-270000006845us-gaap:AdditionalPaidInCapitalMember2022-05-292022-08-2700000068452022-08-270000006845us-gaap:CommonStockMember2022-08-270000006845us-gaap:AdditionalPaidInCapitalMember2022-08-270000006845us-gaap:RetainedEarningsMember2022-08-270000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-08-270000006845us-gaap:RetainedEarningsMember2022-08-282022-11-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-08-282022-11-260000006845us-gaap:CommonStockMember2022-08-282022-11-260000006845us-gaap:AdditionalPaidInCapitalMember2022-08-282022-11-260000006845us-gaap:CommonStockMember2022-11-260000006845us-gaap:AdditionalPaidInCapitalMember2022-11-260000006845us-gaap:RetainedEarningsMember2022-11-260000006845us-gaap:AccumulatedOtherComprehensiveIncomeMember2022-11-260000006845us-gaap:TransferredAtPointInTimeMember2023-08-272023-11-250000006845us-gaap:TransferredAtPointInTimeMember2022-08-282022-11-260000006845us-gaap:TransferredAtPointInTimeMember2023-02-262023-11-250000006845us-gaap:TransferredAtPointInTimeMember2022-02-272022-11-260000006845us-gaap:TransferredOverTimeMember2023-08-272023-11-250000006845us-gaap:TransferredOverTimeMember2022-08-282022-11-260000006845us-gaap:TransferredOverTimeMember2023-02-262023-11-250000006845us-gaap:TransferredOverTimeMember2022-02-272022-11-260000006845us-gaap:TradeAccountsReceivableMember2023-11-250000006845us-gaap:TradeAccountsReceivableMember2023-02-250000006845apog:AccountsReceivableConstructionContractsMember2023-11-250000006845apog:AccountsReceivableConstructionContractsMember2023-02-2500000068452023-11-262023-11-2500000068452024-11-262023-11-2500000068452025-11-262023-11-250000006845apog:MunicipalandCorporateBondsMember2023-11-250000006845apog:MunicipalandCorporateBondsMember2023-02-250000006845us-gaap:DesignatedAsHedgingInstrumentMemberus-gaap:InterestRateSwapMember2023-11-250000006845us-gaap:DesignatedAsHedgingInstrumentMemberus-gaap:CommodityOptionMember2023-11-250000006845us-gaap:ForeignExchangeForwardMemberus-gaap:DesignatedAsHedgingInstrumentMember2023-11-250000006845us-gaap:FairValueInputsLevel1Member2023-11-250000006845us-gaap:FairValueInputsLevel2Member2023-11-250000006845us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel2Member2023-11-250000006845us-gaap:ForeignExchangeForwardMember2023-11-250000006845us-gaap:FairValueInputsLevel2Memberus-gaap:InterestRateSwapMember2023-11-250000006845us-gaap:InterestRateSwapMember2023-11-250000006845us-gaap:FairValueInputsLevel2Memberus-gaap:CommodityOptionMember2023-11-250000006845us-gaap:CommodityOptionMember2023-11-250000006845us-gaap:FairValueInputsLevel1Member2023-02-250000006845us-gaap:FairValueInputsLevel2Member2023-02-250000006845us-gaap:FairValueInputsLevel2Memberus-gaap:InterestRateSwapMember2023-02-250000006845us-gaap:InterestRateSwapMember2023-02-250000006845us-gaap:ForeignExchangeForwardMemberus-gaap:FairValueInputsLevel2Member2023-02-250000006845us-gaap:ForeignExchangeForwardMember2023-02-250000006845us-gaap:FairValueInputsLevel2Memberus-gaap:CommodityOptionMember2023-02-250000006845us-gaap:CommodityOptionMember2023-02-250000006845apog:ArchitecturalFramingSegmentMember2022-02-260000006845apog:ArchitecturalGlassMember2022-02-260000006845apog:ArchitecturalServicesSegmentMember2022-02-260000006845apog:LargeScaleOpticalMember2022-02-260000006845apog:ArchitecturalFramingSegmentMember2022-02-272022-11-260000006845apog:ArchitecturalGlassMember2022-02-272022-11-260000006845apog:ArchitecturalServicesSegmentMember2022-02-272022-11-260000006845apog:LargeScaleOpticalMember2022-02-272022-11-260000006845apog:ArchitecturalFramingSegmentMember2023-02-250000006845apog:ArchitecturalGlassMember2023-02-250000006845apog:ArchitecturalServicesSegmentMember2023-02-250000006845apog:LargeScaleOpticalMember2023-02-250000006845apog:ArchitecturalFramingSegmentMember2023-02-262023-11-250000006845apog:ArchitecturalGlassMember2023-02-262023-11-250000006845apog:ArchitecturalServicesSegmentMember2023-02-262023-11-250000006845apog:LargeScaleOpticalMember2023-02-262023-11-250000006845apog:ArchitecturalFramingSegmentMember2023-11-250000006845apog:ArchitecturalGlassMember2023-11-250000006845apog:ArchitecturalServicesSegmentMember2023-11-250000006845apog:LargeScaleOpticalMember2023-11-250000006845us-gaap:CustomerRelationshipsMember2023-11-250000006845us-gaap:CustomerRelationshipsMember2023-02-262023-11-250000006845us-gaap:TrademarksMember2023-11-250000006845us-gaap:TrademarksMember2023-02-262023-11-250000006845us-gaap:TrademarksAndTradeNamesMember2023-11-250000006845us-gaap:TrademarksAndTradeNamesMember2023-02-262023-11-250000006845us-gaap:CustomerRelationshipsMember2023-02-250000006845us-gaap:CustomerRelationshipsMember2022-02-272023-02-250000006845us-gaap:TrademarksMember2023-02-250000006845us-gaap:TrademarksMember2022-02-272023-02-2500000068452022-02-272023-02-250000006845us-gaap:TrademarksAndTradeNamesMember2023-02-250000006845us-gaap:TrademarksAndTradeNamesMember2022-02-272023-02-250000006845us-gaap:RevolvingCreditFacilityMember2023-11-250000006845us-gaap:RevolvingCreditFacilityMember2023-02-250000006845country:CAus-gaap:RevolvingCreditFacilityMember2023-11-250000006845country:CAus-gaap:RevolvingCreditFacilityMember2023-02-250000006845us-gaap:LetterOfCreditMember2023-11-250000006845apog:RecoveryZoneFacilityBondsMember2023-11-250000006845apog:August2025Member2023-02-262023-11-250000006845apog:August2025Member2023-11-250000006845apog:September2025Member2023-02-262023-11-250000006845apog:September2025Member2023-11-250000006845us-gaap:RestrictedStockMember2023-02-262023-11-250000006845us-gaap:PerformanceSharesMember2023-02-262023-11-25apog:Reportable_segment0000006845apog:ArchitecturalFramingSegmentMemberus-gaap:OperatingSegmentsMember2023-08-272023-11-250000006845apog:ArchitecturalFramingSegmentMemberus-gaap:OperatingSegmentsMember2022-08-282022-11-260000006845apog:ArchitecturalFramingSegmentMemberus-gaap:OperatingSegmentsMember2023-02-262023-11-250000006845apog:ArchitecturalFramingSegmentMemberus-gaap:OperatingSegmentsMember2022-02-272022-11-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2023-08-272023-11-250000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2022-08-282022-11-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2023-02-262023-11-250000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalGlassMember2022-02-272022-11-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2023-08-272023-11-250000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2022-08-282022-11-260000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2023-02-262023-11-250000006845us-gaap:OperatingSegmentsMemberapog:ArchitecturalServicesSegmentMember2022-02-272022-11-260000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2023-08-272023-11-250000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2022-08-282022-11-260000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2023-02-262023-11-250000006845us-gaap:OperatingSegmentsMemberapog:LargeScaleOpticalMember2022-02-272022-11-260000006845us-gaap:IntersegmentEliminationMember2023-08-272023-11-250000006845us-gaap:IntersegmentEliminationMember2022-08-282022-11-260000006845us-gaap:IntersegmentEliminationMember2023-02-262023-11-250000006845us-gaap:IntersegmentEliminationMember2022-02-272022-11-260000006845apog:ArchitecturalFramingSegmentMember2023-08-272023-11-250000006845apog:ArchitecturalFramingSegmentMember2022-08-282022-11-260000006845apog:ArchitecturalGlassMember2023-08-272023-11-250000006845apog:ArchitecturalGlassMember2022-08-282022-11-260000006845apog:ArchitecturalServicesSegmentMember2023-08-272023-11-250000006845apog:ArchitecturalServicesSegmentMember2022-08-282022-11-260000006845apog:LargeScaleOpticalMember2023-08-272023-11-250000006845apog:LargeScaleOpticalMember2022-08-282022-11-260000006845us-gaap:CorporateAndOtherMember2023-08-272023-11-250000006845us-gaap:CorporateAndOtherMember2022-08-282022-11-260000006845us-gaap:CorporateAndOtherMember2023-02-262023-11-250000006845us-gaap:CorporateAndOtherMember2022-02-272022-11-26

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 November 25, 2023
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 shareAPOGThe Nasdaq Stock Market LLC
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 filero  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 December 29, 2023, 22,085,098 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)November 25, 2023February 25, 2023
Assets
Current assets
Cash and cash equivalents$23,407 $19,924 
Restricted cash 1,549 
Receivables, net
198,249 197,267 
Inventories70,267 78,441 
Contract assets48,146 59,403 
Other current assets32,390 26,517 
Total current assets372,459 383,101 
Property, plant and equipment, net of accumulated depreciation of $454,659 and $431,710
246,206 248,867 
Operating lease right-of-use assets38,849 41,354 
Goodwill129,053 129,026 
Intangible assets, net64,174 67,375 
Other non-current assets44,114 45,642 
Total assets$894,855 $915,365 
Liabilities and Shareholders’ Equity
Current liabilities
Accounts payable$83,107 $86,549 
Accrued compensation and benefits42,768 51,651 
Contract liabilities35,770 28,011 
Operating lease liabilities12,358 11,806 
Other current liabilities62,572 64,532 
Total current liabilities236,575 242,549 
Long-term debt100,666 169,837 
Non-current operating lease liabilities29,547 33,072 
Non-current self-insurance reserves31,830 29,316 
Other non-current liabilities40,506 44,183 
Commitments and contingent liabilities (Note 7)
Shareholders’ equity
Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 22,085,098 and 22,224,299, respectively
7,362 7,408 
Additional paid-in capital149,557 146,816 
Retained earnings329,936 273,740 
Accumulated other comprehensive loss(31,124)(31,556)
Total shareholders’ equity455,731 396,408 
Total liabilities and shareholders’ equity$894,855 $915,365 
See accompanying notes to consolidated financial statements.

4

CONSOLIDATED RESULTS OF OPERATIONS
(Unaudited)
Three Months EndedNine Months Ended
(In thousands, except per share data)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Net sales$339,714 $367,847 $1,055,102 $1,096,591 
Cost of sales249,409 281,239 776,440 839,430 
Gross profit90,305 86,608 278,662 257,161 
Selling, general and administrative expenses52,658 51,847 166,695 157,112 
Operating income37,647 34,761 111,967 100,049 
Interest expense, net1,454 2,590 5,720 5,494 
Other expense (income), net890 552 (3,722)2,035 
Earnings before income taxes35,303 31,619 109,969 92,520 
Income tax expense8,329 7,854 26,092 8,635 
Net earnings$26,974 $23,765 $83,877 $83,885 
Basic earnings per share$1.24 $1.09 $3.83 $3.81 
Diluted earnings per share$1.23 $1.07 $3.80 $3.74 
Weighted average basic shares outstanding21,819 21,870 21,889 22,043 
Weighted average diluted shares outstanding22,013 22,278 22,093 22,456 
See accompanying notes to consolidated financial statements.

5

CONSOLIDATED STATEMENTS OF COMPREHENSIVE EARNINGS
(Unaudited)
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Net earnings$26,974 $23,765 $83,877 $83,885 
Other comprehensive (loss) earnings:
Unrealized (loss) gain on marketable securities, net of $(2), $(24), $23 and $(127) of tax (benefit) expense, respectively
(7)(88)86 (470)
Unrealized gain (loss) on derivative instruments, net of $56, $277, $1 and $(1,192) of tax expense (benefit), respectively
186 905 6 (3,911)
Foreign currency translation adjustments(604)(1,295)340 (2,340)
Other comprehensive (loss) earnings(425)(478)432 (6,721)
Total comprehensive earnings$26,549 $23,287 $84,309 $77,164 

See accompanying notes to consolidated financial statements.

6

CONSOLIDATED STATEMENTS OF CASH FLOWS
(Unaudited)
Nine Months Ended
(In thousands)November 25, 2023November 26, 2022
Operating Activities
Net earnings$83,877 $83,885 
Adjustments to reconcile net earnings to net cash provided by operating activities:
Depreciation and amortization31,185 31,925 
Share-based compensation6,644 5,961 
Deferred income taxes1,296 2,341 
Gain on disposal of assets(50)(1,484)
Proceeds from New Markets Tax Credit transaction, net of deferred costs 18,390 
Settlement of New Markets Tax Credit transaction(4,687)(19,523)
Noncash lease expense8,742 8,924 
Other, net10 4,700 
Changes in operating assets and liabilities:
Receivables(846)(55,791)
Inventories8,256 (5,822)
Contract assets11,194 (8,314)
Accounts payable(1,902)(19,780)
Accrued expenses(7,015)7,281 
Contract liabilities7,635 24,702 
Refundable and accrued income taxes(7,587)(14,391)
Operating lease liability(9,214)(9,168)
Prepaid expenses and other current assets1,714 (2,724)
Net cash provided by operating activities129,252 51,112 
Investing Activities
Capital expenditures(26,956)(18,119)
Proceeds from sales of property, plant and equipment247 5,212 
Purchases of marketable securities(969) 
Sales/maturities of marketable securities1,370 923 
Net cash used by investing activities(26,308)(11,984)
Financing Activities
Borrowings on line of credit195,851 430,879 
Repayment on debt (151,000)
Payments on line of credit(265,000)(239,000)
Payments on debt issuance costs (790)
Repurchase and retirement of common stock(11,821)(74,312)
Dividends paid(15,690)(14,415)
Other, net(3,781)(2,959)
Net cash used by financing activities(100,441)(51,597)
Increase (decrease) in cash, cash equivalents and restricted cash2,503 (12,469)
Effect of exchange rates on cash(569)350 
Cash, cash equivalents and restricted cash at beginning of year21,473 37,583 
Cash and cash equivalents at end of period$23,407 $25,464 
Noncash Activity
Capital expenditures in accounts payable$1,231 $1,557 
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 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 
Net earnings— — — 26,974 — 26,974 
Other comprehensive income, net of tax— — — — (424)(424)
Issuance of stock, net of cancellations15 6 (5)— — 1 
Share-based compensation— — 2,161 — — 2,161 
Other share retirements(2)(1)(12)(64)— (77)
Cash dividends— — — (5,222)— (5,222)
Balance at November 25, 202322,085 $7,362 $149,557 $329,936 $(31,124)$455,731 
See accompanying notes to consolidated financial statements.

8

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 February 26, 202223,701 $7,901 $149,713 $254,825 $(26,240)$386,199 
Net earnings— — — 22,731 — 22,731 
Other comprehensive loss, net of tax— — — — (2,860)(2,860)
Issuance of stock, net of cancellations100 33 23 — — 56 
Share-based compensation— — 1,597 — — 1,597 
Share repurchases(1,571)(524)(10,350)(63,438)— (74,312)
Other share retirements(30)(10)(198)(1,120)— (1,328)
Cash dividends— — — (4,793)— (4,793)
Balance at May 28, 202222,200 $7,400 $140,785 $208,205 $(29,100)$327,290 
Net earnings— — — 37,389 — 37,389 
Other comprehensive loss, net of tax— — — — (3,383)(3,383)
Issuance of stock, net of cancellations(14)(5)61 — — 56 
Share-based compensation— — 1,797 — — 1,797 
Exercise of stock options36 12 (954)— — (942)
Other share retirements(13)(4)(114)(540)— (658)
Cash dividends— — — (4,809)— (4,809)
Balance at August 27, 202222,209 $7,403 $141,575 $240,245 $(32,483)$356,740 
Net earnings— — — 23,765 — 23,765 
Other comprehensive loss, net of tax— — — — (478)(478)
Issuance of stock, net of cancellations9 3 250 (196)— 57 
Share-based compensation— — 2,567 — — 2,567 
Other share retirements(4)(1)(34)(165)— (200)
Cash dividends— — — (4,813)— (4,813)
Balance at November 26, 202222,214 $7,405 $144,358 $258,836 $(32,961)$377,638 

See accompanying notes to consolidated financial statements.

9

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. The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended February 25, 2023. 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 nine-month periods ended November 25, 2023 are not necessarily indicative of the results to be expected for the full year.

Reclassifications
Certain reclassifications of amounts previously reported have been made to the accompanying consolidated balance sheets, consolidated statements of cash flows and notes to consolidated financial statements to conform to current year presentation of contract assets and liabilities. These reclassifications had no impact on reported cash flows or total assets and liabilities.

Adoption of new accounting standards
In the first quarter, we adopted the guidance in ASU 2022-04, Liabilities – Supplier Finance Programs, Disclosure of Supplier Finance Program Obligations. The guidance requires that entities that use supplier finance programs disclose information about the nature and potential magnitude of the programs, activity during the period, and changes from period to period. Beginning in the first quarter, we implemented a supplier financing arrangement with U.S. Bank that enables our suppliers, at their sole discretion, to sell the Company's receivables (i.e., our payment obligations to the suppliers) to U.S. Bank on a non-recourse basis in order to be paid earlier than our payment terms provide. Our 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 a supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. As of November 25, 2023, $7.8 million of obligations remained outstanding that we have confirmed as valid to the administrators of our program with U.S. Bank. These balances are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided (used by) operating activities in our consolidated statements of cash flows when settled.

2.Revenue, Receivables and Contract Assets and Liabilities

Revenue
The following table disaggregates total revenue by timing of recognition (see Note 11 for disclosure of revenue by segment):
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Recognized at shipment$144,910 $168,593 $449,805 $504,450 
Recognized over time194,804 199,254 605,297 592,141 
Total$339,714 $367,847 $1,055,102 $1,096,591 

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 forecast 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)November 25, 2023February 25, 2023
Trade accounts$113,016 $140,732 
Construction contracts88,007 58,331 
Total receivables201,023 199,063 
Less: allowance for credit losses2,774 1,796 
Receivables, net$198,249 $197,267 
10


The following table summarizes the activity in the allowance for credit losses for the nine-month period ended:
(In thousands)November 25, 2023
Beginning balance$1,796 
Additions charged to costs and expenses1,256 
Deductions from allowance, net of recoveries(281)
Foreign currency effects3 
Ending balance$2,774 

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 EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Revenue recognized related to contract liabilities from prior year-end$191 $3,473 $25,147 $36,630 
Revenue recognized related to prior satisfaction of performance obligations730 4,640 5,634 9,586 

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 November 25, 2023 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)November 25, 2023
Within one year
$456,880 
Between one and two years
315,667 
Beyond two years
75,170 
Total$847,717 

3.Inventories

Inventories
(In thousands)November 25, 2023February 25, 2023
Raw materials$34,535 $36,869 
Work-in-process17,256 18,024 
Finished goods18,476 23,548 
Total inventories$70,267 $78,441 




11

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
November 25, 2023$10,168 $3 $597 $9,574 
February 25, 202310,647  702 9,945 

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 November 25, 2023, 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$2,439 $2,406 
Due after one year through five years7,729 7,168 
Total$10,168 $9,574 

Derivative instruments
We use interest rate swaps, foreign exchange contracts, commodity swaps 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 our floating-rate revolving credit facility. As of November 25, 2023, 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 November 25, 2023, we held aluminum fixed/floating swaps and foreign exchange contracts with U.S. dollar notional values of $14.9 million and $0.8 million, respectively.

These derivative instruments are recorded within our consolidated balance sheets within other current assets and liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive income.

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

(In thousands)Quoted Prices in
Active Markets
(Level 1)
Other Observable Inputs (Level 2)Total Fair Value
November 25, 2023
Assets:
Money market funds$13,262 $— $13,262 
Municipal and corporate bonds— 9,574 9,574 
Foreign currency option contract— 3 3 
Interest rate swap contract— 1,550 1,550 
Liabilities:
Aluminum hedging contract— 724 724 
February 25, 2023
Assets:
Money market funds$8,062 $— $8,062 
Municipal and corporate bonds— 9,945 9,945 
Interest rate swap contract— 1,817 1,817 
Liabilities:
Foreign currency option contract— 206 206 
Aluminum hedging contract— 1,075 1,075 

5.Goodwill and Other Intangible Assets

Goodwill
Goodwill represents the excess of the cost over the value of net tangible and identified intangible assets of acquired businesses. We evaluate goodwill for impairment annually as of the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that the carrying value of goodwill may not be recoverable.

At the beginning of the first quarter of fiscal 2023, we began management of the Sotawall and Harmon businesses under the Architectural Services segment in order to create a single, unified offering for larger custom curtainwall projects, which resulted in the combination of the Sotawall and Harmon reporting units into a single reporting unit. We evaluated goodwill on a qualitative basis prior to and subsequent to this change for these reporting units and concluded that no adjustment to the carrying value of goodwill was necessary. Concurrent with the move of Sotawall from the Architectural Framing Systems segment to the Architectural Services segment effective at the start of our first quarter of fiscal 2023, goodwill was reallocated to the affected reporting units within each segment, using a relative fair value approach as outlined in ASC 350, Intangibles - Goodwill and Other.

During the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative goodwill impairment evaluation was performed.

The following table presents the carrying amount of goodwill attributable to each reporting segment including the amount of goodwill that was reallocated from the Architectural Framing Systems segment to the Architectural Services segment using the relative fair value approach during the first quarter of fiscal 2023:
(In thousands)Architectural Framing SystemsArchitectural GlassArchitectural ServicesLarge-Scale
Optical
Total
Balance at February 26, 2022$93,181 $25,244 $1,120 $10,557 $130,102 
Reallocation among reporting units (1)
(2,048) 2,048   
Foreign currency translation(996)57 (137) (1,076)
Balance at February 25, 202390,137 25,301 3,031 10,557 129,026 
Foreign currency translation(28)59 (4) 27 
Balance at November 25, 2023$90,109 $25,360 $3,027 $10,557 $129,053 
(1) Represents the reallocation of goodwill as a result of transitioning Sotawall from the Architectural Framing Systems segment to the Architectural Services segment as of the start of the first quarter of fiscal 2023.


13

Other intangible assets
Indefinite-lived intangible assets
We have intangible assets for certain acquired trade names and trademarks which are determined to have indefinite useful lives. We test indefinite-lived intangible assets for impairment annually at the same measurement date as goodwill, the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that it is more likely than not that the asset is impaired. During the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative intangible impairment evaluation was performed.

Definite-lived intangible assets
Long-lived assets or asset groups, including intangible assets subject to amortization and property and equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying value of those assets may not be recoverable. We use undiscounted cash flows to determine whether impairment exists and measure any impairment loss using discounted cash flows to determine the fair value of long-lived assets.

The gross carrying amount of other intangible assets and related accumulated amortization was:

(In thousands)Gross
Carrying
Amount
Accumulated
Amortization
Foreign
Currency
Translation
Net
November 25, 2023
Definite-lived intangible assets:
Customer relationships$86,798 $(52,130)$(15)$34,653 
Other intangibles38,360 (35,706)25 2,679 
Total125,158 (87,836)10 37,332 
Indefinite-lived intangible assets:
Trademarks26,851 — (9)26,842 
Total intangible assets$152,009 $(87,836)$1 $64,174 
February 25, 2023
Definite-lived intangible assets:
Customer relationships$89,495 $(49,404)$(2,697)$37,394 
Other intangibles39,404 (35,229)(1,045)3,130 
Total128,899 (84,633)(3,742)40,524 
Indefinite-lived intangible assets:
Trademarks27,129 — (278)26,851 
Total intangible assets$156,028 $(84,633)$(4,020)$67,375 

Amortization expense on definite-lived intangible assets was $3.0 million and $3.1 million for the nine-month periods ended November 25, 2023 and November 26, 2022, respectively. Amortization expense of other identifiable intangible assets is included in selling, general and administrative expenses. At November 25, 2023, the estimated future amortization expense for definite-lived intangible assets was:
(In thousands)Remainder of 20242025202620272028
Estimated amortization expense$1,058 $4,240 $4,223 $4,391 $3,936 

6.Debt

As of November 25, 2023, we had a committed revolving credit facility with Wells Fargo Bank, N.A. as administrative agent, and other lenders (U.S. credit facility) with maximum borrowings of up to $385 million and a maturity date of August 5, 2027. Outstanding borrowings under the revolving credit facility were $85.0 million and $156.0 million as of November 25, 2023 and February 25, 2023, respectively.

We also maintain two Canadian committed, revolving credit facilities with the Bank of Montreal totaling $25.0 million USD (Canadian facilities). The Canadian facilities expire annually in February, but can be renewed each year solely at our discretion until August 2027. Therefore, we have classified all outstanding amounts under these facilities as long-term debt within our consolidated balance sheets. At November 25, 2023 and February 25, 2023, outstanding borrowings under these Canadian facilities were $3.7 million and $1.8 million, respectively.

14

Our revolving credit facilities contain two maintenance financial covenants that require us to stay below a maximum debt-to-EBITDA ratio of 3.25 and maintain a minimum ratio of EBITDA-to-interest expense of 3.00. Both ratios are computed quarterly, with EBITDA calculated on a rolling four-quarter basis. At November 25, 2023, we were in compliance with both financial covenants.

The revolving credit facilities also contain 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 debt-to-EBITDA ratio to 3.75 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 facility, and at least two fiscal quarters must separate qualifying acquisitions.

Borrowings under the credit facilities bear floating interest at either the Base Rate or Term SOFR, plus a margin based on the Leverage Ratio (as defined in the Credit Agreements). For Base Rate borrowings, the margin ranges from 0.125% to 0.75%. For Term SOFR borrowings, the margin ranges from 1.125% to 1.75% and an incremental Term SOFR adjustment of 0.10%.

The U.S. credit facility also contains an "accordion" provision. Under this provision, we can request that the facility be increased by as much as $200.0 million. Any Lender may elect or decline to participate in the requested increase at the Lender’s sole discretion.

At November 25, 2023, we had a total of $15.0 million of ongoing letters of credit related to industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal year 2025 and reduce borrowing capacity under the revolving credit facility. As of November 25, 2023, the amount available for revolving borrowings was $285.0 million and $21.3 million under the U.S. credit facility and Canadian facilities, respectively.

At November 25, 2023, debt included $12.0 million of industrial revenue bonds that mature in fiscal years 2036 through 2043.

The fair value of our U.S. credit facility, Canadian credit facilities and industrial revenue bonds approximated carrying value at November 25, 2023, 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..

Interest payments under the U.S. and Canadian credit facilities were $7.5 million and $5.3 million for the nine months ended November 25, 2023 and November 26, 2022, respectively.

7.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 November 25, 2023, $1.3 billion of these types of bonds were outstanding, of which $398.4 million is in our backlog. These bonds do not have stated expiration dates. 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 the following: changes in manufacturing quality, changes in product mix, and any significant changes in sales volume.
 Nine Months Ended
(In thousands)November 25, 2023November 26, 2022
Balance at beginning of period$17,893 $13,923 
Additional accruals12,743 11,201 
Claims paid(7,644)(7,755)
Balance at end of period$22,992 $17,369 

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 businesses. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages.

15

Letters of credit
At November 25, 2023, we had $15.0 million of ongoing letters of credit, all of which have been issued under our committed revolving credit facility, as discussed in Note 6.

Purchase obligations
Purchase obligations for raw material commitments and capital expenditures totaled $45.0 million as of November 25, 2023.

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. Variable-interest entities, which have been included within our consolidated financial statements, have been created as a result of the structure of these transactions, as investors in the programs do not have a material interest in their underlying economics.

During the second quarter of fiscal 2024, one NMTC transaction was settled as expected and as a result, a $4.7 million benefit was recorded in other (income) expense, net.

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.

8.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 Global Select 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. Refer to our Form 10-K for further information on our share-based compensation plans.

16

The table below sets forth the number of stock-based compensation awards granted during the nine-months ended November 25, 2023, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Exercise Price
Restricted stock awards and restricted stock units(1)
195,013 $43.16 
Performance share units ("PSUs")(2)
48,483 $43.59 
(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 achieving a defined performance goal of return on invested capital and being employed at the end of the performance period.

Total share-based compensation expense included in the results of operations was $6.6 million for the nine-month period ended November 25, 2023, and $6.0 million for the nine-month period ended November 26, 2022.

At November 25, 2023, there was $11.6 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 21 months. The total fair value of shares vested during the nine months ended November 25, 2023 was $5.8 million.

9.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 no longer subject to U.S. federal tax examinations for years prior to fiscal 2020, 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 year 2019, and there is very limited examination activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.

The total liability for unrecognized tax benefits was $5.3 million at November 25, 2023 and February 25, 2023, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense.

10.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 EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Basic earnings per share – weighted average common shares outstanding
21,819 21,870 21,889 22,043 
Weighted average effect of nonvested share grants and assumed exercise of stock options
194 408 204 413 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
22,013 22,278 22,093 22,456 
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)
37 109 56 109 

11.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 commercial 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 custom framing, museum, and technical glass markets.

17

Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Segment net sales
Architectural Framing Systems$139,585 $165,013 $462,548 $501,172 
Architectural Glass90,964 81,541 282,262 235,158 
Architectural Services94,662 102,031 272,144 312,151 
Large-Scale Optical26,009 26,660 72,110 76,988 
Intersegment eliminations(11,506)(7,398)(33,962)(28,878)
Net sales$339,714 $367,847 $1,055,102 $1,096,591 
Segment operating income (loss)
Architectural Framing Systems$16,981 $22,089 $57,986 $66,266 
Architectural Glass15,164 7,461 49,119 19,087 
Architectural Services5,288 6,032 8,211 14,449 
Large-Scale Optical7,100 7,109 17,288 19,598 
Corporate and other*(6,886)(7,930)(20,637)(19,351)
Operating income$37,647 $34,761 $111,967 $100,049 
*Corporate and other includes certain corporate expenses that are not allocated at a segment level.

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.

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 “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. The words “believe,” “expect,” “anticipate,” “intend,” “estimate,” “forecast,” “project,” “should,” "will," "continue" and similar expressions are intended to identify “forward-looking statements” within the meaning of the Private Securities Litigation Reform Act of 1995. All forecasts and projections in this document are “forward-looking statements,” and are based on management’s current expectations or beliefs. 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. Information about factors that could materially affect our results can be found in the “Risk Factors” section of our Annual Report on Form 10-K for the year ended February 25, 2023 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 GAAP. We believe that these measures provide useful information to investors, and include these measures in other communications to investors. For each of these non-GAAP financial measures, we are providing a reconciliation of the differences between the non-GAAP measure and the most directly comparable GAAP measure, an explanation of why we believe the non-GAAP measure provides useful information to investors, and any additional material purposes for which our management or Board of Directors uses the non-GAAP measure. These non-GAAP measures should be viewed in addition to, and not in lieu of, the comparable GAAP measure. Adjusted net earnings and adjusted earnings per diluted share (adjusted diluted EPS) 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
18

measures to evaluate the Company’s historical and prospective financial performance, measure operational profitability on a consistent basis, as a factor in determining executive compensation, and to provide enhanced transparency to the investment community.

Overview
We are a leader in the design and development of value-added glass and metal products and services. Our four reporting segments are: Architectural Framing Systems, Architectural Glass, Architectural Services and Large-Scale Optical (LSO).

The three key elements of our enterprise strategy are discussed below:
1.Become the economic leader in our target markets. We will attempt to achieve this by 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 will also strive to build a relentless focus 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 intend to shift our business mix toward higher operating margin offerings and improve our return on invested capital performance. We plan 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.
3.Strengthen our core capabilities. We are working to shift 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. We are establishing a Company-wide operating system with common tools and processes that are based on the foundation of Lean and Continuous Improvement, which we are calling "Apogee Management System" or "AMS". We plan to support this through a robust talent management program and a commitment to strong governance to ensure compliance and drive sustainable performance.

We have made significant progress toward executing our enterprise strategy and underlying financial targets. We advanced our AMS initiatives, which have resulted in meaningful productivity improvements, particularly in Architectural Glass. We increased our focus on differentiated products and services, and effectively managed pricing to share in the value we delivered for our customers. We have focused on sustainable cost improvements and improvements to quality, service and delivery, while shifting mix toward more differentiated offerings. We integrated the Sotawall business into the Architectural Services segment, in order to create a single, unified offering for larger custom curtainwall projects. We advanced several initiatives to strengthen our core capabilities, driving the standardization of key business processes and systems. We also relaunched our talent development and leadership training programs and added key talent across the organization.

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























19

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)
November 25, 2023November 26, 2022
$ Change
% Change
November 25, 2023November 26, 2022
Net sales$339,714 $367,847 $(28,133)(7.6)%100.0 %100.0 %
Cost of sales249,409 281,239 (31,830)(11.3)73.4 76.5 
Gross profit90,305 86,608 3,697 4.3 26.6 23.5 
Selling, general and administrative expenses52,658 51,847 811 1.6 15.5 14.1 
Operating income37,647 34,761 2,886 8.3 11.1 9.4 
Interest expense, net1,454 2,590 (1,136)(43.9)0.4 0.7 
Other expense, net
890 552 338 61.2 0.3 0.2 
Earnings before income taxes35,303 31,619 3,684 11.7 10.4 8.6 
Income tax expense8,329 7,854 475 6.0 2.5 2.1 
Net earnings$26,974 $23,765 $3,209 13.5 %7.9 %6.5 %
Effective tax rate23.6 %24.8 %

Nine Months Ended
% of Net Sales
(in thousands, except percentages)
November 25, 2023November 26, 2022
$ Change
% Change
November 25, 2023November 26, 2022
Net sales$1,055,102 $1,096,591 $(41,489)(3.8)%100.0 %100.0 %
Cost of sales776,440 839,430 (62,990)(7.5)73.6 76.5 
Gross profit278,662 257,161 21,501 8.4 26.4 23.5 
Selling, general and administrative expenses166,695 157,112 9,583 6.1 15.8 14.3 
Operating income111,967 100,049 11,918 11.9 10.6 9.1 
Interest expense, net5,720 5,494 226 4.1 0.5 0.5 
Other (income) expense, net
(3,722)2,035 (5,757)N/M(0.4)0.2 
Earnings before income taxes109,969 92,520 17,449 18.9 10.4 8.4 
Income tax expense
26,092 8,635 17,457 202.2 2.5 0.8 
Net earnings$83,877 $83,885 $(8)— %7.9 %7.6 %
Effective tax rate23.7 %9.3 %

Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Consolidated net sales decreased 7.6%, or $28.1 million, to $339.7 million, primarily reflecting lower volumes, partially offset by improved mix and pricing.

Gross profit increased 4.3%, or $3.7 million, and gross margin increased to 26.6%, compared to 23.5%. The improvement in gross margin was primarily driven by higher pricing, improved product mix, lower short-term incentive compensation expense, and lower insurance-related expense, partially offset by the impact of lower volume and a less favorable mix of projects in Architectural Services.

Selling, general and administrative expenses increased $0.8 million to 15.5% of net sales, compared to 14.1%, primarily due to higher salaries and benefits costs, partially offset by lower short-term incentive compensation expense.

Operating income grew 8.3% to $37.6 million, and operating margin increased 170 basis points to 11.1%, primarily driven by improved segment operating margin in Architectural Glass as well as the Architectural Glass segment comprising a higher mix of the consolidated results, partially offset by lower segment operating margin in Architectural Framing Systems.

20

Interest expense, net was $1.5 million, compared to $2.6 million, reflecting a lower average debt level, partially offset by higher average interest rates.

Income tax expense was $8.3 million, compared to $7.9 million.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Consolidated net sales decreased 3.8%, or $41.5 million, to $1.1 billion, primarily reflecting lower volumes in Architectural Framing Systems, Architectural Services and Large-Scale Optical, partially offset by improved mix in the Architectural Glass and Architectural Framing Systems segments, as well as improved pricing in the Architectural Glass segment.

Gross profit increased 8.4%, or $21.5 million, to 26.4% of net sales, compared to 23.5%. The gross margin improvement was primarily driven by higher margins in Architectural Glass, due to increased pricing and mix, as well as lower short-term incentive compensation expense, primarily in Architectural Framing and Architectural Services, and lower insurance-related expense. This was partially offset by the impact of lower volume and a less favorable mix of projects in Architectural Services.

Selling, general and administrative expenses increased $9.6 million to 15.8% of net sales, compared to 14.3%. The increase in expenses was primarily due to increased salaries and benefits and consulting costs, partially offset by lower short-term incentive compensation expense.

Operating income grew 11.9% to $112.0 million, and operating margin increased 150 basis points to 10.6%, primarily driven by improved operating margin in Architectural Glass as well as the Architectural Glass segment comprising a higher mix of the consolidated results.

Interest expense, net was $5.7 million, compared to $5.5 million, reflecting a higher average interest rate, partially offset by a lower average debt level.

Other (income) expense, net included a $4.7 million pre-tax gain related to finalization of a New Markets Tax Credit transaction realized during the second quarter of fiscal 2024.

Income tax expense was $26.1 million, compared to $8.6 million. The prior year period included a $13.7 million tax deduction for a worthless stock loss and related discrete tax benefits.

21

Segment Analysis
The following table presents net sales, operating income (loss) and operating margin by segment and consolidated total.
Three Months EndedNine Months Ended
(In thousands, except percentages)November 25, 2023November 26, 2022% ChangeNovember 25, 2023November 26, 2022% Change
Segment net sales
Architectural Framing Systems$139,585 $165,013 (15.4)%$462,548 $501,172 (7.7)%
Architectural Glass90,964 81,541 11.6 282,262 235,158 20.0 
Architectural Services94,662 102,031 (7.2)272,144 312,151 (12.8)
Large-Scale Optical26,009 26,660 (2.4)72,110 76,988 (6.3)
Intersegment eliminations(11,506)(7,398)55.5 (33,962)(28,878)17.6 
Net sales$339,714 $367,847 (7.6)%$1,055,102 $1,096,591 (3.8)%
Segment operating income (loss)
Architectural Framing Systems$16,981 $22,089 (23.1)%$57,986 $66,266 (12.5)%
Architectural Glass15,164 7,461 103.2 49,119 19,087 157.3 
Architectural Services5,288 6,032 (12.3)8,211 14,449 (43.2)
Large-Scale Optical7,100 7,109 (0.1)17,288 19,598 (11.8)
Corporate and other*(6,886)(7,930)(13.2)(20,637)(19,351)6.6 
Operating income$37,647 $34,761 8.3 %$111,967 $100,049 11.9 %
Segment operating margin
Architectural Framing Systems12.2 %13.4 %12.5 %13.2 %
Architectural Glass16.7 9.1 17.4 8.1 
Architectural Services5.6 5.9 3.0 4.6 
Large-Scale Optical27.3 26.7 24.0 25.5 
Corporate and otherN/MN/MN/MN/M
Operating income11.1 %9.4 %10.6 %9.1 %
N/M Indicates calculation not meaningful.

Architectural Framing Systems
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Net sales were $139.6 million, compared to $165.0 million, primarily reflecting lower volume due to slowing demand in our short-cycle business, partially offset by a more favorable sales mix.

Operating income was $17.0 million, or 12.2% of net sales, compared to $22.1 million, or 13.4% of net sales, primarily reflecting the impact of lower volume. This result was partially offset by improved sales mix, improved productivity, and lower short-term incentive compensation-related expenses.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Net sales were $462.5 million, compared to $501.2 million, primarily reflecting lower volume, partially offset by more favorable sales mix and improved pricing.

Operating income was $58.0 million, or 12.5% of net sales, compared to $66.3 million, or 13.2% of net sales, primarily driven by the impact of lower volume. This result was partially offset by improved sales mix and lower short-term incentive compensation-related expenses.

Architectural Glass
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Net sales increased $9.4 million, or 11.6%, primarily driven by improved mix and pricing, reflecting the strategic shift to emphasize premium, high performance products, partially offset by lower volume.

22

Operating income increased to $15.2 million, or 16.7% of net sales, compared to $7.5 million, or 9.1% of net sales. The higher operating margin improvement was primarily driven by the impact of improved mix and pricing, partially offset by the impact of lower volume and cost inflation.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Net sales increased $47.1 million, or 20.0%, driven by improved pricing, a more favorable sales mix, and higher volume, reflecting the segment's strategic shift to emphasize premium, high-performance products.

Operating income increased to $49.1 million, or 17.4% of net sales, compared to $19.1 million, or 8.1% of net sales. The operating margin improvement was primarily driven by improved pricing and mix, partially offset by cost inflation.

Architectural Services
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Net sales were $94.7 million, compared to $102.0 million, primarily reflecting a less favorable mix of projects in the quarter.

Operating income was $5.3 million, or 5.6% of net sales, compared to $6.0 million, or 5.9% of net sales. The change in operating margin was primarily driven by a less favorable mix of projects, partially offset by lower short-term incentive compensation expense.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Net sales were $272.1 million, compared to $312.2 million, primarily reflecting lower project volume due to a higher mix of projects in earlier stages of completion and a less favorable mix of projects.

Operating income was $8.2 million, or 3.0% of net sales, compared to $14.4 million, or 4.6% of net sales. The decline in operating margin was primarily driven by lower project volume due to a higher mix of projects in earlier stages of completion and a less favorable mix of project, partially offset by lower short-term incentive compensation expense .

Large-Scale Optical (LSO)
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
LSO net sales were $26.0 million, compared to $26.7 million, primarily reflecting lower volume from slower retail demand, partially offset by a more favorable mix and pricing.

Operating income was $7.1 million, with operating margin improving to 27.3% of net sales, compared to 26.7% due to favorable mix and pricing.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
LSO net sales were $72.1 million, compared to $77.0 million, primarily reflecting lower volume due to customer destocking and slower demand in the retail markets, partially offset by a more favorable mix and pricing.

Operating income was $17.3 million, or 24.0% of net sales, compared to $19.6 million, or 25.5% of net sales, primarily driven by the impact of lower volume, partially offset by more favorable mix and pricing.

Corporate and other
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Corporate and other expense was $6.9 million, compared to $7.9 million, primarily reflecting lower insurance-related costs.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Corporate and other expense was $20.6 million, compared to $19.4 million primarily due to an increase in compensation expense and higher consulting costs, partially offset by lower insurance-related 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 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
23

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 Framing Systems
As of November 25, 2023, segment backlog was approximately $183.9 million, compared to approximately $197.5 million at the end of the prior quarter, and to approximately $246.2 million at the end of the third quarter of fiscal 2023. The reduction in backlog compared to both periods was primarily driven by a decline in our longer-cycle business, reflecting delays in award activity, and a continued strategic shift in this business toward projects that allow for more attractive margins.

Architectural Services
As of November 25, 2023, segment backlog was approximately $776.5 million, compared to approximately $674.4 million at the end of the prior quarter, and to approximately $740.9 million at the end of the third quarter of fiscal 2023. The increase in backlog compared to the prior quarter was primarily driven by several large project awards in the current quarter.

Net earnings, diluted EPS, adjusted net earnings (non-GAAP), and adjusted diluted EPS (non-GAAP)

In order to provide a better understanding of the impact of certain items on our net earnings and diluted EPS, the tables that follow report the comparative impact of certain items on net earnings and diluted EPS for the periods presented below. Adjusted net earnings and adjusted diluted EPS are considered non-GAAP financial measures as contemplated by SEC Regulation G. For additional information regarding management’s decision to present this non-GAAP financial information, see the introduction to this Item 2., “Management’s Discussion and Analysis of Financial Condition and Results of Operations.”
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022% changeNovember 25, 2023November 26, 2022% change
Net earnings$26,974 $23,765 13.5 %$83,877 $83,885 — %
NMTC settlement gain(1)
— — (4,687)— 
Worthless stock deduction and related discrete tax benefits(2)
— — — (13,702)
Income tax impact on above adjustments— — 1,148 — 
Adjusted net earnings$26,974 $23,765 13.5 %$80,338 $70,183 14.5 %
Three Months EndedNine Months Ended
November 25, 2023November 26, 2022% changeNovember 25, 2023November 26, 2022% change
Diluted EPS
$1.23 $1.07 15.0 %$3.80 $3.74 1.6 %
NMTC settlement gain(1)
— (0.21)— 
Worthless stock deduction and related discrete tax benefits(2)
— — — (0.61)
Income tax impact on above adjustments— — 0.05 — 
Adjusted diluted EPS
$1.23 $1.07 15.0 %$3.64 $3.13 16.3 %
Weighted average diluted shares outstanding22,013 22,278 22,093 22,456 
(1)Realization of a New Market Tax Credit (NMTC) benefit during the second quarter of fiscal 2024, which was recorded in other (income) expense, net.
(2)
Worthless stock deduction and related discrete income tax benefits from the impairment of the Sotawall business in fiscal 2023, which were recorded in income tax expense (benefit).
Comparison of Third Quarter Fiscal 2024 to Third Quarter Fiscal 2023
Net earnings were $27.0 million, compared to $23.8 million, driven by higher operating income, lower interest expense and a lower effective tax rate.
Diluted EPS was $1.23, compared to $1.07, due to higher net earnings and lower weighted average diluted shares outstanding.
Adjusted net earnings increased 13.5% to $27.0 million, compared to $23.8 million. Adjusted diluted EPS increased 15.0% to $1.23, compared to $1.07.

Comparison of First Nine Months of Fiscal 2024 to First Nine Months of Fiscal 2023
Net earnings were essentially flat at $83.9 million for both periods driven by higher earnings before taxes, offset by a higher effective tax rate.
Diluted EPS was $3.80, compared to $3.74, due to lower weighted average diluted shares outstanding.
24

Adjusted net earnings increased 14.5% to $80.3 million, compared to $70.2 million. Adjusted diluted EPS increased 16.3% to $3.64, compared to $3.13.

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 $129.3 million for the first nine months of fiscal 2024, compared to $51.1 million of net cash used by operating activities in the prior year period, primarily driven by favorable working capital changes compared to the prior year.

Investing Activities. Net cash used by investing activities was $26.3 million for the first nine months of fiscal 2024, compared to $12.0 million in the prior year, driven primarily by increased capital expenditures primarily to fund strategic investments.

Financing Activities. Net cash used by financing activities was $100.4 million for the first nine months of fiscal 2024, compared to net cash used by financing activities of $51.6 million in the prior year period. The increase in cash used for financing activities was primarily driven by higher net debt payments in the current year period.

We paid dividends totaling $15.7 million ($0.72 per share) in the first nine months of fiscal 2024, compared to $14.4 million ($0.66 per share) in the comparable prior year period. During the first nine months of fiscal 2024, we repurchased 279,916 shares under our authorized share repurchase program, for a total cost of $11.8 million. In the first nine months of fiscal 2023, we repurchased 1,571,139 shares under the share repurchase program, for a total cost of $74.3 million. The repurchase program does not have an expiration date. Since the inception of the share repurchase program in 2004, we have purchased a total of 11,276,517 shares, at a total cost of $393.5 million. As of November 25, 2023, we had remaining authority to repurchase 2,973,483 shares under this program. 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.

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.

As of the end of the third quarter of fiscal 2024, we had a committed revolving credit facility in the U.S. with maximum borrowings of up to $385 million, with a maturity date of August 5, 2027, and two Canadian committed, revolving credit facilities totaling $25 million (USD). At November 25, 2023, we had outstanding borrowings under our committed, revolving credit facility of $85.0 million, and $3.7 million outstanding under the Canadian committed, revolving credit facilities. We are required to make periodic interest payments on our outstanding indebtedness, and future interest payments will be determined based on the amount of outstanding borrowings and prevailing interest rates during that time.

Our revolving credit facilities contain two maintenance financial covenants that require us to stay below a maximum debt-to-EBITDA ratio of 3.25 and maintain a minimum ratio of EBITDA-to-interest expense of 3.00. Both ratios are computed quarterly, with EBITDA calculated on a rolling four-quarter basis. At November 25, 2023, we were in compliance with both financial covenants (which are identical in all three of our revolving credit facilities).

The revolving credit facilities also contain 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 debt-to-EBITDA ratio to 3.75 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 facility, and at least two fiscal quarters must separate qualifying acquisitions.

Borrowings under the credit facilities bear floating interest at either the Base Rate or Term SOFR, plus a margin based on the Leverage Ratio (as defined in the Credit Agreements). For Base Rate borrowings, the margin ranges from 0.125% to 0.75%. For Term SOFR borrowings, the margin ranges from 1.125% to 1.75% and an incremental Term SOFR adjustment of 0.10%.

The U.S. facility also contains an "accordion" provision. Under this provision, we can request that the facility be increased by as much $200.0 million. Any Lender may elect or decline to participate in the requested increase at the Lender’s sole discretion.

25

Additionally, at November 25, 2023, we had a total of $15.0 million of ongoing letters of credit related to industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal year 2025 and reduce borrowing capacity under the U.S. revolving credit facility. As of November 25, 2023, the amount available for revolving borrowings under the U.S credit facility was $285.0 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 $42.7 million at November 25, 2023, with $3.5 million payable during the remainder of fiscal 2024.

As of November 25, 2023, we had $45.0 million of open purchase obligations, of which payments totaling $12.2 million are expected to become due during the remainder of fiscal 2024. 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.7 million to our defined-benefit pension plans in fiscal 2024, which will equal or exceed our minimum funding requirements.

As of November 25, 2023, we had reserves of $5.3 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 November 25, 2023, $1.3 billion of these types of bonds were outstanding, of which $398.4 million is in our backlog. These bonds do not have stated expiration dates. We have never been required to make payments under surety or performance bonds with respect to our existing businesses.

We continue to evaluate acquisition opportunities on a regular basis. We may finance acquisition activity with available cash, the issuance of shares of common stock, additional debt, or other sources of financing, depending upon the size and nature of any such transaction and the status of the capital markets at the time of such acquisition.

Due to our ability to generate strong cash from operations and our borrowing capability under our committed revolving credit facilities, 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 that we have the ability currently to obtain both short-term and long-term debt to meet our financing needs for the foreseeable future. We also believe that 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.

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 February 25, 2023.

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 February 25, 2023.

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 February 25, 2023 for a discussion of the Company’s market risk. There have been no material changes in market risk since February 25, 2023.

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 November 25, 2023, 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 February 25, 2023.

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 third quarter of fiscal 2024:
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)
August 27, 2023 to September 23, 2023
122 $48.40 — 973,483 
September 24, 2023 to October 21, 2023
1,500 47.08 — 2,973,483 
October 22, 2023 to November 25, 2023
— — — 2,973,483 
Total1,622 $47.74 — 2,973,483 
(a)The shares in this column represent the total number of shares that were 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 announce 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.

Item 5.    Other Information

Insider Adoption or Termination of Trading Arrangements
During the three months ending November 25, 2023, 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.



26

Item 6. Exhibits
101#
The following materials from Apogee Enterprises, Inc.’s Quarterly Report on Form 10-Q for the quarter ended November 25, 2023, formatted in iXBRL (Inline Extensible Business Reporting Language): (i) the Consolidated Balance Sheets as of November 25, 2023 and February 25, 2023, (ii) the Consolidated Results of Operations for the three- and nine-months ended November 25, 2023 and November 26, 2022, (iii) the Consolidated Statements of Comprehensive Earnings for the three- and nine-months ended November 25, 2023 and November 26, 2022, (iv) the Consolidated Statements of Cash Flows for the nine-months ended November 25, 2023 and November 26, 2022, (v) the Consolidated Statements of Shareholders' Equity for the three- and nine-months ended November 25, 2023 and November 26, 2022, 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.
27

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: January 3, 2024 By: /s/ Ty R. Silberhorn
 Ty R. Silberhorn
President and Chief Executive Officer
(Principal Executive Officer)

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


28
EX-31.1 2 apog-ex311_20231125.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: January 3, 2024
/s/ Ty R. Silberhorn
Ty R. Silberhorn
President and Chief Executive Officer



EX-31.2 3 apog-ex312_20231125.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: January 3, 2024
 
/s/ Matthew J. Osberg
Matthew J. Osberg
Executive Vice President and Chief Financial Officer

EX-32.1 4 apog-ex321_20231125.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 November 25, 2023 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
January 3, 2024


EX-32.2 5 apog-ex322_20231125.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 November 25, 2023 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
January 3, 2024

EX-101.SCH 6 apog-20231125.xsd XBRL TAXONOMY EXTENSION SCHEMA DOCUMENT 0000001 - Document - Cover Page link:presentationLink link:calculationLink link:definitionLink 0000002 - Statement - Consolidated Balance Sheets (unaudited) link:presentationLink link:calculationLink link:definitionLink 0000003 - Statement - Consolidated Results of Operations (unaudited) link:presentationLink link:calculationLink link:definitionLink 0000004 - Statement - Consolidated Statements of Comprehensive Earnings (unaudited) link:presentationLink link:calculationLink link:definitionLink 0000005 - Statement - Consolidated Statements of Cash Flows (unaudited) link:presentationLink link:calculationLink link:definitionLink 0000006 - Statement - Consolidated Statement of Shareholders Equity (unaudited) link:presentationLink link:calculationLink link:definitionLink 0000007 - Statement - Income Taxes link:presentationLink link:calculationLink link:definitionLink 0000008 - Statement - Income Taxes (Textual) link:presentationLink link:calculationLink link:definitionLink 0000009 - Disclosure - Summary of Significant Accounting Policies link:presentationLink link:calculationLink link:definitionLink 0000010 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities link:presentationLink link:calculationLink link:definitionLink 0000011 - Disclosure - Supplemental Balance Sheet Information link:presentationLink link:calculationLink link:definitionLink 0000012 - Disclosure - Financial Instruments link:presentationLink link:calculationLink link:definitionLink 0000013 - Disclosure - Goodwill and Other Identifiable Intangible Assets link:presentationLink link:calculationLink link:definitionLink 0000014 - Disclosure - Debt link:presentationLink link:calculationLink link:definitionLink 0000015 - Disclosure - Commitments and Contingent Liabilities link:presentationLink link:calculationLink link:definitionLink 0000016 - Disclosure - Share-Based Compensation link:presentationLink link:calculationLink link:definitionLink 0000017 - Disclosure - Earnings per Share link:presentationLink link:calculationLink link:definitionLink 0000018 - Disclosure - Segment Information link:presentationLink link:calculationLink link:definitionLink 9954471 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954472 - Disclosure - Supplemental Balance Sheet Information (Tables) link:presentationLink link:calculationLink link:definitionLink 9954473 - Disclosure - Financial Instruments (Tables) link:presentationLink link:calculationLink link:definitionLink 9954474 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Tables) link:presentationLink link:calculationLink link:definitionLink 9954475 - Disclosure - Commitments and Contingent Liabilities (Tables) link:presentationLink link:calculationLink link:definitionLink 9954476 - Disclosure - Share-Based Compensation (Tables) link:presentationLink link:calculationLink link:definitionLink 9954477 - Disclosure - Earnings per Share (Tables) link:presentationLink link:calculationLink link:definitionLink 9954478 - Disclosure - Segment Information (Tables) link:presentationLink link:calculationLink link:definitionLink 9954479 - Disclosure - Summary of Significant Accounting Policies (Details) link:presentationLink link:calculationLink link:definitionLink 9954480 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Revenue (Details) link:presentationLink link:calculationLink link:definitionLink 9954481 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Accounts Receivable (Details) link:presentationLink link:calculationLink link:definitionLink 9954482 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities Allowance for Credit Losses (Details) link:presentationLink link:calculationLink link:definitionLink 9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 4) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 5) link:presentationLink link:calculationLink link:definitionLink 9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 5) link:presentationLink link:calculationLink link:definitionLink 9954485 - Disclosure - Supplemental Balance Sheet Information - Components of inventories (Details) link:presentationLink link:calculationLink link:definitionLink 9954486 - Disclosure - Financial Instruments (Details) link:presentationLink link:calculationLink link:definitionLink 9954487 - Disclosure - Financial Instruments (Details 2) link:presentationLink link:calculationLink link:definitionLink 9954488 - Disclosure - Financial Instruments (Details 3) link:presentationLink link:calculationLink link:definitionLink 9954489 - Disclosure - Financial Instruments (Details Textual) link:presentationLink link:calculationLink link:definitionLink 9954490 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details) link:presentationLink link:calculationLink link:definitionLink 9954491 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 1) link:presentationLink link:calculationLink link:definitionLink 9954492 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 2) link:presentationLink link:calculationLink link:definitionLink 9954493 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details Textual) link:presentationLink link:calculationLink link:definitionLink 9954494 - Disclosure - Debt (Details) link:presentationLink link:calculationLink link:definitionLink 9954495 - Disclosure - Commitments and Contingent Liabilities (Details 1) link:presentationLink link:calculationLink link:definitionLink 9954496 - Disclosure - Commitments and Contingent Liabilities (Details 2) link:presentationLink link:calculationLink link:definitionLink 9954497 - Disclosure - Commitments and Contingent Liabilities (Details Textual) link:presentationLink link:calculationLink link:definitionLink 9954498 - Disclosure - Share-Based Compensation (Details) link:presentationLink link:calculationLink link:definitionLink 9954499 - Disclosure - Share-Based Compensation (Details Textual) link:presentationLink link:calculationLink link:definitionLink 9954500 - Disclosure - Earnings per Share Earnings per Share (Details) link:presentationLink link:calculationLink link:definitionLink 9954501 - Disclosure - Segment Information Segment Information (Details Textual) link:presentationLink link:calculationLink link:definitionLink 9954502 - Disclosure - Segment Information (Details) link:presentationLink link:calculationLink link:definitionLink EX-101.CAL 7 apog-20231125_cal.xml XBRL TAXONOMY EXTENSION CALCULATION LINKBASE DOCUMENT EX-101.DEF 8 apog-20231125_def.xml XBRL TAXONOMY EXTENSION DEFINITION LINKBASE DOCUMENT EX-101.LAB 9 apog-20231125_lab.xml XBRL TAXONOMY EXTENSION LABEL LINKBASE DOCUMENT Stock Appreciation Rights (SARs) Stock Appreciation Rights (SARs) [Member] Deductions from allowance, net of recoveries Accounts Receivable, Allowance for Credit Loss, Recovery Pay vs Performance Disclosure [Line Items] Maximum borrowing capacity Line of Credit Facility, Maximum Borrowing Capacity Changes in operating assets and liabilities: Increase (Decrease) in Operating Capital [Abstract] Underlying Security Market Price Change Underlying Security Market Price Change, Percent Award Type [Domain] Award Type [Domain] Fair Value as of Grant Date Award Grant Date Fair Value Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period Repayment on debt Repayments of Short-Term Debt Debt Debt Disclosure [Text Block] Statement of Stockholders' Equity [Abstract] Statement of Stockholders' Equity [Abstract] Revolving credit facility Revolving Credit Facility [Member] Amortized cost, gross unrealized gains and losses, and estimated fair values of investments available for sale Schedule of Available-for-Sale Securities Reconciliation [Table Text Block] Companies Backlog Related to Sales Companies Backlog Related to Sales Companies backlog related to sales. Effect of exchange rates on cash Effect of Exchange Rate on Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Continuing Operations MNPI Disclosure Timed for Compensation Value MNPI Disclosure Timed for Compensation Value [Flag] Performance Shares Performance Shares [Member] Segment Reporting [Abstract] Segment Reporting [Abstract] Accounts payable Accounts Payable, Current Restatement Determination Date: Restatement Determination Date [Axis] Other expense (income), net Nonoperating Income (Expense) Insider Trading Policies and Procedures [Line Items] Rule 10b5-1 Arrangement Terminated Rule 10b5-1 Arrangement Terminated [Flag] Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments Disaggregation of Revenue [Line Items] Disaggregation of Revenue [Line Items] Restatement does not require Recovery Restatement Does Not Require Recovery [Text Block] Schedule Of Goodwill [Table] Schedule of Goodwill [Table] Line of Credit Facility [Line Items] Line of Credit Facility [Line Items] Geographical [Axis] Geographical [Axis] Income Taxes Income Tax Disclosure [Text Block] Contract liabilities Increase (Decrease) in Contract with Customer, Liability Current liabilities Liabilities, Current [Abstract] Intersegment eliminations Intersegment Eliminations [Member] Fair Value, Recurring and Nonrecurring [Table] Fair Value, Recurring and Nonrecurring [Table] Dividends paid Payments of Ordinary Dividends, Common Stock Diluted earnings per share Earnings Per Share, Diluted PEO Total Compensation Amount PEO Total Compensation Amount Schedule of goodwill attributable to each business segment Goodwill [Roll Forward] Receivable [Domain] Receivable [Domain] Trading Arrangements, by Individual Trading Arrangements, by Individual [Table] Exercise of stock options Stock Issued During Period, Value, Stock Options Exercised Trading Symbol Trading Symbol Non-PEO NEO Average Compensation Actually Paid Amount Non-PEO NEO Average Compensation Actually Paid Amount Municipal and corporate bonds Investments, Fair Value Disclosure Net earnings Net earnings Net earnings Net Income (Loss) Net benefit New Markets Tax Credit Transaction, Benefit, Net New Markets Tax Credit Transaction, Benefit, Net Total current liabilities Liabilities, Current Derivative Contract [Domain] Derivative Contract [Domain] Changed Peer Group, Footnote Changed Peer Group, Footnote [Text Block] Company Selected Measure Name Company Selected Measure Name Indefinite-Lived Intangible Assets, Major Class Name [Domain] Indefinite-Lived Intangible Assets, Major Class Name [Domain] 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 Intangible Assets, Gross (Excluding Goodwill) Intangible Assets, Gross (Excluding Goodwill) Liabilities and Shareholders' Equity Liabilities and Equity [Abstract] Finite Lived Intangible Assets [Line Items] Finite-Lived Intangible Assets [Line Items] Shareholders' equity Equity, Attributable to Parent [Abstract] Exercise of stock options (shares) Share-Based Compensation Arrangement by Share-Based Payment Award, Options, Exercises in Period Receivables Increase (Decrease) in Receivables Reconciliation of basic and diluted earnings per share Schedule of Earnings Per Share, Basic and Diluted [Table Text Block] Cost of sales Cost of Goods and Services Sold Income Tax Contingency [Table] Income Tax Contingency [Table] Executive Category: Executive Category [Axis] Quoted Prices in Active Markets (Level 1) Fair Value, Inputs, Level 1 [Member] Name Measure Name Name Forgone Recovery, Individual Name Goodwill Goodwill, Beginning Goodwill, Ending Goodwill Equity Components [Axis] Equity Components [Axis] Financial Instruments [Domain] Financial Instruments [Domain] Additional 402(v) Disclosure Additional 402(v) Disclosure [Text Block] Accrued expenses Increase (Decrease) in Accrued Liabilities Underlying Securities Award Underlying Securities Amount Entity Small Business Entity Small Business 2028 Finite-Lived Intangible Asset, Expected Amortization, Year Four Local Phone Number Local Phone Number Recovery of Erroneously Awarded Compensation Disclosure [Line Items] Letter of credit Letter of Credit [Member] Derivative, Notional Amount Derivative, Notional Amount Supplier Finance Program, Obligation Supplier Finance Program, Obligation Recognized at shipment Transferred at Point in Time [Member] Non-current operating lease liabilities Operating Lease, Liability, Noncurrent Schedule of amortized cost and estimated fair values of investments by contractual maturity Investments Classified by Contractual Maturity Date [Table Text Block] Forgone Recovery due to Violation of Home Country Law, Amount Forgone Recovery due to Violation of Home Country Law, Amount Other intangibles Trademarks [Member] Financial Instruments Marketable Securities [Table Text Block] Payments on debt issuance costs Payments of Debt Issuance Costs Goodwill and Other Identifiable Intangible Assets (Textual) [Abstract] Goodwill and Other Identifiable Intangible Assets (Textual) [Abstract] Goodwill and other identifiable intangible assets. Line of Credit Facility [Table] Line of Credit Facility [Table] Foreign Exchange Forward Foreign Exchange Forward [Member] Balance at beginning of period Balance at end of period Extended Product Warranty Accrual Other Performance Measure, Amount Other Performance Measure, Amount Aggregate Available Trading Arrangement, Securities Aggregate Available Amount Inventories Increase (Decrease) in Inventories Contract assets Contract with Customer, Asset, after Allowance for Credit Loss, Current Investing Activities Net Cash Provided by (Used in) Investing Activities [Abstract] Insider Trading Policies and Procedures Not Adopted Insider Trading Policies and Procedures Not Adopted [Text Block] 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 Award Type [Axis] Award Type [Axis] Share Grants in Period Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period Document Quarterly Report Document Quarterly Report Noncash Activity Noncash Investing and Financing Items [Abstract] Interest expense, net Interest Expense Total unrecognized compensation cost related to nonvested share Share-Based Payment Arrangement, Nonvested Award, Excluding Option, Cost Not yet Recognized, Amount Capital expenditures in accounts payable Capital Expenditures Incurred but Not yet Paid Fair Value Hierarchy and NAV [Domain] Fair Value Hierarchy and NAV [Domain] Hedging Designation [Axis] Hedging Designation [Axis] Goodwill [Line Items] Goodwill [Line Items] Remainder of 2024 Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year Trading Arrangement: Trading Arrangement [Axis] Revenue recognized related to prior satisfaction of performance obligations Contract with Customer, Performance Obligation Satisfied in Previous Period PEO Actually Paid Compensation Amount PEO Actually Paid Compensation Amount Derivatives, Fair Value [Line Items] Derivatives, Fair Value [Line Items] Timing of Transfer of Good or Service [Axis] Timing of Transfer of Good or Service [Axis] Long-term Debt, Type [Domain] Long-Term Debt, Type [Domain] Entity File Number Entity File Number Share Grants in Period 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] Operating lease liabilities Operating Lease, Liability, Current Refundable and accrued income taxes Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable Amortization expense on identifiable intangible assets Amortization of Intangible Assets Sales/maturities of marketable securities Proceeds from Sale and Maturity of Debt Securities, Available-for-Sale Entity Shell Company Entity Shell Company Net Finite-Lived Intangible Assets, Net Restatement Determination Date Restatement Determination Date Rule 10b5-1 Arrangement Adopted Rule 10b5-1 Arrangement Adopted [Flag] Cash, cash equivalents and restricted cash at beginning of year Cash and cash equivalents at end of period Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents Accumulated Amortization Finite-Lived Intangible Assets, Accumulated Amortization Total receivables Accounts Receivable, before Allowance for Credit Loss Municipal and Corporate Bonds Municipal and Corporate Bonds [Member] Municipal and Corporate Bonds [Member] Stock Price or TSR Estimation Method Stock Price or TSR Estimation Method [Text Block] Common Stock, Shares, Issued Common Stock, Shares, Issued Gross profit Gross Profit Contract liabilities Contract with Customer, Liability, Current Security Exchange Name Security Exchange Name Other share retirements Stock Redeemed or Called During Period, Value Debt Long-Term Debt Selling, general and administrative expenses Selling, General and Administrative Expense Accumulated other comprehensive loss Accumulated Other Comprehensive Income (Loss), Net of Tax Employee Stock Option Employee Stock Option [Member] Interest rate swap contract Interest Rate Derivative Liabilities, at Fair Value Weighted average period, Nonvested Share-Based Payment Arrangement, Nonvested Award, Cost Not yet Recognized, Period for Recognition Other, net Proceeds from (Payments for) Other Financing Activities Total comprehensive earnings Comprehensive Income (Loss), Net of Tax, Attributable to Parent Document Type Document Type Tabular List, Table Tabular List [Table Text Block] Interest payments Interest Paid, Including Capitalized Interest, Operating and Investing Activities Entity Address, Address Line One Entity Address, Address Line One Settlement of New Markets Tax Credit transaction Settlement of New Markets Tax Credit Transaction Settlement of New Markets Tax Credit Transaction Indefinite Lived Identifiable Intangible Assets, Foreign Currency Translation Adjustments Indefinite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss) Receivable Type [Axis] Receivable Type [Axis] Share-Based Compensation Share-Based Payment Arrangement [Text Block] Increase (decrease) in cash, cash equivalents and restricted cash Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect Other, net Other Noncash Income (Expense) Trademarks and Trade Names Trademarks and Trade Names [Member] Schedule of finite lived intangible assets Schedule of Finite-Lived Intangible Assets [Table Text Block] Other current liabilities Other Liabilities, Current Termination Date [Axis] Termination Date [Axis] Termination Date [Axis] Income Statement [Abstract] Income Statement [Abstract] Raw materials Inventory, Raw Materials, Net of Reserves Total Revenue from Contract with Customer, Including Assessed Tax Contract assets Increase (Decrease) in Contract with Customer, Asset Title of 12(b) Security Title of 12(b) Security Insider Trading Policies and Procedures Adopted Insider Trading Policies and Procedures Adopted [Flag] Foreign currency forward/option contract Derivative Liability Indefinite-lived Intangible Assets (Excluding Goodwill) Indefinite-Lived Intangible Assets (Excluding Goodwill) Aggregate Erroneous Compensation Not Yet Determined Aggregate Erroneous Compensation Not Yet Determined [Text Block] Operating Segments [Member] Operating Segments [Member] Intangible Assets Accumulated Amortization Intangible Assets Accumulated Amortization Intangible Assets Accumulated Amortization Issuance of stock, net of cancellations Shares Issued, Value, Share-Based Payment Arrangement, after Forfeiture Other current assets Other Assets, Current Forgone Recovery due to Expense of Enforcement, Amount Forgone Recovery due to Expense of Enforcement, Amount Net receivables Schedule of Accounts, Notes, Loans and Financing Receivable [Table Text Block] Tax expense (benefit) on marketable securities OCI, Debt Securities, Available-for-Sale, Unrealized Holding Gain (Loss), before Adjustment, Tax Earnings per share - diluted Earnings Per Share, Diluted [Abstract] Share-based Payment Arrangement [Abstract] Share-Based Payment Arrangement [Abstract] Entity Tax Identification Number Entity Tax Identification Number Foreign currency translation Goodwill, Foreign Currency Translation Gain (Loss) Supplemental Income Statement Elements [Abstract] Supplemental Income Statement Elements [Abstract] Inventories Total inventories Inventory, Net Purchases of marketable securities Payments to Acquire Marketable Securities Claims paid Extended Product Warranty Accrual, Decrease for Payments Financial Instrument [Axis] Financial Instrument [Axis] Entity Interactive Data Current Entity Interactive Data Current Disaggregation of Revenue [Table] Disaggregation of Revenue [Table] Debt Securities, Available-for-Sale [Table] Debt Securities, Available-for-Sale [Table] Total Shareholder Return Amount Total Shareholder Return Amount Repurchase and retirement of common stock Payments for Repurchase of Common Stock Entity Common Stock, Shares Outstanding Entity Common Stock, Shares Outstanding Adjustment To PEO Compensation, Footnote Adjustment To PEO Compensation, Footnote [Text Block] Inventory Disclosure [Abstract] Inventory Disclosure [Abstract] Segment [Domain] Segments [Domain] Share-based Compensation Arrangement by Share-based Payment Award [Line Items] Share-Based Compensation Arrangement by Share-Based Payment Award [Line Items] Fair Value Hierarchy and NAV [Axis] Fair Value Hierarchy and NAV [Axis] Consolidation Items [Domain] Consolidation Items [Domain] Retained earnings Retained Earnings (Accumulated Deficit) Measure: Measure [Axis] Commitments and Contingencies Disclosure [Abstract] Commitments and Contingencies Disclosure [Abstract] Name Outstanding Recovery, Individual Name Face value of performance bonds Debt Instrument, Face Amount Entity Incorporation, State or Country Code Entity Incorporation, State or Country Code Current assets Assets, Current [Abstract] Construction contracts Accounts Receivable, Construction Contracts [Member] Accounts Receivable, Construction Contracts [Member] Entity Address, State or Province Entity Address, State or Province Compensation Actually Paid vs. Total Shareholder Return Compensation Actually Paid vs. Total Shareholder Return [Text Block] Operating Activities Net Cash Provided by (Used in) Operating Activities [Abstract] 2025 Finite-Lived Intangible Asset, Expected Amortization, Year One Unrealized (loss) gain on marketable securities, net of $(2), $(24), $23 and $(127) of tax (benefit) expense, respectively OCI, Debt Securities, Available-for-Sale, Gain (Loss), after Adjustment and Tax Common Stock, Shares, Outstanding Common Stock, Shares, Outstanding Commodity Option [Member] Commodity Option [Member] Earnings per share - basic Earnings Per Share, Basic [Abstract] PEO PEO [Member] Beginning balance (in shares) Ending balance (in shares) Shares, Outstanding Common Stock, Par or Stated Value Per Share Common Stock, Par or Stated Value Per Share Net cash used by investing activities Net Cash Provided by (Used in) Investing Activities Components of inventories Schedule of Inventory, Current [Table Text Block] Interest Rate Swap [Member] Interest Rate Swap [Member] Share repurchases Stock Repurchased and Retired During Period, Value Outstanding Aggregate Erroneous Compensation Amount Outstanding Aggregate Erroneous Compensation Amount Tax expense (benefit) on derivatives Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification, Tax Summary of Significant Accounting Policies Organization, Consolidation and Presentation of Financial Statements Disclosure [Text Block] Total Shareholder Return Vs Peer Group Total Shareholder Return Vs Peer Group [Text Block] Accumulated Other Comprehensive Income (Loss) [Member] AOCI Attributable to Parent [Member] Aggregate Erroneous Compensation Amount Aggregate Erroneous Compensation Amount Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis] All Executive Categories All Executive Categories [Member] Payments on line of credit Repayments of Long-Term Lines of Credit Non-Rule 10b5-1 Arrangement Adopted Non-Rule 10b5-1 Arrangement Adopted [Flag] Debt Disclosure [Abstract] Debt Disclosure [Abstract] Canada CANADA Number of Reportable Segments Number of Reportable Segments Earnings Per Share [Abstract] Earnings Per Share [Abstract] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Fair Values Derivatives, Balance Sheet Location, by Derivative Contract Type [Table] Architectural Framing Systems Architectural Framing Segment [Member] Architectural Framing Segment [Member] Termination Date [Domain] Termination Date [Domain] [Domain] for Termination Date [Axis] Foreign currency translation adjustments Other Comprehensive Income (Loss), Foreign Currency Transaction and Translation Adjustment, before Tax Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 22,085,098 and 22,224,299, respectively Common Stock, Value, Issued 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 Noncash lease expense Operating Lease, Right-of-Use Asset, Periodic Reduction Awards Close in Time to MNPI Disclosures, Table Awards Close in Time to MNPI Disclosures [Table Text Block] Total current assets Assets, Current Receivables, net Accounts Receivable, after Allowance for Credit Loss Revenue from Contract with Customer [Abstract] Revenue from Contract with Customer [Abstract] All Individuals All Individuals [Member] Entity Filer Category Entity Filer Category Purchase obligations Purchase Obligation Industrial Revenue Bonds Recovery Zone Facility Bonds [Member] Recovery zone facility bonds. Non-PEO NEO Average Total Compensation Amount Non-PEO NEO Average Total Compensation Amount Statement [Table] Statement [Table] Current Fiscal Year End Date Current Fiscal Year End Date Goodwill and Other Identifiable Intangible Assets Goodwill and Intangible Assets Disclosure [Text Block] PEO Name PEO Name Share Grants in Period, Weighted Average Grant Date Fair Value Share-Based Compensation Arrangement by Share-Based Payment Award, Equity Instruments Other than Options, Grants in Period, Weighted Average Grant Date Fair Value Schedule of goodwill attributable to each business segment Schedule of Goodwill [Table Text Block] Income Tax Uncertainties [Abstract] Income Tax Uncertainties [Abstract] Net cash provided by operating activities Net Cash Provided by (Used in) Operating Activities Schedule of estimated future amortization expense for identifiable intangible assets Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block] Proceeds from New Markets Tax Credit transaction, net of deferred costs Proceeds from New Markets Tax Credit Transaction net of deferred costs Proceeds from New Markets Tax Credit Transaction net of deferred costs Erroneously Awarded Compensation Recovery Erroneously Awarded Compensation Recovery [Table] Prepaid expenses and other current assets Increase (Decrease) in Other Operating Assets and Liabilities, Net Depreciation and amortization Depreciation, Depletion and Amortization Deferred costs Deferred Costs Accounts, Notes, Loans and Financing Receivable [Line Items] Accounts, Notes, Loans and Financing Receivable [Line Items] Award Timing, How MNPI Considered Award Timing, How MNPI Considered [Text Block] Recognized over time Transferred over Time [Member] Statement of Financial Position [Abstract] Statement of Financial Position [Abstract] Total shareholders’ equity Beginning balance Ending balance Equity, Attributable to Parent Architectural Services Architectural Services segment [Member] Architectural Services segment [Member] Consolidation Items [Axis] Consolidation Items [Axis] Schedule Of Finite Lived Intangible Assets [Table] Schedule of Finite-Lived Intangible Assets [Table] Unrecognized Tax Benefits that Would Impact Effective Tax Rate Unrecognized Tax Benefits that Would Impact Effective Tax Rate Restricted Stock [Member] Restricted Stock [Member] Schedule of Share-based Compensation Arrangements by Share-based Payment Award [Table] Schedule of Share-Based Compensation Arrangements by Share-Based Payment Award [Table] Revenue recognized related to contract liabilities from prior year-end Contract with Customer, Liability, Revenue Recognized Finite Lived Intangible Assets Major Class Name [Domain] Finite-Lived Intangible Assets, Major Class Name [Domain] Earnings before income taxes Income (Loss) from Continuing Operations before Income Taxes, Noncontrolling Interest Hedging Designation [Domain] Hedging Designation [Domain] Other Observable Inputs (Level 2) Fair Value, Inputs, Level 2 [Member] Entity Emerging Growth Company Entity Emerging Growth Company Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table] Estimated Fair Value Debt Securities, Available-for-Sale, Fair Value, Fiscal Year Maturity [Abstract] Intangible assets, net Intangible Assets, Net (Excluding Goodwill) Guarantees and warranties Schedule of Product Warranty Liability [Table Text Block] Increase (Decrease) in Stockholders' Equity [Roll Forward] Increase (Decrease) in Stockholders' Equity [Roll Forward] Named Executive Officers, Footnote Named Executive Officers, Footnote [Text Block] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items] Document Fiscal Period Focus Document Fiscal Period Focus Line of Credit Facility, Remaining Borrowing Capacity Line of Credit Facility, Remaining Borrowing Capacity Pay vs Performance Disclosure, Table Pay vs Performance [Table Text Block] Architectural Glass Architectural Glass [Member] Architectural Glass Title Trading Arrangement, Individual Title Share-based compensation Share-based Payment Arrangement, Noncash Expense Share-Based Payment Arrangement, Noncash Expense Common Stock [Member] Common Stock [Member] Individual: Individual [Axis] City Area Code City Area Code Entity Address, Postal Zip Code Entity Address, Postal Zip Code Earnings Per Share Earnings Per Share [Text Block] Fair value measurements Fair Value Measurements, Recurring and Nonrecurring [Table Text Block] Document Fiscal Year Focus Document Fiscal Year Focus Geographical [Domain] Geographical [Domain] Proceeds received Gross Proceeds From New Markets Tax Credit Transaction Gross Proceeds From New Markets Tax Credit Transaction Property, plant and equipment, net of accumulated depreciation of $454,659 and $431,710 Property, Plant and Equipment, Net Receivables, net Receivables, Net, Current Exercise Price Award Exercise Price Finite Lived Intangible Assets By Major Class [Axis] Finite-Lived Intangible Assets by Major Class [Axis] Other Comprehensive Income (Loss), Net of Tax Other Comprehensive Income (Loss), Net of Tax Statement of Cash Flows [Abstract] Statement of Cash Flows [Abstract] Cash dividends Dividends, Common Stock, Cash Assets Assets [Abstract] Award Timing MNPI Disclosure Award Timing MNPI Disclosure [Text Block] Goodwill and Intangible Assets Disclosure [Abstract] Goodwill and Intangible Assets Disclosure [Abstract] Operating lease liability Increase (Decrease) in Operating Lease Liability Net cash used by financing activities Net Cash Provided by (Used in) Financing Activities Commitments and Contingent Liabilities Commitments and Contingencies Disclosure [Text Block] Retained Earnings [Member] Retained Earnings [Member] Adjustment to Non-PEO NEO Compensation Footnote Adjustment to Non-PEO NEO Compensation Footnote [Text Block] Total liabilities and shareholders’ equity Liabilities and Equity Amortized Cost Total Debt Securities, Available-for-Sale, Amortized Cost Other non-current assets Other Assets, Noncurrent Peer Group Total Shareholder Return Amount Peer Group Total Shareholder Return Amount Unrealized gain (loss) on derivative instruments, net of $56, $277, $1 and $(1,192) of tax expense (benefit), respectively Other Comprehensive Income (Loss), Cash Flow Hedge, Gain (Loss), after Reclassification and Tax Basic earnings per share Earnings Per Share, Basic Operating lease right-of-use assets Operating Lease, Right-of-Use Asset Accounting Policies [Abstract] Equity Valuation Assumption Difference, Footnote Equity Valuation Assumption Difference, Footnote [Text Block] Erroneous Compensation Analysis Erroneous Compensation Analysis [Text Block] Arrangement Duration Trading Arrangement Duration Entity Address, City or Town Entity Address, City or Town Award Timing MNPI Considered Award Timing MNPI Considered [Flag] Sales and operating income data Schedule of Segment Reporting Information, by Segment [Table Text Block] Intangible Assets Foreign Currency Translation Intangible Assets Foreign Currency Translation Intangible Assets Foreign Currency Translation Document Transition Report Document Transition Report Award Timing Predetermined Award Timing Predetermined [Flag] Guarantees and warranties Movement in Extended Product Warranty Accrual [Roll Forward] Termination Date Trading Arrangement Termination Date Accounts payable Increase (Decrease) in Accounts Payable Common Stock, Shares Authorized Common Stock, Shares Authorized Estimated Fair Value Total Debt Securities, Available-for-Sale 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] Indefinite-Lived Intangible Assets [Axis] Indefinite-Lived Intangible Assets [Axis] Derivative Instrument [Axis] Derivative Instrument [Axis] 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] All Trading Arrangements All Trading Arrangements [Member] Due within one year Debt Securities, Available-for-Sale, Amortized Cost, Maturity, Allocated and Single Maturity Date, Year One All Adjustments to Compensation All Adjustments to Compensation [Member] Timing of Transfer of Good or Service [Domain] Timing of Transfer of Good or Service [Domain] Award Timing Disclosures [Line Items] Compensation Amount Outstanding Recovery Compensation Amount Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Schedule of Accounts, Notes, Loans and Financing Receivable [Table] Performance obligations expected to be satisfied Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Table Text Block] 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 Foreign currency effects Accounts Receivable, Credit Loss Expense (Reversal) Additional paid-in capital Additional Paid in Capital Other comprehensive (loss) earnings: Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract] Deferred income taxes Deferred Income Tax Expense (Benefit) Statement of Comprehensive Income [Abstract] Statement of Comprehensive Income [Abstract] Foreign Currency Translation Finite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss) 2027 Finite-Lived Intangible Asset, Expected Amortization, Year Three Insider Trading Arrangements [Line Items] Less: allowance for credit losses Accounts Receivable, Allowance for Credit Loss, Beginning Balance Accounts Receivable, Allowance for Credit Loss, Ending Balance Accounts Receivable, Allowance for Credit Loss Schedule of Segment Reporting Information, by Segment [Table] Schedule of Segment Reporting Information, by Segment [Table] Issuance of stock, net of cancellations (Shares) Shares Issued, Shares, Share-Based Payment Arrangement, after Forfeiture Large-Scale Optical Large Scale Optical [Member] Large scale optical. Gross Unrealized Gains Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Gain Entity Registrant Name Entity Registrant Name Material Terms of Trading Arrangement Material Terms of Trading Arrangement [Text Block] Award Timing Method Award Timing Method [Text Block] 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 2026 Finite-Lived Intangible Asset, Expected Amortization, Year Two Adjustment to Compensation, Amount Adjustment to Compensation Amount Proceeds from sales of property, plant and equipment Proceeds from Sale of Property, Plant, and Equipment Gross Unrealized Losses Debt Securities, Available-for-Sale and Held-to-Maturity, Cumulative Unrecognized Loss Document Period End Date Document Period End Date Borrowings on line of credit Proceeds from Lines of Credit Compensation Actually Paid vs. Net Income Compensation Actually Paid vs. Net Income [Text Block] Adoption Date Trading Arrangement Adoption Date Peer Group Issuers, Footnote Peer Group Issuers, Footnote [Text Block] Accumulated Depreciation Property, Plant, and Equipment Accumulated Depreciation, Depletion and Amortization, Property, Plant, and Equipment Credit Loss [Abstract] Credit Loss [Abstract] Corporate and other* Corporate and Other [Member] Allowance for Credit Losses Accounts Receivable, Allowance for Credit Loss [Table Text Block] Entity Central Index Key Entity Central Index Key Segment Reporting Information [Line Items] Segment Reporting Information [Line Items] Gain on disposal of assets Gain (Loss) on Disposition of Property Plant Equipment Restricted cash Restricted Cash and Investments, Current Non-Rule 10b5-1 Arrangement Terminated Non-Rule 10b5-1 Arrangement Terminated [Flag] Gross Carrying Amount Finite-Lived Intangible Assets, Gross Income tax expense Income Tax Expense (Benefit) Finished goods Inventory, Finished Goods, Net of Reserves Designated as Hedging Instrument Designated as Hedging Instrument [Member] Additions charged to costs and expenses Accounts Receivable, Allowance for Credit Loss, Writeoff Accrued compensation and benefits Employee-related Liabilities, Current Name Trading Arrangement, Individual Name Other comprehensive (loss) earnings Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent Disaggregated revenue data Disaggregation of Revenue [Table Text Block] Debt Securities, Available-for-sale [Line Items] Debt Securities, Available-for-Sale [Line Items] Supplemental Balance Sheet Information Inventory Disclosure [Text Block] Net sales Segment net sales Revenue from Contract with Customer, Excluding Assessed Tax Compensation Actually Paid vs. Company Selected Measure Compensation Actually Paid vs. Company Selected Measure [Text Block] Long-term Debt, Type [Axis] Long-Term Debt, Type [Axis] Amendment Flag Amendment Flag Schedule of finite lived identifiable intangible assets Finite-Lived Intangible Assets, Net [Abstract] Cash and cash equivalents Cash and Cash Equivalents, at Carrying Value Due within one year Debt Securities, Available-for-Sale, Fair Value, Maturity, Allocated and Single Maturity Date, Year One Share repurchases, Shares Stock Repurchased and Retired During Period, Shares Marketable Securities [Abstract] Marketable Securities [Abstract] August 2025 August 2025 [Member] August 2025 [Member] Compensation Actually Paid vs. Other Measure Compensation Actually Paid vs. Other Measure [Text Block] Long-term debt Long-Term Debt, Excluding Current Maturities Weighted average diluted shares outstanding Diluted earnings per share – weighted average common shares and potential common shares outstanding Weighted Average Number of Shares Outstanding, Diluted Forgone Recovery, Explanation of Impracticability Forgone Recovery, Explanation of Impracticability [Text Block] Money market funds Money Market Funds, at Carrying Value Trade accounts Trade Accounts Receivable [Member] Revenue, Receivables and Contract Assets and Liabilities Revenue from Contract with Customer [Text Block] Capital expenditures Payments to Acquire Property, Plant, and Equipment Company Selected Measure Amount Company Selected Measure Amount Additional Paid-in Capital [Member] Additional Paid-in Capital [Member] Total assets Assets Name Awards Close in Time to MNPI Disclosures, Individual Name Cover [Abstract] Cover [Abstract] Share-based compensation APIC, Share-Based Payment Arrangement, Increase for Cost Recognition Non-current self-insurance reserves Self Insurance Reserve, Noncurrent Goodwill Reallocation Goodwill Reallocation Goodwill Reallocation Other non-current liabilities Other Liabilities, Noncurrent Non-NEOs Non-NEOs [Member] Revenue, Remaining Performance Obligation, Amount Revenue, Remaining Performance Obligation, Amount September 2025 September 2025 [Member] September 2025 [Member] Income Tax Contingency [Line Items] Income Tax Contingency [Line Items] Segment Information Segment Reporting Disclosure [Text Block] Other share retirements, Shares Stock Redeemed or Called During Period, Shares Financing Activities Net Cash Provided by (Used in) Financing Activities [Abstract] Non-PEO NEO Non-PEO NEO [Member] Equity Component [Domain] Equity Component [Domain] Adjustment to Compensation: Adjustment to Compensation [Axis] Additional accruals Extended Product Warranty Accrual, Increase for Warranties Issued Work-in-process Inventory, Work in Process, Net of Reserves Non-GAAP Measure Description Non-GAAP Measure Description [Text Block] Weighted average basic shares outstanding Basic earnings per share – weighted average common shares outstanding Weighted Average Number of Shares Outstanding, Basic Entity Current Reporting Status Entity Current Reporting Status Operating income Segment operating income (loss) Operating Income (Loss) Schedule of estimated future amortization expense for identifiable intangible assets Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract] Pay vs Performance Disclosure Pay vs Performance Disclosure [Table] Statement Business Segments [Axis] Segments [Axis] Statement [Line Items] Statement [Line Items] Forgone Recovery due to Disqualification of Tax Benefits, Amount Forgone Recovery due to Disqualification of Tax Benefits, Amount Sales and operating income data Segment Reporting Information, Profit (Loss) [Abstract] Awards Close in Time to MNPI Disclosures Awards Close in Time to MNPI Disclosures [Table] Outstanding borrowings Long-Term Line of Credit Customer relationships Customer Relationships [Member] Amortized Cost Debt Securities, Available-for-Sale, Amortized Cost, Fiscal Year Maturity [Abstract] EX-101.PRE 10 apog-20231125_pre.xml XBRL TAXONOMY EXTENSION PRESENTATION LINKBASE DOCUMENT XML 11 R1.htm IDEA: XBRL DOCUMENT v3.23.4
Cover Page - shares
9 Months Ended
Nov. 25, 2023
Dec. 29, 2023
Cover [Abstract]    
Document Type 10-Q  
Document Quarterly Report true  
Document Period End Date Nov. 25, 2023  
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   22,085,098
Entity Central Index Key 0000006845  
Amendment Flag false  
Document Fiscal Year Focus 2024  
Document Fiscal Period Focus Q3  
Current Fiscal Year End Date --03-02  
XML 12 R2.htm IDEA: XBRL DOCUMENT v3.23.4
Consolidated Balance Sheets (unaudited) - USD ($)
$ in Thousands
Nov. 25, 2023
Feb. 25, 2023
Current assets    
Cash and cash equivalents $ 23,407 $ 19,924
Restricted cash 0 1,549
Receivables, net 198,249 197,267
Inventories 70,267 78,441
Contract assets 48,146 59,403
Other current assets 32,390 26,517
Total current assets 372,459 383,101
Property, plant and equipment, net of accumulated depreciation of $454,659 and $431,710 246,206 248,867
Accumulated Depreciation Property, Plant, and Equipment (454,659) (431,710)
Operating lease right-of-use assets 38,849 41,354
Goodwill 129,053 129,026
Intangible assets, net 64,174 67,375
Other non-current assets 44,114 45,642
Total assets 894,855 915,365
Current liabilities    
Accounts payable 83,107 86,549
Accrued compensation and benefits 42,768 51,651
Contract liabilities 35,770 28,011
Operating lease liabilities 12,358 11,806
Other current liabilities 62,572 64,532
Total current liabilities 236,575 242,549
Long-term debt 100,666 169,837
Non-current operating lease liabilities 29,547 33,072
Non-current self-insurance reserves 31,830 29,316
Other non-current liabilities 40,506 44,183
Shareholders' equity    
Common stock of $0.33-1/3 par value; authorized 50,000,000 shares; issued and outstanding 22,085,098 and 22,224,299, respectively 7,362 7,408
Additional paid-in capital 149,557 146,816
Retained earnings 329,936 273,740
Accumulated other comprehensive loss (31,124) (31,556)
Total shareholders’ equity 455,731 396,408
Total liabilities and shareholders’ equity $ 894,855 $ 915,365
Common Stock, Par or Stated Value Per Share $ 0.33 $ 0.33
Common Stock, Shares Authorized 50,000,000 50,000,000
Common Stock, Shares, Issued 22,085,098 22,224,299
Common Stock, Shares, Outstanding 22,085,098 22,224,299
XML 13 R3.htm IDEA: XBRL DOCUMENT v3.23.4
Consolidated Results of Operations (unaudited) - USD ($)
shares in Thousands, $ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Income Statement [Abstract]        
Net sales $ 339,714 $ 367,847 $ 1,055,102 $ 1,096,591
Cost of sales 249,409 281,239 776,440 839,430
Gross profit 90,305 86,608 278,662 257,161
Selling, general and administrative expenses 52,658 51,847 166,695 157,112
Operating income 37,647 34,761 111,967 100,049
Interest expense, net 1,454 2,590 5,720 5,494
Other expense (income), net 890 552 (3,722) 2,035
Earnings before income taxes 35,303 31,619 109,969 92,520
Income tax expense 8,329 7,854 26,092 8,635
Net earnings $ 26,974 $ 23,765 $ 83,877 $ 83,885
Earnings per share - basic        
Basic earnings per share $ 1.24 $ 1.09 $ 3.83 $ 3.81
Earnings per share - diluted        
Diluted earnings per share $ 1.23 $ 1.07 $ 3.80 $ 3.74
Weighted average basic shares outstanding 21,819 21,870 21,889 22,043
Weighted average diluted shares outstanding 22,013 22,278 22,093 22,456
XML 14 R4.htm IDEA: XBRL DOCUMENT v3.23.4
Consolidated Statements of Comprehensive Earnings (unaudited) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Statement of Comprehensive Income [Abstract]        
Net earnings $ 26,974 $ 23,765 $ 83,877 $ 83,885
Other comprehensive (loss) earnings:        
Unrealized (loss) gain on marketable securities, net of $(2), $(24), $23 and $(127) of tax (benefit) expense, respectively (7) (88) 86 (470)
Unrealized gain (loss) on derivative instruments, net of $56, $277, $1 and $(1,192) of tax expense (benefit), respectively 186 905 6 (3,911)
Foreign currency translation adjustments (604) (1,295) 340 (2,340)
Other comprehensive (loss) earnings (425) (478) 432 (6,721)
Total comprehensive earnings 26,549 23,287 84,309 77,164
Supplemental Income Statement Elements [Abstract]        
Tax expense (benefit) on marketable securities (2) (24) 23 (127)
Tax expense (benefit) on derivatives $ 56 $ 277 $ 1 $ (1,192)
XML 15 R5.htm IDEA: XBRL DOCUMENT v3.23.4
Consolidated Statements of Cash Flows (unaudited) - USD ($)
$ in Thousands
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Operating Activities    
Net earnings $ 83,877 $ 83,885
Adjustments to reconcile net earnings to net cash provided by operating activities:    
Depreciation and amortization 31,185 31,925
Share-based compensation 6,644 5,961
Deferred income taxes 1,296 2,341
Gain on disposal of assets (50) (1,484)
Proceeds from New Markets Tax Credit transaction, net of deferred costs 0 18,390
Settlement of New Markets Tax Credit transaction (4,687) (19,523)
Noncash lease expense 8,742 8,924
Other, net 10 4,700
Changes in operating assets and liabilities:    
Receivables (846) (55,791)
Inventories 8,256 (5,822)
Contract assets 11,194 (8,314)
Accounts payable (1,902) (19,780)
Accrued expenses (7,015) 7,281
Contract liabilities 7,635 24,702
Refundable and accrued income taxes (7,587) (14,391)
Operating lease liability (9,214) (9,168)
Prepaid expenses and other current assets 1,714 (2,724)
Net cash provided by operating activities 129,252 51,112
Investing Activities    
Capital expenditures (26,956) (18,119)
Proceeds from sales of property, plant and equipment 247 5,212
Purchases of marketable securities (969) 0
Sales/maturities of marketable securities 1,370 923
Net cash used by investing activities (26,308) (11,984)
Financing Activities    
Borrowings on line of credit 195,851 430,879
Repayment on debt 0 (151,000)
Payments on line of credit (265,000) (239,000)
Payments on debt issuance costs 0 (790)
Repurchase and retirement of common stock (11,821) (74,312)
Dividends paid (15,690) (14,415)
Other, net (3,781) (2,959)
Net cash used by financing activities (100,441) (51,597)
Increase (decrease) in cash, cash equivalents and restricted cash 2,503 (12,469)
Effect of exchange rates on cash (569) 350
Cash, cash equivalents and restricted cash at beginning of year 21,473 37,583
Cash and cash equivalents at end of period 23,407 25,464
Noncash Activity    
Capital expenditures in accounts payable $ 1,231 $ 1,557
XML 16 R6.htm IDEA: XBRL DOCUMENT v3.23.4
Consolidated Statement of Shareholders Equity (unaudited) - USD ($)
shares in Thousands, $ in Thousands
Total
Common Stock [Member]
Additional Paid-in Capital [Member]
Retained Earnings [Member]
Accumulated Other Comprehensive Income (Loss) [Member]
Beginning balance (in shares) at Feb. 26, 2022 23,701        
Beginning balance at Feb. 26, 2022 $ 386,199 $ 7,901 $ 149,713 $ 254,825 $ (26,240)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 22,731     22,731  
Other Comprehensive Income (Loss), Net of Tax $ (2,860)       (2,860)
Issuance of stock, net of cancellations (Shares) 100        
Issuance of stock, net of cancellations $ 56 33 23    
Share-based compensation $ 1,597   1,597    
Share repurchases, Shares (1,571)        
Share repurchases $ (74,312) (524) (10,350) (63,438)  
Other share retirements, Shares (30)        
Other share retirements $ (1,328) (10) (198) (1,120)  
Cash dividends $ (4,793)     (4,793)  
Ending balance (in shares) at May. 28, 2022 22,200        
Ending balance at May. 28, 2022 $ 327,290 7,400 140,785 208,205 (29,100)
Beginning balance (in shares) at Feb. 26, 2022 23,701        
Beginning balance at Feb. 26, 2022 $ 386,199 7,901 149,713 254,825 (26,240)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings $ 83,885        
Ending balance (in shares) at Nov. 26, 2022 22,214        
Ending balance at Nov. 26, 2022 $ 377,638 7,405 144,358 258,836 (32,961)
Beginning balance (in shares) at May. 28, 2022 22,200        
Beginning balance at May. 28, 2022 $ 327,290 7,400 140,785 208,205 (29,100)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 37,389     37,389  
Other Comprehensive Income (Loss), Net of Tax $ (3,383)       (3,383)
Issuance of stock, net of cancellations (Shares) 14        
Issuance of stock, net of cancellations $ 56 5 61    
Share-based compensation $ 1,797   1,797    
Exercise of stock options (shares) 36        
Exercise of stock options $ (942) (12) (954)    
Other share retirements, Shares (13)        
Other share retirements $ (658) (4) (114) (540)  
Cash dividends $ (4,809)     (4,809)  
Ending balance (in shares) at Aug. 27, 2022 22,209        
Ending balance at Aug. 27, 2022 $ 356,740 7,403 141,575 240,245 (32,483)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 23,765     23,765  
Other Comprehensive Income (Loss), Net of Tax $ (478)       (478)
Issuance of stock, net of cancellations (Shares) 9        
Issuance of stock, net of cancellations $ 57 3 250 196  
Share-based compensation $ 2,567   2,567    
Other share retirements, Shares (4)        
Other share retirements $ (200) (1) (34) (165)  
Cash dividends $ (4,813)     (4,813)  
Ending balance (in shares) at Nov. 26, 2022 22,214        
Ending balance at Nov. 26, 2022 $ 377,638 7,405 144,358 258,836 (32,961)
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 (Shares) 155        
Issuance of stock, net of cancellations $ 56 52 13 9  
Share-based compensation $ 2,178   2,178    
Share repurchases, Shares (120)        
Share repurchases $ (5,193) (40) (829) (4,324)  
Other share retirements, 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 $ 83,877        
Ending balance (in shares) at Nov. 25, 2023 22,085        
Ending balance at Nov. 25, 2023 $ 455,731 7,362 149,557 329,936 (31,124)
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 (Shares) 3        
Issuance of stock, net of cancellations $ 189 1 7 195  
Share-based compensation $ 2,305   2,305    
Exercise of stock options (shares) 25        
Exercise of stock options $ (1,184) (8) (1,192)    
Share repurchases, Shares (160)        
Share repurchases $ (6,628) (53) (1,160) (5,415)  
Other share retirements, 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)
Increase (Decrease) in Stockholders' Equity [Roll Forward]          
Net earnings 26,974     26,974  
Other Comprehensive Income (Loss), Net of Tax $ (424)       (424)
Issuance of stock, net of cancellations (Shares) 15        
Issuance of stock, net of cancellations $ 1 6 5    
Share-based compensation $ 2,161   2,161    
Other share retirements, Shares (2)        
Other share retirements $ (77) (1) (12) (64)  
Cash dividends $ (5,222)     (5,222)  
Ending balance (in shares) at Nov. 25, 2023 22,085        
Ending balance at Nov. 25, 2023 $ 455,731 $ 7,362 $ 149,557 $ 329,936 $ (31,124)
XML 17 R7.htm IDEA: XBRL DOCUMENT v3.23.4
Income Taxes
9 Months Ended
Nov. 25, 2023
Statement of Financial Position [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 no longer subject to U.S. federal tax examinations for years prior to fiscal 2020, 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 year 2019, and there is very limited examination activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.
The total liability for unrecognized tax benefits was $5.3 million at November 25, 2023 and February 25, 2023, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense.
XML 18 R8.htm IDEA: XBRL DOCUMENT v3.23.4
Income Taxes (Textual) - USD ($)
$ in Millions
Nov. 25, 2023
Feb. 25, 2023
Income Tax Uncertainties [Abstract]    
Unrecognized Tax Benefits that Would Impact Effective Tax Rate $ 5.3 $ 5.3
XML 19 R9.htm IDEA: XBRL DOCUMENT v3.23.4
Summary of Significant Accounting Policies
9 Months Ended
Nov. 25, 2023
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. The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended February 25, 2023. 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 nine-month periods ended November 25, 2023 are not necessarily indicative of the results to be expected for the full year.

Reclassifications
Certain reclassifications of amounts previously reported have been made to the accompanying consolidated balance sheets, consolidated statements of cash flows and notes to consolidated financial statements to conform to current year presentation of contract assets and liabilities. These reclassifications had no impact on reported cash flows or total assets and liabilities.

Adoption of new accounting standards
In the first quarter, we adopted the guidance in ASU 2022-04, Liabilities – Supplier Finance Programs, Disclosure of Supplier Finance Program Obligations. The guidance requires that entities that use supplier finance programs disclose information about the nature and potential magnitude of the programs, activity during the period, and changes from period to period. Beginning in the first quarter, we implemented a supplier financing arrangement with U.S. Bank that enables our suppliers, at their sole discretion, to sell the Company's receivables (i.e., our payment obligations to the suppliers) to U.S. Bank on a non-recourse basis in order to be paid earlier than our payment terms provide. Our 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 a supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. As of November 25, 2023, $7.8 million of obligations remained outstanding that we have confirmed as valid to the administrators of our program with U.S. Bank. These balances are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided (used by) operating activities in our consolidated statements of cash flows when settled.
XML 20 R10.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities
9 Months Ended
Nov. 25, 2023
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 11 for disclosure of revenue by segment):
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Recognized at shipment$144,910 $168,593 $449,805 $504,450 
Recognized over time194,804 199,254 605,297 592,141 
Total$339,714 $367,847 $1,055,102 $1,096,591 

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 forecast 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)November 25, 2023February 25, 2023
Trade accounts$113,016 $140,732 
Construction contracts88,007 58,331 
Total receivables201,023 199,063 
Less: allowance for credit losses2,774 1,796 
Receivables, net$198,249 $197,267 
The following table summarizes the activity in the allowance for credit losses for the nine-month period ended:
(In thousands)November 25, 2023
Beginning balance$1,796 
Additions charged to costs and expenses1,256 
Deductions from allowance, net of recoveries(281)
Foreign currency effects
Ending balance$2,774 

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 EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Revenue recognized related to contract liabilities from prior year-end$191 $3,473 $25,147 $36,630 
Revenue recognized related to prior satisfaction of performance obligations730 4,640 5,634 9,586 

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 November 25, 2023 are expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)November 25, 2023
Within one year
$456,880 
Between one and two years
315,667 
Beyond two years
75,170 
Total$847,717 
XML 21 R11.htm IDEA: XBRL DOCUMENT v3.23.4
Supplemental Balance Sheet Information
9 Months Ended
Nov. 25, 2023
Inventory Disclosure [Abstract]  
Supplemental Balance Sheet Information
Inventories
(In thousands)November 25, 2023February 25, 2023
Raw materials$34,535 $36,869 
Work-in-process17,256 18,024 
Finished goods18,476 23,548 
Total inventories$70,267 $78,441 
XML 22 R12.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments
9 Months Ended
Nov. 25, 2023
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
November 25, 2023$10,168 $$597 $9,574 
February 25, 202310,647 — 702 9,945 

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 November 25, 2023, 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$2,439 $2,406 
Due after one year through five years7,729 7,168 
Total$10,168 $9,574 

Derivative instruments
We use interest rate swaps, foreign exchange contracts, commodity swaps 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 our floating-rate revolving credit facility. As of November 25, 2023, 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 November 25, 2023, we held aluminum fixed/floating swaps and foreign exchange contracts with U.S. dollar notional values of $14.9 million and $0.8 million, respectively.

These derivative instruments are recorded within our consolidated balance sheets within other current assets and liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive income.

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
November 25, 2023
Assets:
Money market funds$13,262 $— $13,262 
Municipal and corporate bonds— 9,574 9,574 
Foreign currency option contract— 
Interest rate swap contract— 1,550 1,550 
Liabilities:
Aluminum hedging contract— 724 724 
February 25, 2023
Assets:
Money market funds$8,062 $— $8,062 
Municipal and corporate bonds— 9,945 9,945 
Interest rate swap contract— 1,817 1,817 
Liabilities:
Foreign currency option contract— 206 206 
Aluminum hedging contract— 1,075 1,075 
XML 23 R13.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets
9 Months Ended
Nov. 25, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Goodwill and Other Identifiable Intangible Assets Goodwill and Other Intangible Assets
Goodwill
Goodwill represents the excess of the cost over the value of net tangible and identified intangible assets of acquired businesses. We evaluate goodwill for impairment annually as of the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that the carrying value of goodwill may not be recoverable.

At the beginning of the first quarter of fiscal 2023, we began management of the Sotawall and Harmon businesses under the Architectural Services segment in order to create a single, unified offering for larger custom curtainwall projects, which resulted in the combination of the Sotawall and Harmon reporting units into a single reporting unit. We evaluated goodwill on a qualitative basis prior to and subsequent to this change for these reporting units and concluded that no adjustment to the carrying value of goodwill was necessary. Concurrent with the move of Sotawall from the Architectural Framing Systems segment to the Architectural Services segment effective at the start of our first quarter of fiscal 2023, goodwill was reallocated to the affected reporting units within each segment, using a relative fair value approach as outlined in ASC 350, Intangibles - Goodwill and Other.

During the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative goodwill impairment evaluation was performed.

The following table presents the carrying amount of goodwill attributable to each reporting segment including the amount of goodwill that was reallocated from the Architectural Framing Systems segment to the Architectural Services segment using the relative fair value approach during the first quarter of fiscal 2023:
(In thousands)Architectural Framing SystemsArchitectural GlassArchitectural ServicesLarge-Scale
Optical
Total
Balance at February 26, 2022$93,181 $25,244 $1,120 $10,557 $130,102 
Reallocation among reporting units (1)
(2,048)— 2,048 — — 
Foreign currency translation(996)57 (137)— (1,076)
Balance at February 25, 202390,137 25,301 3,031 10,557 129,026 
Foreign currency translation(28)59 (4)— 27 
Balance at November 25, 2023$90,109 $25,360 $3,027 $10,557 $129,053 
(1) Represents the reallocation of goodwill as a result of transitioning Sotawall from the Architectural Framing Systems segment to the Architectural Services segment as of the start of the first quarter of fiscal 2023.
Other intangible assets
Indefinite-lived intangible assets
We have intangible assets for certain acquired trade names and trademarks which are determined to have indefinite useful lives. We test indefinite-lived intangible assets for impairment annually at the same measurement date as goodwill, the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that it is more likely than not that the asset is impaired. During the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative intangible impairment evaluation was performed.

Definite-lived intangible assets
Long-lived assets or asset groups, including intangible assets subject to amortization and property and equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying value of those assets may not be recoverable. We use undiscounted cash flows to determine whether impairment exists and measure any impairment loss using discounted cash flows to determine the fair value of long-lived assets.

The gross carrying amount of other intangible assets and related accumulated amortization was:

(In thousands)Gross
Carrying
Amount
Accumulated
Amortization
Foreign
Currency
Translation
Net
November 25, 2023
Definite-lived intangible assets:
Customer relationships$86,798 $(52,130)$(15)$34,653 
Other intangibles38,360 (35,706)25 2,679 
Total125,158 (87,836)10 37,332 
Indefinite-lived intangible assets:
Trademarks26,851 — (9)26,842 
Total intangible assets$152,009 $(87,836)$$64,174 
February 25, 2023
Definite-lived intangible assets:
Customer relationships$89,495 $(49,404)$(2,697)$37,394 
Other intangibles39,404 (35,229)(1,045)3,130 
Total128,899 (84,633)(3,742)40,524 
Indefinite-lived intangible assets:
Trademarks27,129 — (278)26,851 
Total intangible assets$156,028 $(84,633)$(4,020)$67,375 

Amortization expense on definite-lived intangible assets was $3.0 million and $3.1 million for the nine-month periods ended November 25, 2023 and November 26, 2022, respectively. Amortization expense of other identifiable intangible assets is included in selling, general and administrative expenses. At November 25, 2023, the estimated future amortization expense for definite-lived intangible assets was:
(In thousands)Remainder of 20242025202620272028
Estimated amortization expense$1,058 $4,240 $4,223 $4,391 $3,936 
XML 24 R14.htm IDEA: XBRL DOCUMENT v3.23.4
Debt
9 Months Ended
Nov. 25, 2023
Debt Disclosure [Abstract]  
Debt Debt
As of November 25, 2023, we had a committed revolving credit facility with Wells Fargo Bank, N.A. as administrative agent, and other lenders (U.S. credit facility) with maximum borrowings of up to $385 million and a maturity date of August 5, 2027. Outstanding borrowings under the revolving credit facility were $85.0 million and $156.0 million as of November 25, 2023 and February 25, 2023, respectively.

We also maintain two Canadian committed, revolving credit facilities with the Bank of Montreal totaling $25.0 million USD (Canadian facilities). The Canadian facilities expire annually in February, but can be renewed each year solely at our discretion until August 2027. Therefore, we have classified all outstanding amounts under these facilities as long-term debt within our consolidated balance sheets. At November 25, 2023 and February 25, 2023, outstanding borrowings under these Canadian facilities were $3.7 million and $1.8 million, respectively.
Our revolving credit facilities contain two maintenance financial covenants that require us to stay below a maximum debt-to-EBITDA ratio of 3.25 and maintain a minimum ratio of EBITDA-to-interest expense of 3.00. Both ratios are computed quarterly, with EBITDA calculated on a rolling four-quarter basis. At November 25, 2023, we were in compliance with both financial covenants.

The revolving credit facilities also contain 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 debt-to-EBITDA ratio to 3.75 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 facility, and at least two fiscal quarters must separate qualifying acquisitions.

Borrowings under the credit facilities bear floating interest at either the Base Rate or Term SOFR, plus a margin based on the Leverage Ratio (as defined in the Credit Agreements). For Base Rate borrowings, the margin ranges from 0.125% to 0.75%. For Term SOFR borrowings, the margin ranges from 1.125% to 1.75% and an incremental Term SOFR adjustment of 0.10%.

The U.S. credit facility also contains an "accordion" provision. Under this provision, we can request that the facility be increased by as much as $200.0 million. Any Lender may elect or decline to participate in the requested increase at the Lender’s sole discretion.

At November 25, 2023, we had a total of $15.0 million of ongoing letters of credit related to industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal year 2025 and reduce borrowing capacity under the revolving credit facility. As of November 25, 2023, the amount available for revolving borrowings was $285.0 million and $21.3 million under the U.S. credit facility and Canadian facilities, respectively.

At November 25, 2023, debt included $12.0 million of industrial revenue bonds that mature in fiscal years 2036 through 2043.

The fair value of our U.S. credit facility, Canadian credit facilities and industrial revenue bonds approximated carrying value at November 25, 2023, 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..

Interest payments under the U.S. and Canadian credit facilities were $7.5 million and $5.3 million for the nine months ended November 25, 2023 and November 26, 2022, respectively.
XML 25 R15.htm IDEA: XBRL DOCUMENT v3.23.4
Commitments and Contingent Liabilities
9 Months Ended
Nov. 25, 2023
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 November 25, 2023, $1.3 billion of these types of bonds were outstanding, of which $398.4 million is in our backlog. These bonds do not have stated expiration dates. 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 the following: changes in manufacturing quality, changes in product mix, and any significant changes in sales volume.
 Nine Months Ended
(In thousands)November 25, 2023November 26, 2022
Balance at beginning of period$17,893 $13,923 
Additional accruals12,743 11,201 
Claims paid(7,644)(7,755)
Balance at end of period$22,992 $17,369 

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 businesses. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages.
Letters of credit
At November 25, 2023, we had $15.0 million of ongoing letters of credit, all of which have been issued under our committed revolving credit facility, as discussed in Note 6.

Purchase obligations
Purchase obligations for raw material commitments and capital expenditures totaled $45.0 million as of November 25, 2023.

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. Variable-interest entities, which have been included within our consolidated financial statements, have been created as a result of the structure of these transactions, as investors in the programs do not have a material interest in their underlying economics.

During the second quarter of fiscal 2024, one NMTC transaction was settled as expected and as a result, a $4.7 million benefit was recorded in other (income) expense, net.

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 R16.htm IDEA: XBRL DOCUMENT v3.23.4
Share-Based Compensation
9 Months Ended
Nov. 25, 2023
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 Global Select 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. Refer to our Form 10-K for further information on our share-based compensation plans.
The table below sets forth the number of stock-based compensation awards granted during the nine-months ended November 25, 2023, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Exercise Price
Restricted stock awards and restricted stock units(1)
195,013 $43.16 
Performance share units ("PSUs")(2)
48,483 $43.59 
(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 achieving a defined performance goal of return on invested capital and being employed at the end of the performance period.

Total share-based compensation expense included in the results of operations was $6.6 million for the nine-month period ended November 25, 2023, and $6.0 million for the nine-month period ended November 26, 2022.

At November 25, 2023, there was $11.6 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 21 months. The total fair value of shares vested during the nine months ended November 25, 2023 was $5.8 million.
XML 27 R17.htm IDEA: XBRL DOCUMENT v3.23.4
Earnings per Share
9 Months Ended
Nov. 25, 2023
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 EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Basic earnings per share – weighted average common shares outstanding
21,819 21,870 21,889 22,043 
Weighted average effect of nonvested share grants and assumed exercise of stock options
194 408 204 413 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
22,013 22,278 22,093 22,456 
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)
37 109 56 109 
XML 28 R18.htm IDEA: XBRL DOCUMENT v3.23.4
Segment Information
9 Months Ended
Nov. 25, 2023
Segment Reporting [Abstract]  
Segment Information 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 commercial 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 custom framing, museum, and technical glass markets.
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Segment net sales
Architectural Framing Systems$139,585 $165,013 $462,548 $501,172 
Architectural Glass90,964 81,541 282,262 235,158 
Architectural Services94,662 102,031 272,144 312,151 
Large-Scale Optical26,009 26,660 72,110 76,988 
Intersegment eliminations(11,506)(7,398)(33,962)(28,878)
Net sales$339,714 $367,847 $1,055,102 $1,096,591 
Segment operating income (loss)
Architectural Framing Systems$16,981 $22,089 $57,986 $66,266 
Architectural Glass15,164 7,461 49,119 19,087 
Architectural Services5,288 6,032 8,211 14,449 
Large-Scale Optical7,100 7,109 17,288 19,598 
Corporate and other*(6,886)(7,930)(20,637)(19,351)
Operating income$37,647 $34,761 $111,967 $100,049 
*Corporate and other includes certain corporate expenses that are not allocated at a segment level.

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 29 R19.htm IDEA: XBRL DOCUMENT v3.23.4
Pay vs Performance Disclosure - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Aug. 26, 2023
May 27, 2023
Nov. 26, 2022
Aug. 27, 2022
May 28, 2022
Nov. 25, 2023
Nov. 26, 2022
Pay vs Performance Disclosure                
Net earnings $ 26,974 $ 33,327 $ 23,576 $ 23,765 $ 37,389 $ 22,731 $ 83,877 $ 83,885
XML 30 R20.htm IDEA: XBRL DOCUMENT v3.23.4
Insider Trading Arrangements
3 Months Ended
Nov. 25, 2023
Trading Arrangements, by Individual  
Non-Rule 10b5-1 Arrangement Adopted false
XML 31 R21.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities (Tables)
9 Months Ended
Nov. 25, 2023
Revenue from Contract with Customer [Abstract]  
Disaggregated revenue data
The following table disaggregates total revenue by timing of recognition (see Note 11 for disclosure of revenue by segment):
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Recognized at shipment$144,910 $168,593 $449,805 $504,450 
Recognized over time194,804 199,254 605,297 592,141 
Total$339,714 $367,847 $1,055,102 $1,096,591 
Net receivables
(In thousands)November 25, 2023February 25, 2023
Trade accounts$113,016 $140,732 
Construction contracts88,007 58,331 
Total receivables201,023 199,063 
Less: allowance for credit losses2,774 1,796 
Receivables, net$198,249 $197,267 
Allowance for Credit Losses
The following table summarizes the activity in the allowance for credit losses for the nine-month period ended:
(In thousands)November 25, 2023
Beginning balance$1,796 
Additions charged to costs and expenses1,256 
Deductions from allowance, net of recoveries(281)
Foreign currency effects
Ending balance$2,774 
Performance obligations expected to be satisfied expected to be satisfied, and the corresponding revenue to be recognized, over the following estimated time periods:
(In thousands)November 25, 2023
Within one year
$456,880 
Between one and two years
315,667 
Beyond two years
75,170 
Total$847,717 
XML 32 R22.htm IDEA: XBRL DOCUMENT v3.23.4
Supplemental Balance Sheet Information (Tables)
9 Months Ended
Nov. 25, 2023
Inventory Disclosure [Abstract]  
Components of inventories
Inventories
(In thousands)November 25, 2023February 25, 2023
Raw materials$34,535 $36,869 
Work-in-process17,256 18,024 
Finished goods18,476 23,548 
Total inventories$70,267 $78,441 
XML 33 R23.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments (Tables)
9 Months Ended
Nov. 25, 2023
Marketable Securities [Abstract]  
Amortized cost, gross unrealized gains and losses, and estimated fair values of investments available for sale e hold the following available-for-sale marketable securities, made up of fixed-maturity investments: 
(In thousands)Amortized CostGross Unrealized GainsGross Unrealized LossesEstimated
Fair Value
November 25, 2023$10,168 $$597 $9,574 
February 25, 202310,647 — 702 9,945 
Schedule of amortized cost and estimated fair values of investments by contractual maturity
The amortized cost and estimated fair values of these investments at November 25, 2023, 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$2,439 $2,406 
Due after one year through five years7,729 7,168 
Total$10,168 $9,574 
Fair value measurements
(In thousands)Quoted Prices in
Active Markets
(Level 1)
Other Observable Inputs (Level 2)Total Fair Value
November 25, 2023
Assets:
Money market funds$13,262 $— $13,262 
Municipal and corporate bonds— 9,574 9,574 
Foreign currency option contract— 
Interest rate swap contract— 1,550 1,550 
Liabilities:
Aluminum hedging contract— 724 724 
February 25, 2023
Assets:
Money market funds$8,062 $— $8,062 
Municipal and corporate bonds— 9,945 9,945 
Interest rate swap contract— 1,817 1,817 
Liabilities:
Foreign currency option contract— 206 206 
Aluminum hedging contract— 1,075 1,075 
XML 34 R24.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets (Tables)
9 Months Ended
Nov. 25, 2023
Goodwill and Intangible Assets Disclosure [Abstract]  
Schedule of goodwill attributable to each business segment
(In thousands)Architectural Framing SystemsArchitectural GlassArchitectural ServicesLarge-Scale
Optical
Total
Balance at February 26, 2022$93,181 $25,244 $1,120 $10,557 $130,102 
Reallocation among reporting units (1)
(2,048)— 2,048 — — 
Foreign currency translation(996)57 (137)— (1,076)
Balance at February 25, 202390,137 25,301 3,031 10,557 129,026 
Foreign currency translation(28)59 (4)— 27 
Balance at November 25, 2023$90,109 $25,360 $3,027 $10,557 $129,053 
(1) Represents the reallocation of goodwill as a result of transitioning Sotawall from the Architectural Framing Systems segment to the Architectural Services segment as of the start of the first quarter of fiscal 2023.
Schedule of finite lived intangible assets
The gross carrying amount of other intangible assets and related accumulated amortization was:

(In thousands)Gross
Carrying
Amount
Accumulated
Amortization
Foreign
Currency
Translation
Net
November 25, 2023
Definite-lived intangible assets:
Customer relationships$86,798 $(52,130)$(15)$34,653 
Other intangibles38,360 (35,706)25 2,679 
Total125,158 (87,836)10 37,332 
Indefinite-lived intangible assets:
Trademarks26,851 — (9)26,842 
Total intangible assets$152,009 $(87,836)$$64,174 
February 25, 2023
Definite-lived intangible assets:
Customer relationships$89,495 $(49,404)$(2,697)$37,394 
Other intangibles39,404 (35,229)(1,045)3,130 
Total128,899 (84,633)(3,742)40,524 
Indefinite-lived intangible assets:
Trademarks27,129 — (278)26,851 
Total intangible assets$156,028 $(84,633)$(4,020)$67,375 
Schedule of estimated future amortization expense for identifiable intangible assets At November 25, 2023, the estimated future amortization expense for definite-lived intangible assets was:
(In thousands)Remainder of 20242025202620272028
Estimated amortization expense$1,058 $4,240 $4,223 $4,391 $3,936 
XML 35 R25.htm IDEA: XBRL DOCUMENT v3.23.4
Commitments and Contingent Liabilities (Tables)
9 Months Ended
Nov. 25, 2023
Commitments and Contingencies Disclosure [Abstract]  
Guarantees and warranties
 Nine Months Ended
(In thousands)November 25, 2023November 26, 2022
Balance at beginning of period$17,893 $13,923 
Additional accruals12,743 11,201 
Claims paid(7,644)(7,755)
Balance at end of period$22,992 $17,369 
XML 36 R26.htm IDEA: XBRL DOCUMENT v3.23.4
Share-Based Compensation (Tables)
9 Months Ended
Nov. 25, 2023
Share-Based Payment Arrangement [Abstract]  
Share Grants in Period and Weighted Average Grant Date Fair Value
The table below sets forth the number of stock-based compensation awards granted during the nine-months ended November 25, 2023, along with the weighted average grant date fair value:

AwardsNumber of AwardsWeighted Average Exercise Price
Restricted stock awards and restricted stock units(1)
195,013 $43.16 
Performance share units ("PSUs")(2)
48,483 $43.59 
(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 achieving a defined performance goal of return on invested capital and being employed at the end of the performance period.
XML 37 R27.htm IDEA: XBRL DOCUMENT v3.23.4
Earnings per Share (Tables)
9 Months Ended
Nov. 25, 2023
Earnings Per Share [Abstract]  
Reconciliation 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 EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Basic earnings per share – weighted average common shares outstanding
21,819 21,870 21,889 22,043 
Weighted average effect of nonvested share grants and assumed exercise of stock options
194 408 204 413 
Diluted earnings per share – weighted average common shares and potential common shares outstanding
22,013 22,278 22,093 22,456 
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)
37 109 56 109 
XML 38 R28.htm IDEA: XBRL DOCUMENT v3.23.4
Segment Information (Tables)
9 Months Ended
Nov. 25, 2023
Segment Reporting [Abstract]  
Sales and operating income data
Three Months EndedNine Months Ended
(In thousands)November 25, 2023November 26, 2022November 25, 2023November 26, 2022
Segment net sales
Architectural Framing Systems$139,585 $165,013 $462,548 $501,172 
Architectural Glass90,964 81,541 282,262 235,158 
Architectural Services94,662 102,031 272,144 312,151 
Large-Scale Optical26,009 26,660 72,110 76,988 
Intersegment eliminations(11,506)(7,398)(33,962)(28,878)
Net sales$339,714 $367,847 $1,055,102 $1,096,591 
Segment operating income (loss)
Architectural Framing Systems$16,981 $22,089 $57,986 $66,266 
Architectural Glass15,164 7,461 49,119 19,087 
Architectural Services5,288 6,032 8,211 14,449 
Large-Scale Optical7,100 7,109 17,288 19,598 
Corporate and other*(6,886)(7,930)(20,637)(19,351)
Operating income$37,647 $34,761 $111,967 $100,049 
XML 39 R29.htm IDEA: XBRL DOCUMENT v3.23.4
Summary of Significant Accounting Policies (Details)
$ in Thousands
Nov. 25, 2023
USD ($)
Accounting Policies [Abstract]  
Supplier Finance Program, Obligation $ 7,800
XML 40 R30.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities Revenue (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Disaggregation of Revenue [Line Items]        
Total $ 339,714 $ 367,847 $ 1,055,102 $ 1,096,591
Recognized at shipment        
Disaggregation of Revenue [Line Items]        
Total 144,910 168,593 449,805 504,450
Recognized over time        
Disaggregation of Revenue [Line Items]        
Total $ 194,804 $ 199,254 $ 605,297 $ 592,141
XML 41 R31.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities Accounts Receivable (Details) - USD ($)
$ in Thousands
Nov. 25, 2023
Feb. 25, 2023
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables $ 201,023 $ 199,063
Less: allowance for credit losses 2,774 1,796
Receivables, net 198,249 197,267
Trade accounts    
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables 113,016 140,732
Construction contracts    
Accounts, Notes, Loans and Financing Receivable [Line Items]    
Total receivables $ 88,007 $ 58,331
XML 42 R32.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities Allowance for Credit Losses (Details)
$ in Thousands
9 Months Ended
Nov. 25, 2023
USD ($)
Credit Loss [Abstract]  
Accounts Receivable, Allowance for Credit Loss, Beginning Balance $ 1,796
Additions charged to costs and expenses 1,256
Deductions from allowance, net of recoveries (281)
Foreign currency effects 3
Accounts Receivable, Allowance for Credit Loss, Ending Balance $ 2,774
XML 43 R33.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities (Details 4) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Revenue from Contract with Customer [Abstract]        
Revenue recognized related to contract liabilities from prior year-end $ 191 $ 3,473 $ 25,147 $ 36,630
Revenue recognized related to prior satisfaction of performance obligations $ 730 $ 4,640 $ 5,634 $ 9,586
XML 44 R34.htm IDEA: XBRL DOCUMENT v3.23.4
Revenue, Receivables and Contract Assets and Liabilities (Details 5)
$ in Thousands
Nov. 25, 2023
USD ($)
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue, Remaining Performance Obligation, Amount $ 847,717
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2023-11-26  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue, Remaining Performance Obligation, Amount $ 456,880
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period 1 year
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2024-11-26  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue, Remaining Performance Obligation, Amount $ 315,667
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period 2 years
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Start Date [Axis]: 2025-11-26  
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction [Line Items]  
Revenue, Remaining Performance Obligation, Amount $ 75,170
Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period 2 years
XML 45 R35.htm IDEA: XBRL DOCUMENT v3.23.4
Supplemental Balance Sheet Information - Components of inventories (Details) - USD ($)
$ in Thousands
Nov. 25, 2023
Feb. 25, 2023
Inventory Disclosure [Abstract]    
Raw materials $ 34,535 $ 36,869
Work-in-process 17,256 18,024
Finished goods 18,476 23,548
Total inventories $ 70,267 $ 78,441
XML 46 R36.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments (Details) - USD ($)
$ in Thousands
Nov. 25, 2023
Feb. 25, 2023
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost $ 10,168  
Estimated Fair Value 9,574  
Municipal and Corporate Bonds    
Debt Securities, Available-for-sale [Line Items]    
Amortized Cost 10,168 $ 10,647
Gross Unrealized Gains 3 0
Gross Unrealized Losses 597 702
Estimated Fair Value $ 9,574 $ 9,945
XML 47 R37.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments (Details 2)
$ in Thousands
Nov. 25, 2023
USD ($)
Amortized Cost  
Due within one year $ 2,439
Due after one year through five years 7,729
Total 10,168
Estimated Fair Value  
Due within one year 2,406
Due after one year through five years 7,168
Total $ 9,574
XML 48 R38.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments (Details 3) - USD ($)
$ in Thousands
Nov. 25, 2023
Feb. 25, 2023
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds $ 13,262 $ 8,062
Municipal and corporate bonds 9,574 9,945
Foreign Exchange Forward    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Foreign currency forward/option contract 3 206
Commodity Option [Member]    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Foreign currency forward/option contract 724 1,075
Interest Rate Swap [Member]    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Interest rate swap contract 1,550 1,817
Quoted Prices in Active Markets (Level 1)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Money market funds 13,262 8,062
Other Observable Inputs (Level 2)    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Municipal and corporate bonds 9,574 9,945
Other Observable Inputs (Level 2) | Foreign Exchange Forward    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Foreign currency forward/option contract 3 206
Other Observable Inputs (Level 2) | Commodity Option [Member]    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Foreign currency forward/option contract 724 1,075
Other Observable Inputs (Level 2) | Interest Rate Swap [Member]    
Fair Value, Assets and Liabilities Measured on Recurring and Nonrecurring Basis [Line Items]    
Interest rate swap contract $ 1,550 $ 1,817
XML 49 R39.htm IDEA: XBRL DOCUMENT v3.23.4
Financial Instruments (Details Textual) - Designated as Hedging Instrument
$ in Millions
Nov. 25, 2023
USD ($)
Interest Rate Swap [Member]  
Derivatives, Fair Value [Line Items]  
Derivative, Notional Amount $ 30.0
Foreign Exchange Forward  
Derivatives, Fair Value [Line Items]  
Derivative, Notional Amount 0.8
Commodity Option [Member]  
Derivatives, Fair Value [Line Items]  
Derivative, Notional Amount $ 14.9
XML 50 R40.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets (Details) - USD ($)
$ in Thousands
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Schedule of goodwill attributable to each business segment    
Goodwill, Beginning $ 129,026 $ 130,102
Foreign currency translation 27 (1,076)
Goodwill Reallocation   0
Goodwill, Ending 129,053  
Architectural Framing Systems    
Schedule of goodwill attributable to each business segment    
Goodwill, Beginning 90,137 93,181
Foreign currency translation (28) (996)
Goodwill Reallocation   (2,048)
Goodwill, Ending 90,109  
Architectural Glass    
Schedule of goodwill attributable to each business segment    
Goodwill, Beginning 25,301 25,244
Foreign currency translation 59 57
Goodwill Reallocation   0
Goodwill, Ending 25,360  
Architectural Services    
Schedule of goodwill attributable to each business segment    
Goodwill, Beginning 3,031 1,120
Foreign currency translation (4) (137)
Goodwill Reallocation   2,048
Goodwill, Ending 3,027  
Large-Scale Optical    
Schedule of goodwill attributable to each business segment    
Goodwill, Beginning 10,557 10,557
Foreign currency translation 0 0
Goodwill Reallocation   $ 0
Goodwill, Ending $ 10,557  
XML 51 R41.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets (Details 1) - USD ($)
$ in Thousands
9 Months Ended 12 Months Ended
Nov. 25, 2023
Feb. 25, 2023
Schedule of finite lived identifiable intangible assets    
Gross Carrying Amount $ 125,158 $ 128,899
Accumulated Amortization (87,836) (84,633)
Foreign Currency Translation 10 (3,742)
Net 37,332 40,524
Intangible Assets, Gross (Excluding Goodwill) 152,009 156,028
Intangible Assets Accumulated Amortization (87,836) (84,633)
Intangible Assets Foreign Currency Translation 1 (4,020)
Intangible assets, net 64,174 67,375
Trademarks and Trade Names    
Schedule of finite lived identifiable intangible assets    
Indefinite-lived Intangible Assets (Excluding Goodwill) 26,851 27,129
Indefinite Lived Identifiable Intangible Assets, Foreign Currency Translation Adjustments (9) (278)
Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments 26,842 26,851
Customer relationships    
Schedule of finite lived identifiable intangible assets    
Gross Carrying Amount 86,798 89,495
Accumulated Amortization (52,130) (49,404)
Foreign Currency Translation (15) (2,697)
Net 34,653 37,394
Other intangibles    
Schedule of finite lived identifiable intangible assets    
Gross Carrying Amount 38,360 39,404
Accumulated Amortization (35,706) (35,229)
Foreign Currency Translation 25 (1,045)
Net $ 2,679 $ 3,130
XML 52 R42.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets (Details 2)
$ in Thousands
Nov. 25, 2023
USD ($)
Schedule of estimated future amortization expense for identifiable intangible assets  
Remainder of 2024 $ 1,058
2025 4,240
2026 4,223
2027 4,391
2028 $ 3,936
XML 53 R43.htm IDEA: XBRL DOCUMENT v3.23.4
Goodwill and Other Identifiable Intangible Assets (Details Textual) - USD ($)
$ in Millions
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Goodwill and Other Identifiable Intangible Assets (Textual) [Abstract]    
Amortization expense on identifiable intangible assets $ 3.0 $ 3.1
XML 54 R44.htm IDEA: XBRL DOCUMENT v3.23.4
Debt (Details) - USD ($)
$ in Thousands
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Feb. 25, 2023
Line of Credit Facility [Line Items]      
Maximum borrowing capacity $ 385,000    
Interest payments 7,500 $ 5,300  
Line of Credit Facility, Remaining Borrowing Capacity 285,000    
Revolving credit facility      
Line of Credit Facility [Line Items]      
Outstanding borrowings 85,000   $ 156,000
Industrial Revenue Bonds      
Line of Credit Facility [Line Items]      
Debt 12,000    
Letter of credit      
Line of Credit Facility [Line Items]      
Debt 15,000    
Canada | Revolving credit facility      
Line of Credit Facility [Line Items]      
Maximum borrowing capacity 25,000    
Outstanding borrowings 3,700   $ 1,800
Line of Credit Facility, Remaining Borrowing Capacity $ 21,300    
XML 55 R45.htm IDEA: XBRL DOCUMENT v3.23.4
Commitments and Contingent Liabilities (Details 1) - USD ($)
$ in Thousands
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Guarantees and warranties    
Balance at beginning of period $ 17,893 $ 13,923
Additional accruals 12,743 11,201
Claims paid (7,644) (7,755)
Balance at end of period $ 22,992 $ 17,369
XML 56 R46.htm IDEA: XBRL DOCUMENT v3.23.4
Commitments and Contingent Liabilities (Details 2)
$ in Thousands
9 Months Ended
Nov. 25, 2023
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 57 R47.htm IDEA: XBRL DOCUMENT v3.23.4
Commitments and Contingent Liabilities (Details Textual)
$ in Millions
Nov. 25, 2023
USD ($)
Commitments and Contingencies Disclosure [Abstract]  
Face value of performance bonds $ 1,300.0
Companies Backlog Related to Sales 398.4
Purchase obligations $ 45.0
XML 58 R48.htm IDEA: XBRL DOCUMENT v3.23.4
Share-Based Compensation (Details)
9 Months Ended
Nov. 25, 2023
$ / shares
shares
Restricted Stock [Member]  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Share Grants in Period | shares 195,013
Share Grants in Period, Weighted Average Grant Date Fair Value | $ / shares $ 43.16
Performance Shares  
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]  
Share Grants in Period | shares 48,483
Share Grants in Period, Weighted Average Grant Date Fair Value | $ / shares $ 43.59
XML 59 R49.htm IDEA: XBRL DOCUMENT v3.23.4
Share-Based Compensation (Details Textual) - USD ($)
$ in Thousands
9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Share-based Payment Arrangement, Noncash Expense $ 6,644 $ 5,961
Total unrecognized compensation cost related to nonvested share $ 11,600  
Restricted Stock [Member]    
Share-based Compensation Arrangement by Share-based Payment Award [Line Items]    
Weighted average period, Nonvested 21 months  
Total fair value of shares vested $ 5,800  
XML 60 R50.htm IDEA: XBRL DOCUMENT v3.23.4
Earnings per Share Earnings per Share (Details) - shares
shares in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Earnings Per Share [Abstract]        
Basic earnings per share – weighted average common shares outstanding 21,819 21,870 21,889 22,043
Weighted average effect of nonvested share grants and assumed exercise of stock options 194 408 204 413
Diluted earnings per share – weighted average common shares and potential common shares outstanding 22,013 22,278 22,093 22,456
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) 37 109 56 109
XML 61 R51.htm IDEA: XBRL DOCUMENT v3.23.4
Segment Information Segment Information (Details Textual)
9 Months Ended
Nov. 25, 2023
Reportable_segment
Segment Reporting [Abstract]  
Number of Reportable Segments 4
XML 62 R52.htm IDEA: XBRL DOCUMENT v3.23.4
Segment Information (Details) - USD ($)
$ in Thousands
3 Months Ended 9 Months Ended
Nov. 25, 2023
Nov. 26, 2022
Nov. 25, 2023
Nov. 26, 2022
Sales and operating income data        
Segment net sales $ 339,714 $ 367,847 $ 1,055,102 $ 1,096,591
Segment operating income (loss) 37,647 34,761 111,967 100,049
Intersegment eliminations        
Sales and operating income data        
Segment net sales (11,506) (7,398) (33,962) (28,878)
Architectural Framing Systems        
Sales and operating income data        
Segment operating income (loss) 16,981 22,089 57,986 66,266
Architectural Framing Systems | Operating Segments [Member]        
Sales and operating income data        
Segment net sales 139,585 165,013 462,548 501,172
Architectural Glass        
Sales and operating income data        
Segment operating income (loss) 15,164 7,461 49,119 19,087
Architectural Glass | Operating Segments [Member]        
Sales and operating income data        
Segment net sales 90,964 81,541 282,262 235,158
Architectural Services        
Sales and operating income data        
Segment operating income (loss) 5,288 6,032 8,211 14,449
Architectural Services | Operating Segments [Member]        
Sales and operating income data        
Segment net sales 94,662 102,031 272,144 312,151
Large-Scale Optical        
Sales and operating income data        
Segment operating income (loss) 7,100 7,109 17,288 19,598
Large-Scale Optical | Operating Segments [Member]        
Sales and operating income data        
Segment net sales 26,009 26,660 72,110 76,988
Corporate and other*        
Sales and operating income data        
Segment operating income (loss) $ (6,886) $ (7,930) $ (20,637) $ (19,351)
XML 63 apog-20231125_htm.xml IDEA: XBRL DOCUMENT 0000006845 2023-02-26 2023-11-25 0000006845 2023-12-29 0000006845 2023-11-25 0000006845 2023-02-25 0000006845 2023-08-27 2023-11-25 0000006845 2022-08-28 2022-11-26 0000006845 2022-02-27 2022-11-26 0000006845 2022-02-26 0000006845 2022-11-26 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 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 us-gaap:RetainedEarningsMember 2023-05-28 2023-08-26 0000006845 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 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:RetainedEarningsMember 2023-08-27 2023-11-25 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-08-27 2023-11-25 0000006845 us-gaap:CommonStockMember 2023-08-27 2023-11-25 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-08-27 2023-11-25 0000006845 us-gaap:CommonStockMember 2023-11-25 0000006845 us-gaap:AdditionalPaidInCapitalMember 2023-11-25 0000006845 us-gaap:RetainedEarningsMember 2023-11-25 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2023-11-25 0000006845 us-gaap:CommonStockMember 2022-02-26 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-02-26 0000006845 us-gaap:RetainedEarningsMember 2022-02-26 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-02-26 0000006845 us-gaap:RetainedEarningsMember 2022-02-27 2022-05-28 0000006845 2022-02-27 2022-05-28 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-02-27 2022-05-28 0000006845 us-gaap:CommonStockMember 2022-02-27 2022-05-28 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-02-27 2022-05-28 0000006845 2022-05-28 0000006845 us-gaap:CommonStockMember 2022-05-28 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-05-28 0000006845 us-gaap:RetainedEarningsMember 2022-05-28 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-05-28 0000006845 us-gaap:RetainedEarningsMember 2022-05-29 2022-08-27 0000006845 2022-05-29 2022-08-27 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-05-29 2022-08-27 0000006845 us-gaap:CommonStockMember 2022-05-29 2022-08-27 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-05-29 2022-08-27 0000006845 2022-08-27 0000006845 us-gaap:CommonStockMember 2022-08-27 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-08-27 0000006845 us-gaap:RetainedEarningsMember 2022-08-27 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-08-27 0000006845 us-gaap:RetainedEarningsMember 2022-08-28 2022-11-26 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-08-28 2022-11-26 0000006845 us-gaap:CommonStockMember 2022-08-28 2022-11-26 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-08-28 2022-11-26 0000006845 us-gaap:CommonStockMember 2022-11-26 0000006845 us-gaap:AdditionalPaidInCapitalMember 2022-11-26 0000006845 us-gaap:RetainedEarningsMember 2022-11-26 0000006845 us-gaap:AccumulatedOtherComprehensiveIncomeMember 2022-11-26 0000006845 us-gaap:TransferredAtPointInTimeMember 2023-08-27 2023-11-25 0000006845 us-gaap:TransferredAtPointInTimeMember 2022-08-28 2022-11-26 0000006845 us-gaap:TransferredAtPointInTimeMember 2023-02-26 2023-11-25 0000006845 us-gaap:TransferredAtPointInTimeMember 2022-02-27 2022-11-26 0000006845 us-gaap:TransferredOverTimeMember 2023-08-27 2023-11-25 0000006845 us-gaap:TransferredOverTimeMember 2022-08-28 2022-11-26 0000006845 us-gaap:TransferredOverTimeMember 2023-02-26 2023-11-25 0000006845 us-gaap:TransferredOverTimeMember 2022-02-27 2022-11-26 0000006845 us-gaap:TradeAccountsReceivableMember 2023-11-25 0000006845 us-gaap:TradeAccountsReceivableMember 2023-02-25 0000006845 apog:AccountsReceivableConstructionContractsMember 2023-11-25 0000006845 apog:AccountsReceivableConstructionContractsMember 2023-02-25 0000006845 2023-11-26 2023-11-25 0000006845 2024-11-26 2023-11-25 0000006845 2025-11-26 2023-11-25 0000006845 apog:MunicipalandCorporateBondsMember 2023-11-25 0000006845 apog:MunicipalandCorporateBondsMember 2023-02-25 0000006845 us-gaap:InterestRateSwapMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-11-25 0000006845 us-gaap:CommodityOptionMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-11-25 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:DesignatedAsHedgingInstrumentMember 2023-11-25 0000006845 us-gaap:FairValueInputsLevel1Member 2023-11-25 0000006845 us-gaap:FairValueInputsLevel2Member 2023-11-25 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2023-11-25 0000006845 us-gaap:ForeignExchangeForwardMember 2023-11-25 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2023-11-25 0000006845 us-gaap:InterestRateSwapMember 2023-11-25 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel2Member 2023-11-25 0000006845 us-gaap:CommodityOptionMember 2023-11-25 0000006845 us-gaap:FairValueInputsLevel1Member 2023-02-25 0000006845 us-gaap:FairValueInputsLevel2Member 2023-02-25 0000006845 us-gaap:InterestRateSwapMember us-gaap:FairValueInputsLevel2Member 2023-02-25 0000006845 us-gaap:InterestRateSwapMember 2023-02-25 0000006845 us-gaap:ForeignExchangeForwardMember us-gaap:FairValueInputsLevel2Member 2023-02-25 0000006845 us-gaap:ForeignExchangeForwardMember 2023-02-25 0000006845 us-gaap:CommodityOptionMember us-gaap:FairValueInputsLevel2Member 2023-02-25 0000006845 us-gaap:CommodityOptionMember 2023-02-25 0000006845 apog:ArchitecturalFramingSegmentMember 2022-02-26 0000006845 apog:ArchitecturalGlassMember 2022-02-26 0000006845 apog:ArchitecturalServicesSegmentMember 2022-02-26 0000006845 apog:LargeScaleOpticalMember 2022-02-26 0000006845 apog:ArchitecturalFramingSegmentMember 2022-02-27 2022-11-26 0000006845 apog:ArchitecturalGlassMember 2022-02-27 2022-11-26 0000006845 apog:ArchitecturalServicesSegmentMember 2022-02-27 2022-11-26 0000006845 apog:LargeScaleOpticalMember 2022-02-27 2022-11-26 0000006845 apog:ArchitecturalFramingSegmentMember 2023-02-25 0000006845 apog:ArchitecturalGlassMember 2023-02-25 0000006845 apog:ArchitecturalServicesSegmentMember 2023-02-25 0000006845 apog:LargeScaleOpticalMember 2023-02-25 0000006845 apog:ArchitecturalFramingSegmentMember 2023-02-26 2023-11-25 0000006845 apog:ArchitecturalGlassMember 2023-02-26 2023-11-25 0000006845 apog:ArchitecturalServicesSegmentMember 2023-02-26 2023-11-25 0000006845 apog:LargeScaleOpticalMember 2023-02-26 2023-11-25 0000006845 apog:ArchitecturalFramingSegmentMember 2023-11-25 0000006845 apog:ArchitecturalGlassMember 2023-11-25 0000006845 apog:ArchitecturalServicesSegmentMember 2023-11-25 0000006845 apog:LargeScaleOpticalMember 2023-11-25 0000006845 us-gaap:CustomerRelationshipsMember 2023-11-25 0000006845 us-gaap:CustomerRelationshipsMember 2023-02-26 2023-11-25 0000006845 us-gaap:TrademarksMember 2023-11-25 0000006845 us-gaap:TrademarksMember 2023-02-26 2023-11-25 0000006845 us-gaap:TrademarksAndTradeNamesMember 2023-11-25 0000006845 us-gaap:TrademarksAndTradeNamesMember 2023-02-26 2023-11-25 0000006845 us-gaap:CustomerRelationshipsMember 2023-02-25 0000006845 us-gaap:CustomerRelationshipsMember 2022-02-27 2023-02-25 0000006845 us-gaap:TrademarksMember 2023-02-25 0000006845 us-gaap:TrademarksMember 2022-02-27 2023-02-25 0000006845 2022-02-27 2023-02-25 0000006845 us-gaap:TrademarksAndTradeNamesMember 2023-02-25 0000006845 us-gaap:TrademarksAndTradeNamesMember 2022-02-27 2023-02-25 0000006845 us-gaap:RevolvingCreditFacilityMember 2023-11-25 0000006845 us-gaap:RevolvingCreditFacilityMember 2023-02-25 0000006845 country:CA us-gaap:RevolvingCreditFacilityMember 2023-11-25 0000006845 country:CA us-gaap:RevolvingCreditFacilityMember 2023-02-25 0000006845 us-gaap:LetterOfCreditMember 2023-11-25 0000006845 apog:RecoveryZoneFacilityBondsMember 2023-11-25 0000006845 apog:August2025Member 2023-02-26 2023-11-25 0000006845 apog:August2025Member 2023-11-25 0000006845 apog:September2025Member 2023-02-26 2023-11-25 0000006845 apog:September2025Member 2023-11-25 0000006845 us-gaap:RestrictedStockMember 2023-02-26 2023-11-25 0000006845 us-gaap:PerformanceSharesMember 2023-02-26 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2023-08-27 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2022-08-28 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2023-02-26 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalFramingSegmentMember 2022-02-27 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2023-08-27 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2022-08-28 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2023-02-26 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalGlassMember 2022-02-27 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2023-08-27 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2022-08-28 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2023-02-26 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:ArchitecturalServicesSegmentMember 2022-02-27 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2023-08-27 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2022-08-28 2022-11-26 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2023-02-26 2023-11-25 0000006845 us-gaap:OperatingSegmentsMember apog:LargeScaleOpticalMember 2022-02-27 2022-11-26 0000006845 us-gaap:IntersegmentEliminationMember 2023-08-27 2023-11-25 0000006845 us-gaap:IntersegmentEliminationMember 2022-08-28 2022-11-26 0000006845 us-gaap:IntersegmentEliminationMember 2023-02-26 2023-11-25 0000006845 us-gaap:IntersegmentEliminationMember 2022-02-27 2022-11-26 0000006845 apog:ArchitecturalFramingSegmentMember 2023-08-27 2023-11-25 0000006845 apog:ArchitecturalFramingSegmentMember 2022-08-28 2022-11-26 0000006845 apog:ArchitecturalGlassMember 2023-08-27 2023-11-25 0000006845 apog:ArchitecturalGlassMember 2022-08-28 2022-11-26 0000006845 apog:ArchitecturalServicesSegmentMember 2023-08-27 2023-11-25 0000006845 apog:ArchitecturalServicesSegmentMember 2022-08-28 2022-11-26 0000006845 apog:LargeScaleOpticalMember 2023-08-27 2023-11-25 0000006845 apog:LargeScaleOpticalMember 2022-08-28 2022-11-26 0000006845 us-gaap:CorporateAndOtherMember 2023-08-27 2023-11-25 0000006845 us-gaap:CorporateAndOtherMember 2022-08-28 2022-11-26 0000006845 us-gaap:CorporateAndOtherMember 2023-02-26 2023-11-25 0000006845 us-gaap:CorporateAndOtherMember 2022-02-27 2022-11-26 shares iso4217:USD iso4217:USD shares apog:Reportable_segment 0000006845 false 2024 Q3 --03-02 10-Q true 2023-11-25 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 22085098 23407000 19924000 0 1549000 198249000 197267000 70267000 78441000 48146000 59403000 32390000 26517000 372459000 383101000 454659000 431710000 246206000 248867000 38849000 41354000 129053000 129026000 64174000 67375000 44114000 45642000 894855000 915365000 83107000 86549000 42768000 51651000 35770000 28011000 12358000 11806000 62572000 64532000 236575000 242549000 100666000 169837000 29547000 33072000 31830000 29316000 40506000 44183000 0.33 0.33 50000000 50000000 22085098 22085098 22224299 22224299 7362000 7408000 149557000 146816000 329936000 273740000 -31124000 -31556000 455731000 396408000 894855000 915365000 339714000 367847000 1055102000 1096591000 249409000 281239000 776440000 839430000 90305000 86608000 278662000 257161000 52658000 51847000 166695000 157112000 37647000 34761000 111967000 100049000 1454000 2590000 5720000 5494000 -890000 -552000 3722000 -2035000 35303000 31619000 109969000 92520000 8329000 7854000 26092000 8635000 26974000 23765000 83877000 83885000 1.24 1.09 3.83 3.81 1.23 1.07 3.80 3.74 21819000 21870000 21889000 22043000 22013000 22278000 22093000 22456000 26974000 23765000 83877000 83885000 -2000 -24000 23000 -127000 -7000 -88000 86000 -470000 56000 277000 1000 -1192000 186000 905000 6000 -3911000 -604000 -1295000 340000 -2340000 -425000 -478000 432000 -6721000 26549000 23287000 84309000 77164000 83877000 83885000 31185000 31925000 6644000 5961000 1296000 2341000 50000 1484000 0 18390000 4687000 19523000 8742000 8924000 -10000 -4700000 846000 55791000 -8256000 5822000 -11194000 8314000 -1902000 -19780000 -7015000 7281000 7635000 24702000 -7587000 -14391000 -9214000 -9168000 -1714000 2724000 129252000 51112000 26956000 18119000 247000 5212000 969000 0 1370000 923000 -26308000 -11984000 195851000 430879000 0 151000000 265000000 239000000 0 790000 11821000 74312000 15690000 14415000 -3781000 -2959000 -100441000 -51597000 2503000 -12469000 -569000 350000 21473000 37583000 23407000 25464000 1231000 1557000 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 26974000 26974000 -424000 -424000 15000 6000 5000 1000 2161000 2161000 2000 1000 12000 64000 77000 5222000 5222000 22085000 7362000 149557000 329936000 -31124000 455731000 23701000 7901000 149713000 254825000 -26240000 386199000 22731000 22731000 -2860000 -2860000 100000 33000 23000 56000 1597000 1597000 1571000 524000 10350000 63438000 74312000 30000 10000 198000 1120000 1328000 4793000 4793000 22200000 7400000 140785000 208205000 -29100000 327290000 37389000 37389000 -3383000 -3383000 14000 5000 61000 56000 1797000 1797000 36000 12000 954000 942000 13000 4000 114000 540000 658000 4809000 4809000 22209000 7403000 141575000 240245000 -32483000 356740000 23765000 23765000 -478000 -478000 9000 3000 250000 196000 57000 2567000 2567000 4000 1000 34000 165000 200000 4813000 4813000 22214000 7405000 144358000 258836000 -32961000 377638000 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. The information included in this Form 10-Q should be read in conjunction with the Company’s Form 10-K for the year ended February 25, 2023. 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 nine-month periods ended November 25, 2023 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%">Reclassifications</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%">Certain reclassifications of amounts previously reported have been made to the accompanying consolidated balance sheets, consolidated statements of cash flows and notes to consolidated financial statements to conform to current year presentation of contract assets and liabilities. These reclassifications had no impact on reported cash flows or total assets and liabilities.</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%">Adoption of 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 the first quarter, we adopted the guidance in ASU 2022-04, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Liabilities – Supplier Finance Programs, Disclosure of Supplier Finance Program Obligations. </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The guidance requires that entities that use supplier finance programs disclose information about the nature and potential magnitude of the programs, activity during the period, and changes from period to period. Beginning in the first quarter, we implemented a supplier financing arrangement with U.S. Bank that enables our suppliers, at their sole discretion, to sell the Company's receivables (i.e., our payment obligations to the suppliers) to U.S. Bank on a non-recourse basis in order to be paid earlier than our payment terms provide. Our 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 a supplier’s decision to participate in the supplier financing program, and we do not provide any guarantees in connection with it. As of November 25, 2023, $7.8 million of obligations remained outstanding that we have confirmed as valid to the administrators of our program with U.S. Bank. These balances are reflected in accounts payable in the consolidated balance sheets and are reflected in net cash provided (used by) operating activities in our consolidated statements of cash flows when settled.</span></div> 7800000 <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 11 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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">144,910 </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%">168,593 </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%">449,805 </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%">504,450 </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</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%">194,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,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%">605,297 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">592,141 </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 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%">339,714 </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%">367,847 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,055,102 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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,096,591 </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: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 forecast 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%">November 25, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">February 25, 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%">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%">113,016 </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%">140,732 </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%">88,007 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58,331 </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%">201,023 </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%">199,063 </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%">2,774 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,796 </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%">198,249 </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%">197,267 </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 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 nine-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%">November 25, 2023</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%">1,796 </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%">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%">1,256 </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%">(281)</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%">Foreign currency effects</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="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%">2,774 </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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">191 </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,473 </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%">25,147 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,630 </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%">730 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,640 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,634 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,586 </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 November 25, 2023 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%">November 25, 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><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%">456,880 </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%">315,667 </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%">75,170 </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%">847,717 </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 11 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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">144,910 </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%">168,593 </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%">449,805 </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%">504,450 </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</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%">194,804 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">199,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%">605,297 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">592,141 </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 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%">339,714 </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%">367,847 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,055,102 </span></td><td style="background-color:#cceeff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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,096,591 </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> 144910000 168593000 449805000 504450000 194804000 199254000 605297000 592141000 339714000 367847000 1055102000 1096591000 <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%">November 25, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">February 25, 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%">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%">113,016 </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%">140,732 </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%">88,007 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">58,331 </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%">201,023 </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%">199,063 </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%">2,774 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,796 </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%">198,249 </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%">197,267 </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> 113016000 140732000 88007000 58331000 201023000 199063000 2774000 1796000 198249000 197267000 <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 nine-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%">November 25, 2023</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%">1,796 </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%">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%">1,256 </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%">(281)</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%">Foreign currency effects</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="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%">2,774 </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> 1796000 1256000 281000 3000 2774000 191000 3473000 25147000 36630000 730000 4640000 5634000 9586000 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%">November 25, 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><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%">456,880 </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%">315,667 </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%">75,170 </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%">847,717 </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 456880000 P2Y 315667000 P2Y 75170000 847717000 <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: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%">November 25, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">February 25, 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%">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%">34,535 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,869 </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%">17,256 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,024 </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%">18,476 </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,548 </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</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%">70,267 </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%">78,441 </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: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%">November 25, 2023</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">February 25, 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%">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%">34,535 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">36,869 </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%">17,256 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">18,024 </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%">18,476 </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,548 </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</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%">70,267 </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%">78,441 </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> 34535000 36869000 17256000 18024000 18476000 23548000 70267000 78441000 <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%">November 25, 2023</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%">10,168 </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 </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%">597 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,574 </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%">February 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,647 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">702 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,945 </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 November 25, 2023, 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%">2,439 </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,406 </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%">7,729 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,168 </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%">10,168 </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%">9,574 </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 use interest rate swaps, foreign exchange contracts, commodity swaps 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 our floating-rate revolving credit facility. As of November 25, 2023, 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><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 November 25, 2023, we held aluminum fixed/floating swaps and foreign exchange contracts with U.S. dollar notional values of $14.9 million and $0.8 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%">These derivative instruments are recorded within our consolidated balance sheets within other current assets and liabilities. Gains or losses associated with these instruments are recorded as a component of accumulated other comprehensive income. </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%">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%">November 25, 2023</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%">13,262 </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%">13,262 </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%">9,574 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,574 </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%">3 </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 </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%">1,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight: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%">724 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">724 </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%">February 25, 2023</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%">8,062 </span></td><td style="background-color:#ffffff;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%">8,062 </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%">9,945 </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%">9,945 </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%">1,817 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,817 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight: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="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 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%">206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </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%">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%">1,075 </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,075 </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> e hold the following available-for-sale marketable securities, made up of fixed-maturity investments:<span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:9pt;font-weight:400;line-height:120%"> </span><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%">November 25, 2023</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%">10,168 </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 </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%">597 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,574 </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%">February 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,647 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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%">702 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,945 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 10168000 3000 597000 9574000 10647000 0 702000 9945000 <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 November 25, 2023, 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%">2,439 </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,406 </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%">7,729 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,168 </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%">10,168 </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%">9,574 </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> 2439000 2406000 7729000 7168000 10168000 9574000 30000000 14900000 800000 <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%">November 25, 2023</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%">13,262 </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%">13,262 </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%">9,574 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">9,574 </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%">3 </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 </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%">1,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,550 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight: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%">724 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">724 </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%">February 25, 2023</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%">8,062 </span></td><td style="background-color:#ffffff;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%">8,062 </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%">9,945 </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%">9,945 </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%">1,817 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,817 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight: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="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 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%">206 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">206 </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%">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%">1,075 </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,075 </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> 13262000 13262000 9574000 9574000 3000 3000 1550000 1550000 724000 724000 8062000 8062000 9945000 9945000 1817000 1817000 206000 206000 1075000 1075000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.5pt">Goodwill and Other Intangible Assets</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%">Goodwill</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">Goodwill represents the excess of the cost over the value of net tangible and identified intangible assets of acquired businesses. We evaluate goodwill for impairment annually as of the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that the carrying value of goodwill may not be recoverable. </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%">At the beginning of the first quarter of fiscal 2023, we began management of the Sotawall and Harmon businesses under the Architectural Services segment in order to create a single, unified offering for larger custom curtainwall projects, which resulted in the combination of the Sotawall and Harmon reporting units into a single reporting unit. We evaluated goodwill on a qualitative basis prior to and subsequent to this change for these reporting units and concluded that no adjustment to the carrying value of goodwill was necessary. Concurrent with the move of Sotawall from the Architectural Framing Systems segment to the Architectural Services segment effective at the start of our first quarter of fiscal 2023, goodwill was reallocated to the affected reporting units within each segment, using a relative fair value approach as outlined in ASC 350, </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:112%">Intangibles - Goodwill and Other</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">. </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 the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative goodwill impairment evaluation was performed. </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 following table presents the carrying amount of goodwill attributable to each reporting segment including the amount of goodwill that was reallocated from the Architectural Framing Systems segment to the Architectural Services segment using the relative fair value approach during the first quarter of fiscal 2023: </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:30.186%"></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.911%"></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.911%"></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.911%"></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.911%"></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.920%"></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%">Architectural Framing Systems</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%">Architectural Glass</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%">Architectural Services</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Large-Scale<br/>Optical</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</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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at February 26, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,181 </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%">25,244 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </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%">130,102 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><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"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation among reporting 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:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,048)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,048 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</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%">(996)</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%">57 </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%">(137)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,076)</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:700;line-height:100%">Balance at February 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,137 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,301 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,031 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,026 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</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%">(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%">59 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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:700;line-height:100%">Balance at November 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,109 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,360 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,027 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,053 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="33" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> Represents the reallocation of goodwill as a result of transitioning Sotawall from the Architectural Framing Systems segment to the Architectural Services segment as of the start of the first quarter of fiscal 2023. </span></div></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:700;line-height:120%">Other intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:115%">Indefinite-lived intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">We have intangible assets for certain acquired trade names and trademarks which are determined to have indefinite useful lives. We test indefinite-lived intangible assets for impairment annually at the same measurement date as goodwill, the first day of our fiscal fourth quarter, or more frequently if events or changes in circumstances indicate that it is more likely than not that the asset is impaired. During the third quarter of fiscal 2024, we did not identify any qualitative indicators of impairment at any of our reporting units, and therefore, no interim quantitative intangible impairment evaluation was performed. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-style:italic;font-weight:400;line-height:120%">Definite-lived intangible assets</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Long-lived assets or asset groups, including intangible assets subject to amortization and property and equipment, are reviewed for impairment whenever events or changes in circumstances indicate that the carrying value of those assets may not be recoverable. We use undiscounted cash flows to determine whether impairment exists and measure any impairment loss using discounted cash flows to determine the fair value of long-lived assets. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The gross carrying amount of other intangible assets and related accumulated amortization was:</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:47.438%"></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.034%"></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.034%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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.034%"></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.040%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom: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: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-bottom: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%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Accumulated<br/>Amortization</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Foreign<br/>Currency<br/>Translation</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Net</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:700;line-height:100%">November 25, 2023</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="display:none"></td><td colspan="3" style="display:none"></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%">Definite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">86,798 </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%">(52,130)</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><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%">(15)</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%">34,653 </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 7.75pt;text-align: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 intangibles</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%">38,360 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,706)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,679 </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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125,158 </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%">(87,836)</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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </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%">37,332 </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:700;line-height:100%">Indefinite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.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%">Trademarks</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%">26,851 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">(9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,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 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%">Total intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">152,009 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">(87,836)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">64,174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#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:700;line-height:100%">February 25, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;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%">Definite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">89,495 </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%">(49,404)</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><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%">(2,697)</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%">37,394 </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 7.75pt;text-align: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 intangibles</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%">39,404 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,229)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">3,130 </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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,899 </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%">(84,633)</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><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%">(3,742)</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%">40,524 </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:700;line-height:100%">Indefinite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.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%">Trademarks</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,129 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </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><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%">(278)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,851 </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%">Total intangible assets</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%">156,028 </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%">(84,633)</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="display:none"></td><td colspan="3" style="display:none"></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%">(4,020)</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%">67,375 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000000;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">Amortization expense on definite-lived intangible assets was $3.0 million and $3.1 million for the nine-month periods ended November 25, 2023 and November 26, 2022, respectively. Amortization expense of other identifiable intangible assets is included in selling, general and administrative expenses. At November 25, 2023, the estimated future amortization expense for definite-lived intangible assets was:</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:27.262%"></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.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.504%"></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%">Remainder of 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%">2025</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%">2026</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%">2027</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%">2028</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%">Estimated amortization expense</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,058 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,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%">4,223 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </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,936 </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></table></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:30.186%"></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.911%"></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.911%"></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.911%"></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.911%"></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.920%"></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%">Architectural Framing Systems</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%">Architectural Glass</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%">Architectural Services</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">Large-Scale<br/>Optical</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</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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:100%">Balance at February 26, 2022</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">93,181 </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%">25,244 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,120 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </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%">130,102 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><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"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Reallocation among reporting 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:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,048)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">2,048 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</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%">(996)</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%">57 </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%">(137)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(1,076)</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:700;line-height:100%">Balance at February 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,137 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,301 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,031 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,026 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Foreign currency translation</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%">(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%">59 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(4)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27 </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:700;line-height:100%">Balance at November 25, 2023</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">90,109 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">25,360 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">3,027 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10,557 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">129,053 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr style="height:6pt"><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:3pt double #000000;padding:0 1pt"></td></tr><tr><td colspan="33" style="padding:2px 1pt;text-align:left;vertical-align:top"><div><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:5.2pt;font-weight:400;line-height:100%;position:relative;top:-2.8pt;vertical-align:baseline">(1)</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:400;line-height:100%"> Represents the reallocation of goodwill as a result of transitioning Sotawall from the Architectural Framing Systems segment to the Architectural Services segment as of the start of the first quarter of fiscal 2023. </span></div></td></tr></table></div> 93181000 25244000 1120000 10557000 130102000 -2048000 0 2048000 0 0 996000 -57000 137000 0 1076000 90137000 25301000 3031000 10557000 129026000 28000 -59000 4000 0 -27000 90109000 25360000 3027000 10557000 129053000 <div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:115%">The gross carrying amount of other intangible assets and related accumulated amortization was:</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:47.438%"></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.034%"></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.034%"></td><td style="width:0.1%"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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.034%"></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.040%"></td><td style="width:0.1%"></td></tr><tr><td colspan="3" style="border-bottom: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: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-bottom: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%">Gross<br/>Carrying<br/>Amount</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Accumulated<br/>Amortization</span></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Foreign<br/>Currency<br/>Translation</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-bottom: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%">Net</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:700;line-height:100%">November 25, 2023</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="display:none"></td><td colspan="3" style="display:none"></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%">Definite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">86,798 </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%">(52,130)</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><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%">(15)</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%">34,653 </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 7.75pt;text-align: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 intangibles</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%">38,360 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,706)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,679 </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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">125,158 </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%">(87,836)</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><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">10 </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%">37,332 </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:700;line-height:100%">Indefinite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.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%">Trademarks</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%">26,851 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></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%">(9)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,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 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%">Total intangible assets</span></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">152,009 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">(87,836)</span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td style="background-color:#ffffff;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-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%">64,174 </span></td><td style="background-color:#ffffff;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#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:700;line-height:100%">February 25, 2023</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="3" style="background-color:#cceeff;border-top:3pt double #000;padding:0 1pt"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;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%">Definite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.75pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">Customer relationships</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td 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%">89,495 </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%">(49,404)</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><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%">(2,697)</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%">37,394 </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 7.75pt;text-align: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 intangibles</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%">39,404 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,229)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,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%">3,130 </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%">Total</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">128,899 </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%">(84,633)</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><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%">(3,742)</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%">40,524 </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:700;line-height:100%">Indefinite-lived intangible 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="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="3" style="background-color:#ffffff;padding: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 7.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%">Trademarks</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">27,129 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">— </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><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%">(278)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,851 </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%">Total intangible assets</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%">156,028 </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%">(84,633)</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="display:none"></td><td colspan="3" style="display:none"></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%">(4,020)</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%">67,375 </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> 86798000 52130000 -15000 34653000 38360000 35706000 25000 2679000 125158000 87836000 10000 37332000 26851000 -9000 26842000 152009000 87836000 1000 64174000 89495000 49404000 -2697000 37394000 39404000 35229000 -1045000 3130000 128899000 84633000 -3742000 40524000 27129000 -278000 26851000 156028000 84633000 -4020000 67375000 3000000 3100000 At November 25, 2023, the estimated future amortization expense for definite-lived intangible assets was:<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:27.262%"></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.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.504%"></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%">Remainder of 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%">2025</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%">2026</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%">2027</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%">2028</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%">Estimated amortization expense</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,058 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,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%">4,223 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">4,391 </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,936 </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></table></div> 1058000 4240000 4223000 4391000 3936000 <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%">As of November 25, 2023, we had a committed revolving credit facility with Wells Fargo Bank, N.A. as administrative agent, and other lenders (U.S. credit facility) with maximum borrowings of up to $385 million and a maturity date of August 5, 2027. Outstanding borrowings under the revolving credit facility were $85.0 million and $156.0 million as of November 25, 2023 and February 25, 2023, 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%">We also maintain two Canadian committed, revolving credit facilities with the Bank of Montreal totaling $25.0 million USD (Canadian facilities). The Canadian facilities expire annually in February, but can be renewed each year solely at our discretion until August 2027. Therefore, we have classified all outstanding amounts under these facilities as long-term debt within our consolidated balance sheets. At November 25, 2023 and February 25, 2023, outstanding borrowings under these Canadian facilities were $3.7 million and $1.8 million, 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:112%">Our revolving credit facilities contain two maintenance financial covenants that require us to stay below a maximum debt-to-EBITDA ratio of 3.25 and maintain a minimum ratio of EBITDA-to-interest expense of 3.00. Both ratios are computed quarterly, with EBITDA calculated on a rolling four-quarter basis. At November 25, 2023, we were in compliance with both financial covenants. </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 revolving credit facilities also contain 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 debt-to-EBITDA ratio to 3.75 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 facility, and at least two fiscal quarters must separate qualifying acquisitions. </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%">Borrowings under the credit facilities bear floating interest at either the Base Rate or Term SOFR, plus a margin based on the Leverage Ratio (as defined in the Credit Agreements). For Base Rate borrowings, the margin ranges from 0.125% to 0.75%. For Term SOFR borrowings, the margin ranges from 1.125% to 1.75% and an incremental Term SOFR adjustment of 0.10%.</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 U.S. credit facility also contains an "accordion" provision. Under this provision, we can request that the facility be increased by as much as $200.0 million. Any Lender may elect or decline to participate in the requested increase at the Lender’s 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 November 25, 2023, we had a total of $15.0 million of ongoing letters of credit related to industrial revenue bonds, construction contracts and insurance collateral that expire in fiscal year 2025 and reduce borrowing capacity under the revolving credit facility. As of November 25, 2023, the amount available for revolving borrowings was $285.0 million and $21.3 million under the U.S. credit facility and Canadian facilities, 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%">At November 25, 2023, 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:112%">The fair value of our U.S. credit facility, Canadian credit facilities and industrial revenue bonds approximated carrying value at November 25, 2023, 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"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">Interest payments under the U.S. and Canadian credit facilities were $7.5 million and $5.3 million for the nine months ended November 25, 2023 and November 26, 2022, respectively.</span></div> 385000000 85000000 156000000 25000000 3700000 1800000 15000000 285000000 21300000 12000000 7500000 5300000 <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 November 25, 2023, $1.3 billion of these types of bonds were outstanding, of which $398.4 million is in our backlog. These bonds do not have stated expiration dates. 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 the following: 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: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="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="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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">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%">17,893 </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%">13,923 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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%">Additional accruals</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%">12,743 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,201 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Claims paid</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,644)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,755)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">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%">22,992 </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%">17,369 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">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 businesses. We manage the risk of these exposures through contract negotiations, proactive project management and insurance coverages. </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 November 25, 2023, we had $15.0 million of ongoing letters of credit, all of which have been issued under our committed revolving credit facility, as discussed in Note 6. </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 $45.0 million as of November 25, 2023.</span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight: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. Variable-interest entities, which have been included within our consolidated financial statements, have been created as a result of the structure of these transactions, as investors in the programs do not have a material interest in their underlying economics. </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%">During the second quarter of fiscal 2024, one NMTC transaction was settled as expected and as a result, a $4.7 million benefit was recorded in other (income) expense, net.</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;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;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> 1300000000 398400000 <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.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="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="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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">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%">17,893 </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%">13,923 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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%">Additional accruals</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%">12,743 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,201 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td><td colspan="3" style="display:none"></td></tr><tr><td colspan="3" style="background-color:#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%">Claims paid</span></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,644)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,755)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#ffffff;padding:2px 1pt;text-align:left;vertical-align:top"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">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%">22,992 </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%">17,369 </span></td><td style="background-color:#ffffff;border-bottom:3pt double #000;border-top:1pt solid #000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 17893000 13923000 12743000 11201000 7644000 7755000 22992000 17369000 15000000 45000000 6052000 1604000 4448000 3198000 1031000 2167000 9250000 2635000 6615000 <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 Global Select</span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:12pt;font-weight:400;line-height:112%"> </span><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:112%">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. Refer to our Form 10-K for further information on our share-based compensation plans.</span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">The table below sets forth the number of stock-based compensation awards granted during the nine-months ended November 25, 2023, 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 Exercise Price</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%">195,013 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43.16 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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 ("PSUs")</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%">48,483 </span></td><td style="background-color:#ffffff;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%">43.59 </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 two- or three-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 achieving a defined performance goal of return on invested capital and being employed at the end of the performance period.</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 $6.6 million for the nine-month period ended November 25, 2023, and $6.0 million for the nine-month period ended November 26, 2022. </span></div><div style="text-align:justify"><span><br/></span></div><div style="text-align:justify"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">At November 25, 2023, there was $11.6 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 21 months. The total fair value of shares vested during the nine months ended November 25, 2023 was $5.8 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 nine-months ended November 25, 2023, 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 Exercise Price</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%">195,013 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">43.16 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></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 ("PSUs")</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%">48,483 </span></td><td style="background-color:#ffffff;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%">43.59 </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 two- or three-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 achieving a defined performance goal of return on invested capital and being employed at the end of the performance period.</span></div></td></tr></table></div> 195013 43.16 48483 43.59 6600000 6000000 11600000 P21M 5800000 <span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:700;line-height:120%;padding-left:10.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:112%">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 no longer subject to U.S. federal tax examinations for years prior to fiscal 2020, 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 year 2019, and there is very limited examination activity of our income tax returns in U.S. state jurisdictions or international jurisdictions.</span></div>The total liability for unrecognized tax benefits was $5.3 million at November 25, 2023 and February 25, 2023, respectively. Penalties and interest related to unrecognized tax benefits are recorded in income tax expense. 5300000 5300000 <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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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,819 </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,870 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><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,889 </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,043 </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%">194 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">408 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">413 </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%">22,013 </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,278 </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,093 </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,456 </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%">37 </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%">109 </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%">56 </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%">109 </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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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,819 </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,870 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><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,889 </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,043 </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%">194 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">408 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">204 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">413 </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%">22,013 </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,278 </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,093 </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,456 </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%">37 </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%">109 </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%">56 </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%">109 </span></td><td style="border-top:3pt double #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr></table></div> 21819000 21870000 21889000 22043000 194000 408000 204000 413000 22013000 22278000 22093000 22456000 37000 109000 56000 109000 <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%"> segment 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%"> segment coats and fabricates, high-performance glass used in custom window and wall systems on commercial 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%"> segment 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%"> segment manufactures high-performance glass and acrylic products for custom framing, museum, and technical glass markets. </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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">139,585 </span></td><td style="background-color:#ffffff;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%">165,013 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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%">462,548 </span></td><td style="background-color:#ffffff;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%">501,172 </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,964 </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%">81,541 </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%">282,262 </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%">235,158 </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%">94,662 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272,144 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,151 </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%">26,009 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,660 </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%">72,110 </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%">76,988 </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%">(11,506)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,398)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,878)</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%">339,714 </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%">367,847 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,055,102 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,096,591 </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%">16,981 </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%">22,089 </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%">57,986 </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%">66,266 </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%">15,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,461 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,119 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,087 </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%">5,288 </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,032 </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%">8,211 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,449 </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%">7,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%">7,109 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,288 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,598 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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,886)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,930)</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%">(20,637)</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%">(19,351)</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%">37,647 </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%">34,761 </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%">111,967 </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%">100,049 </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 style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:120%">*Corporate and other includes certain corporate expenses that are not allocated at a segment level.</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%">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%">Nine 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%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</span></td><td colspan="3" style="padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 25, 2023</span></td><td colspan="3" style="border-top:1pt solid #000000;padding:0 1pt"></td><td colspan="3" style="border-top:1pt solid #000000;padding:2px 1pt;text-align:center;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:8pt;font-weight:700;line-height:100%">November 26, 2022</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%">139,585 </span></td><td style="background-color:#ffffff;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%">165,013 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td 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%">462,548 </span></td><td style="background-color:#ffffff;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%">501,172 </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,964 </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%">81,541 </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%">282,262 </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%">235,158 </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%">94,662 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">102,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 colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">272,144 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">312,151 </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%">26,009 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">26,660 </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%">72,110 </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%">76,988 </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%">(11,506)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,398)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,962)</span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(28,878)</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%">339,714 </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%">367,847 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,055,102 </span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0 2px 1pt;text-align:left;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">$</span></td><td style="background-color:#cceeff;border-top:1pt solid #000000;padding:2px 0;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">1,096,591 </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%">16,981 </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%">22,089 </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%">57,986 </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%">66,266 </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%">15,164 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,461 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">49,119 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,087 </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%">5,288 </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,032 </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%">8,211 </span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">14,449 </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%">7,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%">7,109 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,288 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#ffffff;padding:0 1pt"></td><td colspan="2" style="background-color:#ffffff;padding:2px 0 2px 1pt;text-align: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,598 </span></td><td style="background-color:#ffffff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td></tr><tr><td colspan="3" style="background-color:#cceeff;padding:2px 1pt 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,886)</span></td><td style="background-color:#cceeff;padding:2px 1pt 2px 0;text-align:right;vertical-align:bottom"></td><td colspan="3" style="background-color:#cceeff;padding:0 1pt"></td><td colspan="2" style="background-color:#cceeff;padding:2px 0 2px 1pt;text-align:right;vertical-align:bottom"><span style="color:#000000;font-family:'Times New Roman',sans-serif;font-size:10pt;font-weight:400;line-height:100%">(7,930)</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%">(20,637)</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%">(19,351)</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%">37,647 </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%">34,761 </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%">111,967 </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%">100,049 </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> 139585000 165013000 462548000 501172000 90964000 81541000 282262000 235158000 94662000 102031000 272144000 312151000 26009000 26660000 72110000 76988000 -11506000 -7398000 -33962000 -28878000 339714000 367847000 1055102000 1096591000 16981000 22089000 57986000 66266000 15164000 7461000 49119000 19087000 5288000 6032000 8211000 14449000 7100000 7109000 17288000 19598000 -6886000 -7930000 -20637000 -19351000 37647000 34761000 111967000 100049000 false EXCEL 64 Financial_Report.xlsx IDEA: XBRL DOCUMENT begin 644 Financial_Report.xlsx M4$L#!!0 ( !9S(U@'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 " 6&ULS9)1 M2\,P$,>_BN2]O20=BJ'KBV-/"H(#Q;>0W+9@DX;DI-VWMZU;A^@'\#%W__SN M=W"UB*:'8FB LCFB%[G&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" 6G5T>22-]D)^33:<*_(AD4EF#PL^,N#T.M!.7X M^R#:*OZF#GQ]?52_R\R#F2>6<%>$GP-?;:Y;@Q;Q^8JEH7H0^U_XP5!/ZWDB M3++_R3[_MMMM$2]-E(@.P5""*(CS7_9\J(@Z ?000-\$V%4!SB' R8SF)_C>] @8I2T6.I;B@J.!>[2T)[%X1: MU#&4Q\7#;[D'X4-3^#?%<8I*+AM MM3^9+*%1#2WU"DN]>I8^I4PJ+L,7\L"W0BJ3/5Q*R=14*2X:U=!>O[#7KV=O MP64@?-T+"0P&QN3A2D6_J^QX:'Q#GU>%SZN:+5,RF$>R:: ZC[C6BH6),9%H M6$.#@\+@ "W4-%:!>B%W0N#09PS6L=M_I]TS.T+B&SH:%LV$=9P]\ M'>@Q%'(X9Y&Q@>(ZD\7']],IF-=HZ!RK9)2O9..!\$![D:[$1,<82)T0&3J]M#Z[,@^\Y2,DN M4D"V39,?"E)/O MK4O'(7;'(5M8_65K8V,]G(.K[!*L;)R(@(7](%Z3Y4OT)$*C_=-(9?1U#GZB M)3]1G'"."2739V_#XC6O),830O/)\G9B7)+B@4T=EKA$:^&2FTJI%S7Y2B9+ M)4PJJ7$;YH3B%^/FC8M'-?598A*MA4FS&%;>^:Z=7IVRHW&C3URQRNO0'? Q>LA32.1R=T/C )K7WB>1R$0,;/)8V.ST%#M*0A6HN&EA$+ M0W*3)O Z,;=;7*=R,8['-?570A"M!4'3B,NU[ICO00&H'":,+8O-J<4%JXV> M@X%HR4 41YAC(C<<$HG9PV6J[9V#A6C)0A3'F.-(FT_TRWRB7V:;W>1CJH!L M8SV'&AW_3Y1SJ(=IZ1.6W9A2:]"SAH-19V?R6/(0K;5WY,*(*@'\9K'/ MG\FOW)S&$UM(V;_^H&O$=3RX:2Y+WJ$G<"7BL9_M MZ%S)PR7*"ZD9X#>)P2 M>!R<4XK=S;L@T>C^A0.)WL%#XXAZ0HQ:U CM>%A3CR7R.#B@O/5XV+"N=HG+ M?3)N4>-!33V6N./@<'+DN==IQ';D3\BUVY;3MHPK3#SROQKMO#I$U!->=K:: M$$]O5.;GB<73XOQVDIU:=LK/\\/?>Z;GRX2$? 6AUN45#'@R/T_-;Y389D>2 M3T(I$667&\Y\+O4'\'XEA#K>Z#]0G&J/_P%02P,$% @ %G,C6-?M/!$5 M!P [!T !@ !X;"]W;W)KZ0[F#% O>WMW6W$6E<;*<+]^EOG)0FC1UWD5AI=YMF M//Z-8\\S=B[NI?JB-T(8]&U;5OIRLC%F]WP^U\N-V'+]3.Y$!7?64FVY@4MU M-]<[)?BJ:;0MYR2*DOF6%]5D<=%\=ZT6%[(V95&):X5TO=UR]?V5*.7]Y01/ M?GSQH;C;&/O%?'&QXW?B1IA/NVL%5_.CEU6Q%94N9(646%].7N+G5S2S#1J+ MSX6XU[W/R(9R*^47>_%V=3F)K")1BJ6Q+CC\VXLK49;6$^CX>G Z.?9I&_8_ M__#^I@D>@KGE6ES)\M]B93:7DVR"5F+-Z])\D/=_B4- L?6WE*5N_J+[@VTT M0LU-WQQH>0] M4M8:O-D/S=@TK2&:HK*/\<8HN%M .[.XDI669;'B1JS0*U[R:BG0C76GT>]U MQ>M5 7>>HAGZ=/,:_?[X*7J,B@I]W,A:\VJE+^8&5%A?\^6AQU=MCV2DQW=R M_PR1>(I(1*BG^56X^1MQ.]9\#K$?!X TR>ZYW?"DN)[".M%![,5D\>823Z(4ON%_D["14>@R5AKPOKKC>('AH:&D_ MB*]UL>C'?]\-QK7">$W:T.M')CCI94.<'H8TJ MEG9&6J4^=:V#N-=O-%#F6N"8Y7YA\5%8?$;84L"8W99"3U$EC$]9[/:;9Z37 MGJ=4A? ^T\3I-(WZ?;;2/%898]BO+#TJ2\-S M3U9&09!B1^EX>4#).:NQ)2P>#C_/&89Q='(4\91AY,H*/-:086A MS/.UR[*QM89[Z,3!6%_VHGC=CZ(;A&L["-,FE#]^ MC((W%NQHG,$X),YS\QI2W R1-YJ.@SC(GL5[D SRJSM4"JB+D+(%T$RN9S5< MC,^W@]?3F90Y^LY2F\8C0CFLX#+8V_U6RFIU/ M,-A%%] !.U(]9G'"R(C4CG XC+@V#P;DN?C*3N-N<,G#O,3,J&LH9!$._[=ED?>@%TL6N(, MJP^?63):N>$.GSC,3Y"H:EM1RBUL@76;J&U>OA656!ON],YP[J?7.:76QE9 X)4.M'C,6TY%D1SJZD3#=3HN^75D4),TJC=&PJ=-PC8>[UE6M1KF=%I6O5 M'-<<,KI?M8LYBC/JI ;7C.04CRVV#H8DO.US"XMSH^S9!4:Q4]/[S!C$-:*W M QG)@O"^V7 E-K)<":5_:S8NYKM79I"'/WTH](N\G0;=H9&$T7@EMUN H39R M^:79@47/*)WA.06<*[3G92U>(%Z;C53%?X#0.)I&4?.+M!TO_0(56ENX6I[* MVF@H>U=V81$RC;)X&N59#U6+,K\ MTX!VX*5A\+YO8*?-507C[C_0T=FSZ$PKJ7&IX\R@A.7P02 M!'4ARV!&4#P4[=K1/!F?PAV,:1C&K>A>MFU6X$\&P9SC7>]>RF,7VDO1#M]H_)H;4-E1_QNI4>P=L M&@;VJ?9&HT8OCUG4J]>EH. M*C4H,=?0-'J6@@_5OEIL+XS<-6_G;J4Q&PO=V]R:W-H965T M&ULK5C;2FO)QNE MME>.(Y<;7C!Y*;:\U&]6HBJ8TK?5VI';BK.T,2IRAV(<. 7+RLELVCS[7,VF M8J?RK.2?*R1W1<&JOV]Y+IZN)V2R?_ E6V]4_<"93;=LS>^Y^KK]7.D[I_>2 M9@4O929*5/'5]>2&7"U(7!LTB-\S_B2/KE%-Y4&([_7-77H]P?6,>,Z7JG;! M]-\CG_,\KSWI>?S5.9WT8]:&Q]=[[Q\:\IK, Y-\+O)O6:HVUY-H@E*^8KM< M?1%/O_".D%_[6XI<-K_HJNT <&6@_L 'M#*AI MX T8N)V!^](1O,[ >^D(?F?04'=:[DW@$J;8;%J))U35:.VMOFBBWUCK>&5E M72CWJM)O,VVG9G-12I%G*5,\15^XU/&52*S0KUM>L3J5$KW=E6R79AKP#KU' M7^\3]/;-.R0WK.(2927Z;2-VDI6IO$!O3NZGCM(SK,=QEMUL;MO9T('9N.BC M*-5&HD69\A2P3\;MXQ%[1T>F#P_=A^>6CCK\)!XO$?4O$,74!>8S?XEYT)A3 MB,[_&WWQGT<_"8;;UXK;^','_-V52U%P=*]TL>A>H= ?-P]257JM_PFENG7F MP<[J!G@EMVS)KR>ZPTE>/?+)[,GQ%OS/OL MD]Y)),LYN-1:TZ QK?>+QYGKQB'QIL[C<60!6!!&7G@*2VP8P;Y/,#W%+2!< M'/@QZ7$G3/V>J3_*="ZDJOO2(-O6W#\:EWJQAV.#+0"+"'4-6&+#PC#P/&R0 MM6&1&WLNAKD&/==@E.O/E9 2;2NQRA1$-;!&C;&+?8.IC8J" $<&41M%0XTS MLPK _) $ TD->Z+A*-%[K0^RO;1I$@"&(CJ@L I@-!*!R(J ]$-!J(;K)7M7*JY;H=JG M]@*5'*SSV![>\\WV98.H'QOK-+%!?DC-Q0R = >!N1)\T%=X/+5JPZL]5?2V MS>^[0NR$U5S8 H]CU!V@?R4HR2GO!JE+7LT0/ M7'_-\*ZND6+/\%+NW)T4KN]BUV0.P'0;,MLW -.[4!S$)GD;%U.?#O1O0@_L MZ;^4^)[M/O,@9PIL']3)=Q MD*EKJ0(:Q*&YEB&8;G*^R=6&16X4FMT+AD5#9 ^:BWBC,K@O;=VTV\\@_5FD M/U:S)4A]5,&]5@:?U5MR5F^+QFY9C&"J ']1 Y*D02OK\4TRW<*_'R^):/*\]75>$YOR5F] M+<[E[30Q!V5+QJ5MTN;@I?480O5H;7X0"IM"%D#I2C/+$0*%0V+G(&/)N([] MUIS+:=KL40O:-6_;XOZL2.R45%KBZWB 0;#E)B61N;?/85AH2CX8%ED* (!1 M[+D#D3AH7#(N- M!:_6S3&O1$NQ*U5[F-0_[8^2;YH#5./Y+;F:$^!Y4A\]-Z>;!_?MN?5'5JVS M4J*4*O1:%DP.G*52JSO7 ME;,E+8F\Y2O*X,VO8HAGV^5D7. MZ*- <;N7!-=)4IIR_Z)O/V<#Q](QH06=*0Q X;>B(%H5& M@GG\58,ZS9C:\?#Z'?U311[(3(FD(U[\EF=J.7!2!V5T3M:%^L:W/].:4*3Q M9KR0U1%M:UO/0;.U5+RLG6$&91%GA%%,_2DX 19H"3B3>4B?%AJ()$2QG"XDNUXRLLQSLK] ->GX: MH\N+*W2!<"?@5[ZY13BZ1MC#@64^HX^XQY4[MM'Y?Z-/_O/H1V($ M398$%5YP J])C'9>?&8S7E+T^_U4*@&?_1^VV._00SNZ7@OOY(K,Z, !8$G% MACK#'W_P8^\GF_#G!!N?$VQR)K"C$(5-B,(N].%7*"JT_D9M(=AYQY6WKAZ; M(8Y[2=AW-X?:6JR")(Z.K<9MJS1(D^38:F*U2O=81S2CAF;4F8F_J"45:':4 M@I<%E_*J87]GHQ^=,P//"38^)]CD3&!'H8F;T,2=&?C,H%,I\K^AD-0164"C M@J ;@!;DA2HR+2B2=+86NM@M S^%N0 M\*'5$?]>P[_7R?\#:Z:->L^2U]@@-;(9)>9'U#8* VPPMP#%"3X1>=_;M[=> M)_?O7)'"X-Y%NH:+CNID%/8,VC:S *?&"C.VF*5AX!EH$XM9DOAQ>(+\06_O M=[=MZ]6JJ/HVT*!NU/:MW*2H>_WNWJT>XTRE\ZQHX[.B39N3:;T,S;MI'^#3E.6@L0U.P3.;O_T_ [N^33*NP+GYU[ MT&HW([-&66RPV;:.+4:^2;UM_Y245BVH_1,)BM&9J]^_5/&WV M7.ZKG0;C^8-_-_(MS\=ZCZ;:!MC#[S9XOA"Q@/8 %70.0WFW"81)[/9,=C>* MKZI-@2E7BI?5Y9(2T%@;P/LYY^K]1@_0[%P-_P%02P,$% @ %G,C6"GI MFJL4" G2, !@ !X;"]W;W)K$D* MY"6Q["'U'W(X/PZELWNE?[0;(0QZV-9->S[;&+,[G<_;B::5JD!;K\]D%/EVQ MU#;H+/Z4XKX]^HRL*S=*_; 77ZOS66(5B5J4QG;!X=^=6(FZMCV!CK\/G]J&QY^?>O_2.0_.W/!6K%3]EZS,YGR6SU EUGQ?FRMU_Q]Q<*@36*JZ[?ZB M^X-M,D/EOC5J>V@,"K:RZ?_SA\- '#6 ?OP-R*$!F39@@0;TT(!VCO;*.K<^ M<\.79UK=(VVMH3?[H1N;KC5X(QL[C==&PZ\2VIGE2C6MJF7%C:C0M8%_,$>F M16J-5KS=H"\PSRUZMV_XOI)@\QZ=H#^N/Z-WO[Q'OR#9H-\W:M_RIFK/Y@;T MV%[GY>'>G_I[D\"]"_1--6;3HE^;2E3/V\_!C\$9\N3,)Q+M\+NZ^XA(^@&1 MA%"/GM5KFB^ZYB0BAPYC2[O^:*"_WW9"P4%NA[\1L^<]_X$7R+Y^+;]39,X?9X#"+];[\#FE'<-V RUY'^]:+ MKK7-+W?+G.99=C:_._; :Y6G@]4S:>D@+8W.Q47U7UA,?6P;!0FH5$TI:X&: M(\WV%WM=VLC?:74G(2[1S2-2PTSR829/?1ZF;SF5;]39L_%:#..UB$[E9P&= MEI+WN;:I$-\J;>3_NB]\GO?=I4>S1C$^FK7>)9]500)SFPU:LZC6ZPW7XL0F M\PJ5:@N$:X,R,T? 8L'81*5KE!8+[!>9#R+S%P9T+;0&A;(!C0(9_N#/!KES MHP9OJ:0Y*U?J].MSY6/+4*8\)SFF1!+PZ C&.1[$PIN[H:Z6^[)57/G9' MG"WR:8;UF>$BMZL!2Q&)![L4A1>H<11D&>,3'5ZK H2 MBI\1RS@*P>5O9B-T%Q1>:=2=7R<&7!N6):$0&/&)6112JPUO;D5KMU5'Q.F6 M8)>#:\EO9!VF#X[B^6?Q\U:]/1^,$=@XRK?EE2B%O.,WM3]-'EH_B^&<3?.D MSRI-LR*0*O&(1QSGX]?F#E:JTH$M'79!EY/44>=:G:0Y(0%Q(P]Q'(BPJ8=$ M49I(^L8NXS#&Q92$'K.3G.+0$AQAB.,TO"A+M;=[L1U_M%/LE>A"#K)4XB0) MKUF6AU;CB$,O"M^KMN=,C^D@#I+KAV#N MG07'$7T%A'[LJ_L&5>+&K]*%[#3Z/28G.,5)J/JD(XEIG,27O;[7#JB+5 C[ M]%C'0;#/D!9AP2-]:;Q"/!9L1Q3)MMW#4A#A\QWJUH..7D_)F(6.=^A(31JG M)LS_(95WP-'"2#V<]L!.> M.M$:5/[RR?8C$.7&BUV.7,1K"$!U12N,H_2SM MWJRI;,$F*Z]$3Z6(TT7A#*_/CC$<. .F(REIG)3Q4QWJ(2+-R."TROW0V@I'%P?BU@21@P_9=)?I/ M[^T!E?7F0^^3W3S= ?>;PS$5Y'NC96F?*-K?O4^"/+5FFM")3QZK$TS8(C = M;$0FBY>DOZ[7HNQ6GG@HNT,W!/6&Z#))4+*GT$R=/97'BJ:!Y,%&VK$X[5:O M'FS$#;H1M[*Q#[2L@X^":Z\[+NB@7LV<*7#-*%3A@>T6&W'(XCCL'BY;_:Y3 M!@E;O<)&76BIO,F&N1 DE"7.DT2/6DOS!JU[U.<:.,4=ONXT;P2FAK +^OE3)/%_8&PQLYR_\#4$L#!!0 ( M !9S(U@2LZU6)1 (V< 8 >&PO=V]R:W-H965T&UL MO5U=<]LV%OTK'&]GMYF)8^&+(+N.9QJ)F.W,MIM)VMV'SCXP%F-K(HFN2,?I MOU]*5@P!]^I*D.^F#XV=7!Y\'(#$.;@$+Q_:U:?NMFGZ[,MBONQ>G]WV_=T/ M%Q?=]6VSJ+M7[5VS'/[E8[M:U/WPZ^KFHKM;-?5T<]%B?B%'H_QB4<^69U>7 MF[][N[JZ;._[^6S9O%UEW?UB4:_^?-/,VX?79^+LZU^\F]W<]NN_N+BZO*MO MFO=-_]O=V]7PV\43RG2V:);=K%UFJ^;CZ[,?Q0^NM.L+-A'_GC4/W<[/V;HI M']KVT_J7GZ:OST;K&C7SYKI?0]3#'Y^;<3.?KY&&>ORQ!3U[*G-]X>[/7]'= MIO%#8S[473-NY_^93?O;UV?%639M/M;W\_Y=^_"/9ML@L\:[;N?=YO_9PS9V M=)9=WW=]N]A>/-1@,5L^_EE_V7;$S@5"[;E ;B^0T052[KE ;2]0T04JWW.! MWEZ@XQ+LG@O,]@(376#,G@OR[07YIN\?.VO3TY.ZKZ\N5^U#MEI'#VCK'S9T M;:X>.GBV7(^L]_UJ^-?9<%U_-6Z773N?3>N^F6;O^^&/8=CT6?LQ>W];KYK; M=CYM5EU6_7$_Z__,OK]?UO?3V1#[(CO/?GL_R;[_[D76K2.[;+;,?KUM[[MZ M.>U>9M\%OU]>]$-EUT5>7&\K]N:Q8G)/Q7YM^WJ.7#:F+QNWB\4P8-_W[?6G M[/>?F\6'9O5?!&9"P_PX'5HYC/QZGKVM9]/SH2WC^FXV5(D"K6C0=TT_3/6A MGZMZM9PM;SH*RQVHX/7U_>)^OJ'M7_UML\J&E@_WEMOUI/_<9#\MK]M%DWW_ MS[;K7NPIYV(8*T\#1CX-&+DI6.\I^$US,UNN:S],Z'F]O![*&#KG<0B\R.H^ M<\V'5YG,7V9R)"7&^R.^V>"O;WR?KZ2R(W%Y\7F79K(6Z_OM#]U=?=V\/AL: MW36KS\W9U5__(O+1WS&R.<$J3C#'!!90J9ZH5(E4'D/?(V:^0Y\J.0]U*LI-JO?:,;!,^8$FW"" M59Q@C@DL8-\\L6_(.?++L+AKMK=KC$\#;V;2JOAF1I:12A0G6'54_1U3D0$# M^1,#.%(A]%%)&52*6($ZSB!',YX#OLC( B M^T21)2GZJ>ON-\^/@81N?5]\F2T?*;E>__5\6*8,:ZDN^_[]XS(!8\F"BHE1 MS!%9BU2..,$J3C#'!!9063Q167!0B3%8@'EF\HC I"LHF?]!(;(>#E MB"U MLYG @LXNGSJ[)#M[,QW.U\)XF@TWM+OA[K;I7JQW2[A4,J6-^IW R>#B'V\7Z'B=01OI,+8^,%/%YG* M""M:Q8KFN-!"\G9L#)%&'DJ:@$L!JY60,6L"DFNDCNY46)08*1,]M2HL+E=: M%=$BBV[AJ3WH=;V@A?WC.JO;]F,_6VV<('H20"E_KN*'-EUL\A1@E?*L:(X+ M+230JWE!R_D]!*+$(5)9*%G$U"ELA,?3 LJBW@28%%"CN(Y0#;QU"[T4E^0 M6O)J7'>WV73V>39M]IF6&O:XY5FK.B55LT0S?!<14:4N%UMZ"%=[6< M$B;CS_6?KS)9['>I!"9L)5 4="62>6*5YJQHC@LMI-.+>$&K^(C.HRB$PEU) M*TO (=2T5L=,3Y HH4>V,/&-"L;)42%'L=F(Q)W+SACWEM;2@Q?3S#78! MM33FL-/U2![[K'J:%DDM:$U]FL\NH)Y&C78!%3/BM"-1J-6.Q*%> M.Q)'F>W"2V)1?D.[77#JTS$KVH05K6)%%%O+EU;>DU3>]6/NE_7Q@1Q@JY&&Q)G1,)Y- WM+) MB5:QHCDNM)#.G2U^V@J B[7#%$KXM+(VCTV.L826P;!8BR;N!(D26BL3JTHD M3IJB4)'O[)"X,>L M:!-6M(H5S7&AA8/ 2WM)2_N#BS6HE)551:QCZ%*2^6+=@C^N"8ZKT) ([QQ( MVCEX=J;$%C\P-Y4J8G.3KD8R4ZS& 2N:D]!)"3LD9,H[ I)EEYU,F)"8HH^9 MXMPJG["B5:QHC@LM)-2[%I+>R7]&VH2$._L@;T+"O7BP9(8AN8C7"ZP> 1=: MF+OJ/0)UQ';]D!M '; !OC2K MZUGG9T'6WFUO9-W^&YF"ZC\6<&.ZX&1J6*4_*YKC0@LI]-)?'9#^^RA$F8.B M_[S4<3:%0L1WG'(QP8)*H^/9PKI?SX46=O5.]OU)^_54PH7"=M'CY1E=;/)< M8;4*6-$<%UI(H+<*%&T5)"1<*"1M((_MK+'"=N;CB8+$B'CA5V%11L?9%G3[ M3NT_[QXH>HO_<+;%%B#,MBA&X%T35JG/BE8IF(B -,%Q%1I2X36\2MJ>CTS, M'^]O7F72$N\$(9OF4D*>6"4^*UK%BN:XT$(ZO1.@:"< &OB'*83:7YG, ML8*2> B*L[B1**&%L;&#B<1)/9(:O-J%"7&I]REQY96X*KZA@ZDX->V8%6W" MBE:QHCDNM' 0>/6N:/5^R,%44%M+9?-XNYDN)9DOUO2 XYK@N H-W[3TFE[3 MFO[9#J:&0O];,]![['J>8WD&X R*]8R'1=:2,G."_PGZ73*:-&' ME?B8+C69%TZTBA7-<:&%_'F?0-,^08+/HA'# ";3:$23QPFS6(R*;184""RJ MZ.:=VGU>VVM:VQ^V633RBKPN@+%(EY,\X%GENT;2\6$3'%>A(15>E^LD79Z: M)ZD1M8SD2=*52.:)=7^>%O- T]OX)^1):B2K'\N3U$A6/\R31*+0 M/$DD#LV31.*H/$GM%;:F%?:1+[683<%8TQX46,KISE!ZMXY_A,AJHZT&2 MI(%BW,1I1D@,> 46B8EWZ^F&GMJ17M$;6M&G>(P&:GLIP(X(76#R'$#2 4"9 M%6N9C@LMI,0K>T,K^Z3#HPRRFPW.0AG3)29SPBKC6=$<%UK(G9?QAI;Q1YT= M9:!P/S<"'/QB$ 4=ZXP)%E3(,IX?&)2*%:^C&W=JYWEE;VAE?X*Y;J"4!WTT MIHM-'OVL0IX5S7&AA:>K>B&?'[/G?I2[GB.[Z\+&1SB.<^QLO#B/$0N21?S& M @X%CDZCFWAJ%WIYG]/;X8<=]APY>Q[7Y_*D<$K)0BUG9T)9)Y8M7@K&B."RVDTTOUG);J^XZ-HBB$ MXER+D1S%#Q(GBUS%6X\.B3M70NW@A3WEY7).R^7G M.^PY%,N8PT[7(WGLL\IE5C3'A18RZN5R3LOETQSV'"IEU&'/H@O MTA8 <6P4Q2*T!5"M8J'V1K0*$H5J%20.U2I('*55K!?I5G[#Q9KE%+QC5K0) M*UK%BN:XT,)!X*6]I:7]H<6:A4I9*27CQ1I=2C)?K-OLQS7!<14:$N&= WM, M>OPSTB&V^+MWL1P^^9W@VP+)OG]#>VH/J.O7NZ M%LDTL;Y*SXKFN-!"/KUA8>D]_&\^7B\@!^?'2P4$I8PM M?[JEI_;DSL?GCMAZ/S(;PD('0*HXK7I,%Y@\";#C^.,R*]8R'1=:2(D7]O: ML#_I("B+9:G'U+"*>5:TBA7-<:&%%'HQ;P^(^92#H"R4\>="%/'6@47T=.PX M8S%"E#*>+JQ;\%QHX2<7O1U0,'YYKL"VQ,'G3.D24^<)*UK%BN:XT$+NO/ O M&#X\5R#;_WD.OK=58%OLX .9V&?GP "H4"PMXF\\[ 07[1^<*[*2X MN"-913PK6L6*YKC00OZ\B"_8OCE7(-^<*\OX$5%@^^/Q#$!BM([?S<6BC(ZU M-]V^4_O/:^^"UMZ',X<***[/C93Q(8MT.%U 0(TUP7(6&5'B!7= " M^Y@CT/+]5FZ![(#+D04\L>IK5K2*%GU=I'YP[C"%4%=K)94 CVE$ M-ZMXDVF"1 EM-7C= (E3HT+J.,<1B3M7([OO(PZ%U\^%_89N?,&I8\>L:!-6 MM(H5S7&AA8-@Y[/OM&(_Y,87B#;/2PL>WZSRG!6M.JX)CJO0D BONXMC\NF? MX<87B!;7((N/KD4R4:SI]:QHKL#>-MBWA5]ZS5[2FIW#CR^1]]=CPXNN1BI1 MK&@5*YKC0@L)]4*^9#G3#N41ROLX@:6$OD="8I.8;D)RA_\_M'_IM7]) M:_\4W[Z$I\Q)$7_?8DP7F#Q7D'R^<<1W\PJ[3$ MCJ.'B<%T)9)Y8LW+9T5S7&@AG=YA*%./HS],(=RH1Q.#D3@D,1B)0A.#D3@T M,1B)0Q.#+[K;INDG=5]?7=[5-\W/]>IF-HB">?-QN'#T:IV#LIK=W#[]TK=W MK\^&9=F'MN_;Q>;'VZ:>-JMUP/#O']NV__K+Q8#_T*X^;IZ_^#P2^+*UM;@ M(YD:\^0WM]D@:GE!J#!UGD'PWQ*O42E/Q#*>MYS1_DH/K*]W[# M&_4@,S<$7V"K[B[;W/[=KFT"Y'B(.)^L$A+C(8?/[3/6I]/*._NE7=/L?_W8=Z/ MA@>$7"H$61F=6',[N9*T91.X.<)]<]*$'#,D3LYC2=)F,G1- Y:"I"EMY6)] M.D'H#)1)7[G:!EP++3+1@!&)OU(%/\/TQ-2F!6<.A7GAN!;H=WJK9N#98"J19&)\64E-J5\V8O74_ MH:^JP?3B7HWW[X)FDE4HS!G::G[J14#5R*PVSBS"F)H:QT,O+.?\E4'R#GR> M&^-V&W_!_KLU_ =02P,$% @ %G,C6.K2W7\Y @ ) 4 !@ !X;"]W M;W)K*I<.P-S/I M4*])"H4S W9=5=S\'*/4VQ'KL?W&7*Q*\AM1.JSY"A^0%O7,."\ZL.2B0F6% M5F"P&+&;WO4D\?$AX*O K3VRP2M9:OWLG6D^8EU_(928D6?@;MG@!*7T1.X: M/UI.=DCI@2/4)J"=&J'\7WP@XTZ%PU$Z59FN$![Y#BVP'M8/-S" M^=D%G(%0<"^D=$6WPXA<3H^,LI9_W/#'+_!_T9L.Q/UW$'?CY 1\\CK\#I&ITC3YKD(^_V1LTG['_:G-L>+78QHAT5$/ M^_?CGIN54!8D%@[5[7SH,S#-3#8.Z3JT]5*3&Y)@ENX90^,#W'FA->T=/RF' MAS']#5!+ P04 " 6HU<& J#P & 'AL+W=O" M5S@3TG_:9-GCHQ$5;8BN[C;#@EK;_*N^=''8V7 RNV/#O-LP3W9G1;\>UXTD#/ M0Z,*/ANA0P+[-8_.'SXX?#I[<8^UQX.UQ_>A_\=4_5_8=*F"#B*87+11I>[Z MK6(JG V0*E7DDI;:*EMH92A A-'',>VZ:-R*&241V3=>!PYC>FV+"3W:\)A: MO+G6D_,4@?C2U8VRV\=4J373@MF*UD9Y*-#2TH7S)=0PNB96Z;TS%]#0WA@8 MO&++7AFSE75N8MXK\.^MEK=K,3!,D@_:9J(3GX!@VK(7A]/" W0X._B50N5: M4\(B$B84 3C_L;69:I(Q._8_?' R/WSVX@;@)UIV'FY9>6+I#WK%"]]*$OH* MG] '1D0X"095\YZ#?3YT'Q/Y^AD "*SX:DO\V18)N"T5$[HPAE3Y$123/GXR/CB3CA#GA53(->\")@9 FX6TA8+A7L6?)F=B% M!8 ILA)K,X94T?KD@%6Q]9QST>- M -'@0V1BY5G/DAX%M5\4 O7$.2T*T,7 M4A &UPOV0TB3:NOBX*V&*]J6*'>9#J(J[FB&;T@Q?VFR"[WJ98O8B?,3>L>% M42&DALGVO60?,0S%IZ]6Q.5:\AJ9-$MNB3EJ8@D M.GL=ME FE7XB?_3-WN)^TQ4J5+3$ XY7@[U+@K^N6.SD/1$>D26\#DG_NO: M@%PB3H+7'+,FH]5"&QUUUU^!;XE+I<0DTG 3N].P[T*R8[>$WD48=Q?Z1>F: MWA2+T\!.K\ ?6RJ/LGB=&W^I?8A],8]I@S#+;FB4U56K,ZD@BQ?7[Z5PY@>S MXS']?*./4D\?OJ#KMFF,1HF]2N%CNO)NY56-A'RO0V%<:'.UWR5(;Q=&KW(H MA!="#[GL()M.-Y59]3Z?J05.9FU=1IXP125,JN8-G2N[I;D'+)3Q.Z MY)6V5C;JN^*/Y)M40:R,I^ZJ.C%L+V,CWZ[6)Y M)N\6.<2:DCL(V M8OMV+(TIDD:C5DO42)I:BMJW4!(P#!2+J,@,&683"67.ADN%0-J@*C MK9&A_38DQ??-L MX@ROY8 9 MG<^33:+<,<%^7?>$V?'\U_.T.__D<:*V4K)]N.X9$\/\W0.RN/TEKNW"5](C M\ OVXNAU,]<[%N@.'6+XOQLYFPHS#:0=#9>3VP["TYW[2\U^E6YI@9)S^2HS M?!TN@A?Y_G,CGF^1;Y0'UP0RO,36V>39DQ'Y?#/++]$UZ3:TD[+B_ON>2DJQLGZ/6KSBRV)G'BJJ\;>34KG]C?3J+:2U5,[F_]6L?S?VM;EVE&OIHA&WK6IK3(U7Z>#=))OW")[4K'2], M[V_W?R?VT_VCP:SI(*51-C56Z$8:V=Y.'Y.8QX_U^P]\4'>WH6; G&ZU_ MX1_?%W>3F VBBG+'$B3^'>@]514+@AF_=C(G@TH^.'[NI7_G?8#6G\X%WUIV&<:C@IGYW!6X5S M[OX3':AI*1*?*"=UD)N*K)!-(=[KQAG$3#Q82RZL_:#D1E7**;*W4P?M+&.: M=YH>@Z;T!4UK\2-$EE9\VQ14/#\_A=6#Z6EO^F/ZJL /^G MTGDDTCB=O2)O M-H1BYN7-7@^%V!I=G]T_*E>*]SX19,3?'S;6K__C4@""_.RR?"ZO&[N7.=U- M4#^6S($F]W_\0[*(__2*]=E@??::]/]I(E_5=-F/_U:]Z*/^I43D=0624,U. M.!8@"F7E;F=H)QUV.NUD!2((^S_46B[G>-U +^[=#90;'!KC4WR U\]7WG[?"%?JUL(%^PXJ#E1O@(D> M@J.5A5])?]>>3\'V?T&#=,*6:L]&B33P^#M&&@P+/UQFV9?B_CM)Y)A;Q/$K72S%?IU&2)>*+#^4;,9NMHV62 M\=-B&:VR)2N+XOD\2N(T/*\74)T\2^OX&1S*! OMBJ.#'*I&-KF">.N0-O:% M=WFDP"W>TJ#7R%JW^$E/^W#::;$A 38+TJ[% QB;T0!AY-.8&RJ4$\BDA5YE M!5E&B0+W%9Z8$8#F+##LNQ;?/E\0$C# 205"YW,G!@2HGH&DFD(=5-'"=IGG M;)^-8!(:4$&&-\@=_D8C%_&R"*@#LMBU@C9.FX@!R=[NYVJ")MX-)/>RA$ 57>&F]45P1# M6A">6J,@H*(0<$15?6PA/00W>,@[>Q>QM;?O6%(CE'_+!(C<2M0ARV+=O5N. M3&U_*^UHE'/$$=F.Q13$NU%4R'4I Q D4P*_;#32T^S@;6\EO+C^>L5]1QO3 M8I8XKWPQLJ A?0SA9!;%R<+74QPM9RDS$CB\#5-!WM&3%:M5%,J3FI32[4,&YMAW#ZT5SE\/(D=-60\T_A2 MZ)N/.9,V2Z:B2VX@Q4X: LJ+>3=[7 -#G94B /<2B@>FM8,U7, E59[L=&L& M@9;%<-E=<66*O='_] $.=,&JNR4(E;@,0*( %5'%86[XU="6S( M'8F:D!>L^?L-PTFCIV#@""QLJ/>4O*J>^9C0H,)3%YHV@*JV2'GCK@5J*B?# MF<)NX[SA'/9-:U&'U@;Z&Q!P-K?OWA'''6R+K4,8 BO A(Z'KSP/\Q6M:"L_ MUQQDU5+G)TH29.J#EU\HBOQ2\(^<1+[% ;7L&J-OF*]Z( SLTS6%L5_4>8;[ M(B,>,$)+&>%KE(N_^H3U"U> BR^1\Z!F_\\3V7]4:6^B)[D+T?,0WP-81IR MS2L0K.?UA$>K*%OR[ :-B9^P9HMH,8N_HB8(LP"BY<;?S1@O 74)>5FTR&(Q MA^Q,K*/Y:B$^H]AZ^)TIHI0'!O-Y5"I:(WL%71M&)@$U[TL4KD O::8G-'O/ MQP' OK=SG6V-K-'#_^P9$%P8,058&AG"U;4%:_C9\1*4SCS:@\J;<@%3,+)4 M>?E:67448&1CNW@BQ#FSFK4:TYPG:1;?-B'J"@LO$H.[@"0_6CX?: =)D:\\ M3X(:+&7W.@2M-S-L/T,AZL,YG@C.<^N(R>SOZ.,_=^6* N*4\D5BOHA6JQ@= M/M @O_(6'K7?@CZ; $H82A[II)^]6 +'RWBX0^#6@#O$4ERZPTY''R; ^SO_ M^86)'JTB?*,85H_@\]".F#(7(5[3%T?AZ.9\($SZYA!].[_UG MCHUV:#+^L20,@X8WX/U6XT[8_6 %PW>O^W\#4$L#!!0 ( !9S(UAO>4]' MA@( (P% 9 >&PO=V]R:W-H965T]>YE/1:D8YWDM0;5T3^3)')KJ9-_+VC@>ZJ;1U!/FT M(1M!?PDV*G#FRPF:R$>+*+13GS M0BL(&1;:,A#SV^(-,F:)C(P_.TYO.-("#^T]^ZW+W>2R(@IO!'NDI:YFWL2# M$M>D9?I!=%]QET]J^0K!E/M"U\?&EQX4K=*BWH&-@IKR_D^>=W4X $S"-P#1 M#A YW?U!3N5GHDD^E:(#::,-FS5$@\=GSQ&WP+OC5)"_D"GZDJF%"M1/AUO5): MFIOR^UC&/6%RG-!.SY5J2($SSXR'0KE%+W__;I2%GT[(30:YR2GV_^C32=[C MJO>UH:C@PX*#KD2K""_51S!MP'J%7ST/I#-75*.DA"DX@SCQ MTSBU1N9/LDMX-'-Z3OEY(T6!2L%H[$=I!J.)'T8)W%).S7TN82-$J:PW&6<0 MQ7Z:3."[L/G3 WUG, []*!M;PX0F(SA6[>!@0FJ4&_<.*"A$RW4_+(-W>&JN M^PE[#>_?J3LB-Y0K8+@VT/!BG'H@^]GO%UHT;MY60IOI=69EGDN4-L#LKX70 M^X4]8'B \[]02P,$% @ %G,C6(AKBNK5!P >1, !D !X;"]W;W)K M&ULC5AM;]LV$/XKA%<4":#X1;;C)$T"I"_I K1; MMK;;AV$?:(FRN%"B2E)VO%^_YTA)=AS'*X+8%G4\WCWWW(MTN=+FP>9"./98 MJ-)>]7+GJHO!P":Y*+CMZTJ4N)-I4W"'2[,8V,H(GOI-A1K$P^'IH."R[%U? M^K5[X-LW51<+-^*Y1>7?5&O7;A=[G('2T,KB\KOA!?A/M6W1M< M#3HMJ2Q$::4NF1'95>]F=/%V0O)>X \I5G;K-R-/YEH_T,5=>M4;DD%"B<21 M!HZOI7@GE")%,.-[H[/7'4D;MW^WVF^][_!ESJUXI]6?,G7Y5>^LQU*1\5JY MW_7J9]'X,R5]B5;6?[)5D!V/>RRIK=-%LQD6%+(,W_RQP6%KP]GPA0UQLR'V M=H>#O)7ON>/7ET:OF"%I:*,?WE6_&\;)DH+RQ1G1O4Q"^H.6>?=>ERRSZ4J4B?[A_ I,ZNN+7K;7Q0X2]Z MV6?Q-&+Q,!X?T#?N_!Q[?>,7]'WFYD$X/E>"?1%);:23PK*_;N9P&LSX>Y_+ M0>-DOT;*E@M;\41<]9 .5IBEZ%V__FET.GQSP-Y)9^_DD/8?C\M!-?N-W*N; M;2%D-PA]S8VN%SG3M6&K7"NU/M&K4J1,EK8V4 /I>FYE*I'2$;LWTA;LQC;W M(O;)I7UVY)>/([82##I2YG+!,BC3*UDN&%]RJ>C@$Q29$\MA0;'/F C+J6!U MQ73&,ODHTA.D)=ULYM"&R?_A='OM'7LH]'6 MLF\E:ICRJQ]1N^SSY4^X!@(?K),X!@O@I"CFPG2\9*_8:!B-3L_P@RZFYS-\ MGD?3V83=BKFI@9Q59"XJ%KPD MV!>B% ;!4I+/I8*SD:]TPEBO:O:&);I D;8\U+DR9;Q&W="0%IM=#*<\6%9; M@MR(3?SXP@@1.. T*Z@36 =+(UX<9( -)(V<854@-, M'?X/Q D,,)X)56TJ;07Y6QF]!)=@(0J; NKD.,EYQ8V_ENFYD@OO+AQ"Q0EZ M]CL5K.8=!Q+B ($DNL!F7!JVY*J&!S "NF#-MJ721=&.@73:QH+*2# T4S4%VX0U[965!?J) M\Y5I&6@A@YN6>8!+^N4B!)ES7 M5!=IA3QOBQDXF' +^#U /H$Z-7[*-?Q!2F)FLM*31# 4U]*2-6K\; _Q-BF5(L-> ;)KARF MI N"7;<(1Y[VB>C 48(QB>>=!RU =H"W.&*@32BZ@];OAO(;3H?B81^>DWF+ MDP0Q_,#,61>!L@V]=F3V)D!@]!/3-BGD"QCBKE' 9+E5.3LXE+!$=KXI- >" M0T.%P%#1&;O7^R;A7R@0P?UO_2]]EE+C,3O!]&>_&DWZYT^B^6K8/VL7(C#+ M4IE'(JIUZW^ZOXQ1PAF1:),VT,M 51ADM9*I#\FTC=E27//T'SUTX MX'NMZ:OAOFP?(9OA-,PO,L5V2M'6+8)\X]7QFT9SS([TG.9O/],&#<%:-*> MI^?[[IF)JM. 1F,A-!)RX6I,]F[I#0J#__ :',8$@D!A?, ,$4A%\\&N(> ; M/_8U)]7$_#9%U]TYV6[XGOKY;)[X+?AQWV'WJ_?QU\W1=\'6HP:?XV80V)HW MGL_;-_[L"WK8%.O6^ P3H*4!8AS%IS%^M!-VM_2Y+F4B*S+>-V*,F[Z(SS7M M;,7#W-%,[TVE"&F6 +/*M[>NXK>;QOB[.] 96KE1-)T.F\]/&]PNV$U;M:C? MA<%W9^LLGOC_YT\4!^$XBX8[:(25'P6#GDS"YX_Y=S::-9]/_/MA)&-,C_3_ M_X",HN%LVGSN>]0>;+T.*819^)<^EOGQ)KP9Z5:[]THWX77*1CR\E,)#\8(* MJ1(9M@[[LVDOC-WMA=.5?[DRUPZ/7/YG+O"4:D@ ]S.-/&@NZ(#N;=OU?U!+ M P04 " 66HH*7V9*E]SB5<_[9JD%S]VFLNC'83CLEUQ6G8LS-_=17YRI MVA:R$A\U,W59W$M MBH(( <973[/3LJ2-V^,U]?=.=L@RY49%W86[7Z07AY M!D0O4X5QOVS5K!TD'9;5QJK2;P:"4E;-DS]X/6QM&(?/;(C]AMCA;A@YE.^X MY1=G6JV8IM6@1@,GJML-<+(BH]Q9C:\2^^S%!Z7RE2P*QJN<_6(70K.;7%16 MSB2?%H+=5)978K^*C!']6]ST6#P(6AW%RA%[2ZB!Q])+7Z&!/8/9.FJQ0IM:"_>=R M:JR&)_U^2 T-E_0P%XJN4[/DF3CO('R,T/>B<_'M-]$P_.Z(#&DK0WJ,^M]C MQZ,L#@MPB.^>!MM%[4 +1Z+"1^QAXB$3QC UY"BMWM>U((^54A1 M+65B)[V L,-3][PQ :>?:VEQM=I;2 +YDV/?08W(LFM8/,U'"0W)LLEEQKY MQH)X5?.B> 2M-::9U "5\T>:4+7&A,DX[:RU7;"O-==6Z("!4*G@*3,MOM:@ M!2)R!HY.5'S,%L I# "S3.JL+@V 9VXBEQF!L@MN&S5PK1]E-=]HH,5; D>E M+)L*:#(C59&1>^RRV3D52$"4&F,J&8SH0DUF:/@>H[U30K$0UM4& =EJ=4?8&0 ?"&S!31@D(*= M$WCW*:>RXB[I'Q$#+JBT)7;@;\D P+8&]>3KCMOD&SM062&U%M)RJBY4(*0! M0JF$0%:OD?T$;94CKJ M(BOX;B4HK%!K>^P:U&JM:>]*PF%I=PG'H3VM=F8:JMZWYGO-2V)R]VBL*#=& M]2!>,+V 55WI9=ZOX?':;L+HF&?N2 .W*0J5.0MXUMS1QOM3!9*,< ?!X1\> M"/R,; N#:5$TUIHAX+WJ^!)N1:LIY)O>Q3G4Y=TU2P9AL)75#'O+#J2]'GM7 M.^\E8."N\\-BI2[@MSQ))\/E'8I:#LY6;?6Z^^)X($#1'@$ MO NQ!;>!8R.L2J(.5IY\J]DMRM[!*6Y(WTNAJ>D3>8]]HARBH/V5$]!5E)T$ MWCHB+U7=I(^6 [=6RVG=[(+AG%$VN#AA4== M)=_8^Y@;G[+N#64F51L8QYR\ '7WZX<"]>PYO#]2CGQ[!T:"?4(0%^R*%U1. MR$G>BZD&GD<6#UVG%+,W;)($T3C" -U3G*881$$4A_0,@\%@1(,D#*(P9K=K M);O>&0ESOA=DW>B$=>,@3, MOL [!O;!A'73+1%&VSS1;(IR"J.V/-\XKN&D46,R)/6![ MS8[>UNQ.H!B7G*B:N<)%."6M7W+KG\]Y^ZW6#KF FX2+B M;8'8.=2=H9PNN,MR3[]04"F:VNC><8C\8GP/P-%RY0(@ M2Y>X(;0GOT:"F!:SNF $J.D"K3!V:\&S4)_M#7TU RA6"D[G [<@=\V-:4(!,"_:Y \1G%RC4U\/:5(&!*^-FP6:H_89D M:Z., #8)8$O[#]+X]M6'A+/TU@H-AT\:*]X?W"<+K>VK O,S^)0M7C)[4[9M3OB".V; M#569A5P:U)#Q,!A-QAAT!S'*7'A"PVA CR0-AJ@N3S.P8D 5:+8Z#\01=PQAF2!(L2H)1&I^P%.4_3O]K M58[0A$TVJHQ'XY.U?H\IIYEU;K7W85,[6YV:D22. M9KC)(ED2IT/(> YDHNDBSQ7 M2#P+XZY/]C WY1N]@BR; T=M75H[!)(T\AK%[B656T'WYWE3:*G"TL^ ?H;T M,Z*?,?N^!7&0.S7SX8 <(D5S'S9/UZ^F\/7(=:F39,@.W3;VMVZ0$4QS=T^. MA$IIM+E,;F?;J_C+Y@9ZL[RYQ_\)AQ)9&5:(&;:&O=&@PW1S-]Z\6+5T]]%3 M91&Y;K@0" 9-"_!]II1=OQ"#]C\H+OX"4$L#!!0 ( !9S(U@WC18580< M $02 9 >&PO=V]R:W-H965T:5$E:3B^M_?,T-95ES'VP^) M)8HS?&;FF1?I:NW\U[#2.M+WTE;A>K"*L7X]&H5\I4L5,E?K"D\6SI=Z-.2V%*707C*O)Z<3VX/7U]=\;[9<._C5Z' MWC6Q)7/GOO+-N^)Z,&9 VNH\L@:%GT?]1EO+B@#C6ZMST!W)@OWKK?:W8CML MF:N@WSC[ERGBZGIP.:!"+U1CXR>W_J=N[9FQOMS9(/]IG?9.+@:4-R&ZLA4& M@M)4Z5=];_W0$[@W.MYO!I%:.+[4=Y*W26IR3-2_Z _7157@?ZH"ET\E1\!00=CLH5Q M-SFJ\+U[S&@R&])D/)D>T3?MS)J*OND1L^C>A-RZT'A-_[F=A^A!@?\>,C;I M.CNLB]/B=:A5KJ\'X'W0_E$/;G[]Y?1\_/L1I&<=TK-CVI\-P-]+T6T@MR"X M3I=S[3OW#6FM::4*4I2[LC0QZ@+Y\^CLHZF6E'M=F$@+E1MKX@9\BROZ"VD1 MZ*WR2T=WJOHZI/?9;48JD"K .L/.X_0A)&H5AZ2J@EQX\O ,0 KRI*3HZF5[.0&QK)4GLO+]TV+.R]:V>^P;U MJ^=OL*+64E[L)H,O2=G@B$MBQ!_%M:,WJE*%4=4N),-G41H=DM_8%(X&@^&$ M0]6U\%E4EH5.)GTKOCS5V89\J'X#Z& M@ M4<<@H9.NQ*B%X5\#-N2P"=?P6%PA'%Y_:SBF3>#<@A$;!!"-5[(J)2%[[55T MK_ZX>_?Y_I8XKQT3;)I-9@*XXZWBAB,RW:8DQ.(,!L9$9A%ZM$XJQN.,[E 8 MD@3B!2Q@?-UP2+[!S1"R8)?0NT60*YLW5H+&+B/OK/![@9B^:F6X\YIGHBB\ M$M\;2:_:&G&2G#%G, ?!4J M.M(#@3;2_U*-1DP^2;/R])EA/WQX^VE(M44>HK!AED27+]B]O.--PG(+>FA$)'(EQR#:.VQ7FH8M(^0=AE/6D/Q?)2HR++A^IT\5_X/W>9D#A\/'+U*B M'1H.GF188*4#E>?.%PC0 .GA'@V/_AE]:>.#7.E6N^3@BL<1D?+7IPIWKFW" MH!ULN'>4#;,VH'6B4'6]$V6EVB B]!VF6O2QXI8VELDQ;/'L18TFOQ6$#O*YWGBM3PU2I"DGN"@^:]$+$GN>1.$A,$8+&2]W$*P6K M\CQKL%/;,0%&MZDF(P @IW:!XYN\1T9$!<,R!^ GYK'L^2&6Y=(T0.I1&:OF M<"+7LYVR7F]>2U1_G.LFI]FT6]D!.LQ'"!SHZ_M-^W#P9!@!#VR#-R($;O(T M<,_%)+E8)MY]%P=HGIYC@W?--9W=HUMN"DZT]W00J=I(:& MB%E?(SW,/-6_]PY9=@:G-I)[+/2H@)0IT-5@KN^AK:>!UYG:4BDS;LSMKEIM M9&T_^$^"?6#^EEGN(GOZ;G(RZ[&)N&PO=V]R:W-H965TZ]RN;'NWI=*!?%8F=I?C<#OVFU\8._!7FRM/:>/OQ<7(TF9) R*@\D0>+7@[I3QI @F/$]R1SU M*NGB\.].^GOV';XLI5=WUGS312BO1NZ%ZSM;53H@RL$+61?BSM9!UVM\%A^T7&JC@U;^ M\CA %]TXSI/_%07JMB_?PP;>T-GG:&WLQ<%?K(/8S$[ MR<1L,IN_(&_>.SYG>?/_UO$<_HIWVN?&^M8I\<^;I0\.U?.O0U&(2A:'E1"B MWOI&YNIJ!,AXY1[4Z/JO?YF>3O[^@@N+WH7%2]+_A]S]/^2*6XOO\L'9GVL1 M2B6L*W0-@..[UGE\7HEEZZ'#^TP@#(5%'/R4@?@M'72B"\( MD\Y5U+W_U7LG<7P5X;D@VCD-OJ!NV151)]R7N 2C-F*VM9O!C+&XB8(U*6J MELKUM9F)5]/Q7"!,AF@'WB,H"$/8-O")@L&:-PKF@B5]@)OP*:.O-J7.2_%J M?G$^7@#M48+V79R6,K\W=CT67UEB%%18V!5$*1_@:I !SJO'1CO)K%?@@1^+ M;RH>J-4#3%TJ5>^%JI+W:N=_"\BZ%\.VT:&$ -\@,5VXU*/V5"9]LEFO= ZI MWG(ND9#?<>&-4X;-S/<@]XVRQQ 1"H*JSA-&(0)7B_O:;FJ1&ZDK9%Q2#(VA MW\3NHK$NI(!#H\YU$Y6DXY1#&%"TL'@SM,HIZALPQH>,";X@>26 ]ZL:XOQ]84,5T2V:_ 'X%,BF64;G--4$VNT=1J2I&V!9[EID7)DYJ5->BX MB.];D9<28>8KR&*[D@0G2M5W2()#V?!$YVZE'S,.$&GQ>EWK%<(!#AB<99_% M@S5M!31\0MKW:%^\9DJPK8<N:[$1XDX>O MQ/0L.[^8TQ_S[ (B;HI"4^(1T3XVTUEVMIB+Z32;3:8Q)9Y#+5Z?9:>+Q1'] M/CLY.1JJ4_!UJ&@VRRXN9E'C_/1BH,AL>\+Q[?+W!()4WA1BC#,$)0Z?KH%* M8QB./RC]6$C*8Y(@"PA-*_VHBC<-*E )@H+3\,^W36.VSZ0*'QF3I5*G8IX% M@IS^0XY-#)IDBERY(*D(I N^L^5E#MZ#NTK>]W_+>#-)3 M+#E:KRVY99[* 0C ,CTY,RZ90+7W+5(9V9(;!O<12J]3P,0#B4NV '(Z(@VY M+C!RR!8>#E6/S:1.\%2H"FJ:[S\:6!C5D*4=,%UO'?9%G'*:Q>"3L MICG1T7@?5EL_"_U8O.N]9;LX "2DB9!V'&$:/I@H$FB;UH$G580YRTPL>'#& M+:TAO/N2Y@RTYQ ?KT!*>Y<3]#!*8G;Q'JV< DS8@EF:YQ.6\F?"^!OZBEP: M]4;7J#X(0.<,#*7L.4<^1>)3X2M:!7)N;C2[IFE^)P EQ>>>M$B*:5=1:C!C M#YB J7;'%CKB!?%8HX'MC\URQZ6]3_&\=I'?S99RA$*HL;SD?B^WGAX7-$NY M$%&R L%#%IAT@;&^3M0Q, X3*+7>$$QTC9B:D\ UOW,5/H"PQV<]7R]5K58Z M\'VJ2[>'B]<(-S:6H\C\7F7HK"'B-%#&\MML%<-?T.(KX.B(H?O.MP?IM\ZA]$A'Y2H7?WH]S&Z?#U M]$CB3L4=)@LO3=:*CK GZY+?>0H;V8 MWJ!/\6Q)/6H7=0@J^[FI^'B M40%*@:JUD!4-?6*PTCG5&)DGXNTFD@[STH>^FZ2^ >/W1_, M;,9LG>;DF*?DY0 NDH WWJO!D@XUC>(! MD5=4NL$Q &-H3"G$IBMBMR"Y6[&Q6+=L2RT8K7075OD@M6&VT75\:0Q]P]BQ M@H(7%JZ%%DQE6!E]0Y5J=&GCA#04]G3HS^*ZC+Z27(Q-_1"K0YVB5U%JM5+] M,MVY_S<_>#^UZT=$ZCK:'LDX[D/=L,K5QSUS!4[UXV>@-MX.2\SLX/\$#:A* MZ@:4,VH%56,LOXA!(1"B<^ZKF!((NZ@J8O8D!R'#"JEH*]M5+IRF!68L;@S1 M,?8L$"@,0@2 '+U:$2>P2V@Q>=_Q1Q@XF(AND@:>JYRGLJ#KE9WSH MY>OQX"4ZX+GF?Q5XKL\0WZ?W3_O_1MS$E_"[X_%?&5BD#*>C_1W/]'U!+ P04 M" 6!DW0N&%D;2KA^&?:"ELT6$(E62LN+] M^MV1DNVD:;85"&*9Y#WWW-US)_JB,?;.%8@>[DNEW652>%^=#XC$HU3$>CDV$II$YF%V%M86<7IO9*:EQ8<'59"KN] M0F6:RV2<= LW7S MX< ?$AMW\ P ME*TQ,2BECI_BOLW#@<'IZ#L&:6N0!M[146#YD_!B=F%- Y9/$QH_A%"#-9&3 MFHMRZRWM2K+SL]M"6.Q?45PY7)N2:NT$I^MBZ F=SPRS%NDJ(J7?03J##T;[ MPL%[G6/^T'Y(K';4TH[:5?HLX$>S&4!ZW(-TE$Z>P9OL0IT$O,E_"'4AMJ0L M#W-KA5YC>/YSOG3>DDS^>BKXB#U]&IM;Y]Q5(L/+A'K#H=U@,GO]8GPR>O<, M\^F.^?0Y]/]5I!]#@KF#2E@/9@6FMI =[E%6ZLS7%GO0(*PI8Y[63';77P:@ M!X=%(VSNP!O(T'J:"H!EINS> M>>%K8-K(O3V]8O3=/SV MG6LC(@>\F0L?#@9JQ$JA&(_ZOP=FJ]H2K*6*Q[<1ZXW_Z& HVE-ZK)30 M+N@(O%@J) '1BP@<>L>85"MFJNMR2<"4PW\3=E?T \%J:K)^&8HQ=#R(@VV:\+I@\6S0TMNO;:N0FY#/D,ASF$>O'W?\VH4OG?V\M7_? MU6@1:G1#6J:'H.>HH;V>[>.]('!X,SZ"\=EQ;S2>P$N83@;C$UB@#:G6L>PD M^O9LLKC][)(C>),>P?2T-SUM;8[/ LX-AC'(@X)F(1/*C,[E82)C'ZU1$W^E MML#=!Y0W2[+UC>ES+_G"(O9Y$D"%5II\$!SNT:L#?M]ZZ)(=<_N@ [VP:U+= MON[5XT@=1!&T6H[1QP:@?MR7JYM18<7QE"!YA3XB*\M58I^L?AY1@@IK91#B M@>:"OQY)TS=(?3%Z%>I$%ZM7H:T#UQY=-BJ6%_D-UYE"XH8E*/@60A+,'\2P M-B*,*XLTN4.;R&[ 9:*2GG;9QQ(9HAV3>3=IR$TW3PXQNQI\,FS^W9;#>W[F M.9VIFMNA'=@4(]V57'C'$)2(8[H1#EZ>#$[H=J,4FW>YV[=5Z_B9YB*^A#'Z M 8R3@)$.8.Z?0N9Y@Y'C>'Q DK,3LE!K*JU9:_GWXS1DGP5.WG^'!=;5$TC9?RAWEJ]8^WEQW MJ[M[_SQ>=_?'XX^&#]0:DD2D<$6FH\';XR3V7/?%FRI&PO=V]R:W-H965T=[\ZC1NEG4R!: M>"F%-..@L+:Z"$.3%E@RJ11A$D5G8 29QI,799,_YJB4,TXB(/-PB-?%M8MA)-1Q98X1_NUFFF:A1U* MQDN4ABL)&O-QOG;0LF,%K)9YX9HMQ, @@PYS5PCZJYC.N]9PZ MO%0)X[_0M+:]*("T-E:5:V=B4'+9CNQE'81X])=RMQJVN7D9R>W3$LNEP8JU# OF,91: G7[8;I&F/: M8B1O8 SA7DE;&+B5&6:O_4/BTY%*-J2FR5[ ![4Z@>3T&)(HZ>W!ZW4B>QZO M]S^1LXU(^'ZU,%933OS8I;>%Z^^&VL:H,9<.EW4E56M>V,J5IX"DQFD'%16[+#;0HMSN%F[W8V/[H@ M1AKQ53[! XE[O7)XY\Y3M2%L9?-U//=P?'@PR") MXTMH?(T3 ;9"32W+"2Y)J[7,#JX+3!EEF;=>1ZIACIOE'WWR4%N'0W\ )2]/7=20 M6?*W!9.=,GISGNF1:RVV4YDRJ'<.<30$8NN&744<;K78$O72/R2&0D)%T';; M;K5[JZ[:%OW'O'WH[IE>F]1 M.P/:SQ5=R7KB#NA>\,EO4$L#!!0 ( !9S(UB%9AGN4 4 X, 9 M>&PO=V]R:W-H965T)BX8R:>AIX7C)M MBJJ=7%VXN<_JZD)VIJY:_JQ(=TU3J+L;KN7NAE437^UL7.V*9%YI?R_IKM3#KRTDV MH04OBZXV7^3N=Q[BB:V_4M;:_=*N7QOD$RH[;60S& -!4[5]6]P./!P89-XC M!L%@$#C<_48.Y9O"%%<72NY(V=7P9CLN5&<-<%5K#V5F%+Y6L#-7,UZ!8D/O MVOZ P=3%U,"Q_3PM!RU4WPI,./ M]V3HY MUYNBY,L)"D&SVO+DZODO?N*]>@)K-&*-GO+^LR?RM).;3F-&:]I[L\E!7YG6 MQ99I*3N%BMISH?LU^IR>_Y(%0?**_E@S7:MR71D43Z>*FMZJHK%K9W?:<*/W M-B@ 7:U:+8C;%79DA>ZRF*NJ+ QK*MH%+:NV0H)B4'?PT35(\78A=P+YK0QT M8U?4M2"D.@I2(9&<%9RKHBV9]+ CV" #7'QK6%48R"7-NZI> )8^>P+Z;W6A M[P&7$BK6XQIA"EJC>%]N6#G*[:XK9]1I7E#5#H4XX';&%O,(#>I2RJ9A55;8 M[Z= S9 U5'T]L/EB/H(7#[Z>!T]I$^C.A]H5;\<@:@3)\VQB$^>3_[ M=#H&!;3=LK A \XC'-NMBE+=U55IHUQTI>D/>R!]V6>>H :GT34]['N*>B>X M4+XQ;B?@4LP/Y(@^(O*',R?O6J22[#1R)/(LI\K/4I MR (1) $%82S\.'LLU_)()%CE>X'P0EBE@?"CB$(?;>P?/4\$YWFY;9+$(VO@ MHTE$GF50*%3B_JBYKA"UYP@.V%T>VLQ[J#C)" M)3LY@-+M%_$MGH;:"LVZ@&@KIE:BK6MI]055C<$H!35ON3ZC-QU;7;)"OL4C MT&($POF8.;TF]5)HQ0PB#]&MMM6B*^KQXOCNKCBB5((J:*JFJMG86][QC'W[ M2V^O,QANN>T0P8I;2QE S^^H=(>.G8=E@N9\)ZWJ /4^GM$4FRM,U'>#:+@I5NXE"FO9M:9_KHVSXV/WNG_CW2_O7\H?D$/0;5"ZA*EWEL83 M4OWKLQ\8N7$OOKDT4%#77>/!SLHNP/>EE&8_L!N,?P&N_@=02P,$% @ M%G,C6(()7=_K @ 1 L !D !X;"]W;W)K&UL MK99;;]HP%,>_BI55TR9M#<2YP2!2*=>'5JA=MV7\_N<RUP:\$[_C! M&*A,GBG]HR:+:&AT5$ XQ:%0"D@^MO@6IZD2DF'\+36-RJ4"#\=[]:G.7>;R MC#B^I>GO)!+QT/ -$.$5RE/Q0'=S7.;C*+V0IES_@EUAZS@&"',N:%;",H(L M(<43O93G< !TFP"K!*Q3P&X 8 G 4P V '8)V&T]."7@M 7<$G#;AN25@-?V ME/P2\-N&U"N!GBZ'XOWIES]& @4#1G> *6NII@:Z@C0MWWE"5*T_"B9W$\F) M8(E>P9:#)6;Z?T-"#,8)#U/*E#E7B5O[Q$?66<%[NKT&EO,- M6!T+UL1S>QZ_R=<2=QOQ\7G\3AZ[Y372DS:Q%\ZM&GS:)G:O$9^UB-UOI.?_ M=^Z+#Z=^5 :PJG^H]>!'ZK^NS LYNUY.W4Q]OD$A'AKRZN&8;;$1?/[4=3L_ MZFKLDF+C2XI-+BDVO:38[))B\TN*+2XD=E3'=E7']CGUX%ZV11@QDI!U[=>Y MH%U-J_YG&UANS[,'YO:P'M];00@M[]AJ7*,%'<\]MIK467FNE6JU: MOAO=Z9RLC[K]6;=F?2Y;Q**C>Y,O^LL[Q-8)X2#%*^FJ<^W)UH$5/5LQ$72C M+_1G*F1[H(>Q;',Q4P9R?T6IV$^4@ZIQ#OX!4$L#!!0 ( !9S(UA18-!% M%@( +4$ 9 >&PO=V]R:W-H965TDV+0^=HG0_GAU\@%5C,]N$]K^O;0C+IC0OX+/O/O[> M<4?:*_UD:@"+GALA389K:]L5(::HH:%FIEJ0[J14NJ'6F;HBIM5 60AJ!(FC MZ(XTE$N /2<"61AC+#Z_EJL_#^P>$7A]ZV+,.1%P0""NL) MU+V.< ]">)"3\6=DXNE*'WB^/M&_AMQ=+@=JX%Z)WYS9.L,?,6)0TD[8O>J_ MP9C/TO,*)4QXHG[P3>XP*CIC53,&.P4-E\.;/H]U. MPG,L!\1@0!]W#14'E M9VIIGFK5(^V]'FC,L*K;6FL@)7 M=FM28MT-WH\4(VTST.(W: EZ4-+6!GV1#-B_\<0IF^3%)WF;^"KPNSK.4+R\ M07$4)U=XR91N$GC)&[Q+:=Z@PPO:2L:/G'547,IZ@"XN0_W7*.[$LC;?2< S:/#\G9^+AVMF6KM_X4>)%^'EE08 MN"2.G+52 [H* V-0H3IIAZZ:=J>97 ^M^-=]&.@'JBLN#1)0NM!H]L%UM!Z& M9#"L:D-C'I1U;1Z6M?NO@/8.[KQ4RIX,?\'TI\I? 5!+ P04 " 6VP/$ZC( M;%[ ]IS[^))$;>N:R<,"*K&?#OS!\>&9 MKTMM'H:SR8:MX2OH/S9/$F_#3DK!:V@4%PV1L)H.YOYXD1IZ2_ GA[TZ.1/C MR5*([^;RN9@./&,05)!K(X'AWP[NH*J,(#3CGU;FH%-I&$_/1^F?K._HRY(I MN!/5-U[HVSB<,(R\=QB"EB&P=CM%ULI[IMEL(L6>2$.-TLS!NFJYT3C>F*1\U1*_ M.%ORBFN.--$=E1KZ@[%*1WYH"BG/^(9K?^1 Z6!#$E M@1>$/?+"+B:AE1?VQX2LI*C?XK#GNB1W-B,@R5_SI;+O?U\*@),?799OZFRL M-BR'Z0 +28' MA0;B^RA1&BEY)=16@B/M^!6LL1'HFS%Y*24RG0*(/*+1YR_7GQNB2[%5"%IU M@RIV4"\Q:4>,G+PD]B7X$,VSL_U?U, T427?&*/(%?&CB&:^9T[)B,99B*Q&-8N^4'45+$Q3T/(N0+,+_C 9Q1!(OID&6DC@+J!_YY,6&\HJ$ M8493/S*G)*6C*#7*J!?'U/<"=\X25.V3'@C%'83B7@@]XC"0;_W@$FYZ!5S& MS0^S\@F6WE1;("L'/G8MM@#T(W_9!Z?F)C[M$T#$Q]8B%N78_/VV)5 M9#2BGH=A'-$P/$;QQ"44CQ%##2;N7A*2!U!J3)A!-6MRL'#,)11<$T2D,APT M33%/-,V2TV9)20,6 ]F(!E%F3RD-DK0O$4F7B*0W$?,S>^Z7YLQHY<=JV,MKWL#$:@L+?9\6-[G$. ^D#RO^&,190);.@'8-*TT3BA MHY&'L-![ /?)6K@7E@23X\UT&Q9V('O5R6PY,%"J?[ MVJZ)B#/3=MPNU;UVF^C<+6!OY&Z-_8+0Y)B_"E;(ZMVFV"FE6PW=18N-7<>6 M0N,J88\E;M,@#0%^7PF&PO=V]R:W-H965TDGFV:T0'+X72=A*LG2LOP]!F:RR$/:<2-9\LR13"\=:L0EL:%'D-*E08 M1]$@+(3403JN??%=V++DLD!M)6DPN)P$5]W+:>+CZX!?$K=VSP9?R8+HV6]F^22(O"!4 MF#G/('C9X#4JY8E8QM\=9]"F],!]^XW]MJZ=:UD(B]>DGF3NUI-@%$".2U$I M]T#;[[BKI^_Y,E*V_L*VB4TX.*NLHV('9@6%U,TJ7G9]V .,H@\ \0X0U[J; M1+7*&^%$.C:T!>.CFDW=K"-YUC_C\^9+&M MXOA-\30^2OB#-N<0]SL01W'O"%^O[4"OYNM]P#?3&ZZ>S"O<2)LILI5!^'VU ML,[PE?ESJ.*&,#E,Z,?HTI8BPTG &>%DIL&MJ;)"Y_84N/-8+-"TW8=;7)B*9_G= M\R"V?#T=&BF4A<_02SK]7M\;@\YH< %//*-G4I^5AC*T%KK#3MP?0'?4B>($ M;J66?)=S6!'EUGN3X0#B7J>?C."1_!W=JYA9AU$G'@R]P:%)%PXU.-R;C@+- MJGX#+&14:=<,2NMMGYFK9KK>PYLWZDZ8E=06%"X9&IT/^P&89NZ;C:.RGK4% M.9[&ULE59M;]LV$/XK!WM$VAD26> M*1?M* P'[9QQV9J._=Z=GHY5:067>*?!E'G.]/H-'6-6T80OBTEB5U\RD0PA#5 M#)'7N[K(:_F)638=:[4"[:A)FIMX4STW*<>E"\J]U73*B<].K[AD,N9,P+4T M5I?D;VO@PP.;"S1'X[:E.QQE.Z[EG5?RHE?DC>!629L9N)0))L_YVZ1;HV"T M4? \.BCP#[4\@:@?0!1&W0/RNHW!72^O^XJ\6Z8?T3KSX![C4G/+T<#?LSE9 M3Q#Y9Y_)E<3>?HDN; R00$G: )_!R-Y819.D\9U[!DHB0S50I< M+NFL"C-;,BZ\*RB[P3"!^ZP_J-]^ZQ$R)1*PF9,L*/&Y7&QO.Z;;CMUM!.0F M&*8)1D#;"4)9.'53_H3),5GB#M>[VI_!AVM)5ZC2D,'F"+:>NB!/P6?OJ&]; M1WWVCGJQ?>.]!I>-PPAQF,]1-ZB#WZ 3!IW!*4W7.%' V#H-V#H'P3#/=7DI"1OD6?8,V"\/>CS M-3%(#_:2TG[CVGV1/ZC,_L@_4,C_CV8$$8//06E?1B!X36L"NR;L9&HE8>Y> MF!.X?"JHXM---8U+[YRM(>%I2B)3K?)]HCSP&+E':0H*ZHHI8TOT,-:NNH-5 M$#,A@+*%3"Z(0,T%7S#WP!BJW#9S1^Y+[Q_0P\F$79_\ JA;Y%TYWWQWOH%/ M]'=RN 0E$=;(-&$N"GK=4?4-!YZ&I9:,:DALIE6YR"AMEM6.@6$PC$8T.OP^ M*$L6[\"Y O$!9 X:9 X.(O.J"2ODR$RIT4=S'ZH."MJ/JI\<^&>IG+ON-(\I MN.2B+Q0B#5_FCMQ7DVM9E.X=N\$E"HB.:LMW'/PRRV=4!UQ9H0<,UW5I@K2D M&YW'ND$TB&BRR>MFZ[:4/.8%27= CY4NE*9H$I [+B_9.KY6C7OB.TI"<4MJJ[6IVFZ9U5O5J6_*JXZ569.&> M)($IL88G0ZJWNNHBJX55A>_J!T!G:>*\J!>N N:5G[Z'U!+ M P04 " 6['=YS29UMI?JJUYP;\J.N>^6ANS.9U.=;'F M-=,GJ,X*YU074VI[R?3FHEF-#MS8U_4[$RVIA(-_Z*( M;NN:J=L+7LGM^2@8[0>NQ&IM[,!T=K9A*W[-S>^;+PJ]::^E%#5OM) -47QY M/IH'IQ>)7>\6_"'X5A^TB8UD(>57V[DLST>^=8A7O#!6 \/G.W_-J\HJ@AO? M=CI'O4DK>-C>:W_G8D>GF!@,:9?@)(>S86K[H1^0 MT//#8!]*0'//I\DO;%/X'N=D'!V$D![:!*%XO4 -Z&T^=U;]O(,Q3"Q\L$S3 M>S!:ZW'H,+KB+A4:0(9J A@/D+V7DIHPS&I43SON_!1VE4L/[.\6@F2I9.WT M'$^C70;;U'Z\N,^@_2J8MA:Q4!NFS+ZS%$H;\@V8&R" P27X#GF+PPDY0LVX MIV;\9&HN!;**DPI'4DG$7:EAKM0,4?&H[F$JWB"JE9+@5,&4NK6((;G;QH4L M7;%_9-K5/L61,G",%45;M[MV;?GP3[>36Z9/R0.FOW>6Y@BTV&@F7)5Z:9VB,8PI.^!/;#&+["2,O02I^?A"= M)F'FTG<&%"=!^4M7;Q0K M<5W"56'D,.!B$.W[&LMX]!/$GD!6DT4 S^#WJY%^6Q MM16AY4<./6"1IPY !)U'0P"ZQ0Y 2A&4K5D1, _M#O0H9EZ6H\1DV(8PQ*+0 M2R,Z(1%J!8W^,Y0I*G9^!R5-L\D>WV-@)JA0+CWV;MA8,>82)4& :7R,T$E/ MZ.3)A.;:B-IE_;(U]HIPCR_\!V[1&C5& M/#^]63J'_4BV'JSP<8Y[DR]W1' M?[55@U7@BMM?@;*KH+ :V5=L7XE]I?:5D;>]$X/6[5'MQW8'(QS=?O=UIU&$ MY S<&92'R> >3@\NP\C^E;ORHP+:NM?=B_O1_J]BWEVF[Y9WOR0?<>40C285 M7T+4/TE1@U5WS>\Z1F[&ULE53;;MLP#/T5PAN&!@AJ6\ZEZ1(#2;I+@;4HVET>ACTH-A,+E25/ MDION[T?9B9<":8"]1")-GG-(A9QNM7FT!:*#YU(J.PL*YZK+,+19@26WY[I" M15_6VI3,G_=B#SA5\)FTEM:X/P<[ZRSM#?Z->Q+K0D@^,D?K0N;<4SG 4T.Q;-$P;I MNS?Q*'I_HH1!5\+@%'KZJ>:&*X?85K#EQILD_YC0DU#'A<(M1;UX1SB[5N * M75LBM#V@1\%RA:9[F //J/$P6'#)58; ':QP(Y2B+H->0X5&Z!S>0CSN7TP2 M?TGZ$X*8Y[GPH\LE#6]F:BXMQ*P_'B00QWT6Q;"47)06*BY(T;@_&@QZ_AP/ MA[U#.J2F'!(QUI],6,N8C"9P[ G"@YDJT6R:S6$AT[5R[7AUWFXYS=N9_!?> M;K8;;JA<"Q+7E!J=CX&PO=V]R:W-H965T M'@NEW2+*O2]O MXMBE.1;"#4R)FG9VQA;"T]3N8U=:%%D(*E2<#(>SN!!21\MY6-O8Y=Q47DF- M&PNN*@IACVM4IEY$H^BT<"?WN>>%>#DOQ1[OT7\N-Y9F\1DEDP5J)XT&B[M% MM!K=K"=\/ASX(K%VG3&PDJTQ#SQYGRVB(1-"A:EG!$$_![Q%I1B(:'QK,:-S M2@[LCD_H;X-VTK(5#F^-^BHSGR^BJP@RW(E*^3M3_XVMGBGCI4:Y\!?JYNQL M%D%:.6^*-I@8%%(WO^*QK4,GX&KXBX"D#4@"[R918/F7\&(YMZ8&RZ<)C0=! M:H@F'#<=I" MKAO(Y!>0U_#!:)\[>*,SS+Z/CXG>F6-RXKA.7@3\: X#2*8]2(;)^ 6\\5GS M.."-_X?FC3B2Q3RLK!5ZCV'\SVKKO"6__/N<^ 9[\CPV?T,WKA0I+B+Z2!S: M T;+WW\;S89_OL!\0F]80[OB*IW(#5LT$J3@= 9? W^(T6K UKZG)I3 M0*9 >"NDA2]"5?B!S\'3EJZ*+5HP.R"KI@_] M;:AJVG62J(7-'.R9#^UEE95ZWP13KG[1F 79+$"MQ@!X:GO.(-I4.86-EBG"'U'N9\HF@Z$2? M:VQ_W*NTI&I 63\6 TX\Z$&U,3I M=:\]&F_O/+KJ$B^02 M)E>]R54;,[T..'<8;$.*V#M,*#4ZD]U"UKE,<]BC)OY*'>% K(#J9D& KTT? MC*5*6<3^$86%,GAD$!(^H9<=?C]G.!6[J2U^JX0";\*2%W9/;\53W\L?E3IH M3$!X'-"H+T-QA>^T:P#D+=PW"7.:3%%NK=)VT%8&8S8\5S( MUR-K^AI1P_!UZ!.]2*]YN^':HUNZ9'M1WO .Y!(/;$'!US=9,/M.P]Z06 JV MZ"NK.4)J+C';6I32TR[GV")#8%$J8%_4!RI7:@<$>AP\$?TZBIXVGB31E>@JWQ M]*Z$84X/.5H^0/L[8_QIP@G._QHL_P-02P,$% @ %G,C6)PT]#U7 P MYP< !D !X;"]W;W)K&ULE57?3]LP$/Y73IDT M@<3(C[;00EN);DSC@:FB;#Q,>W"32V/AV)GM-.R_W]EILX)*QU[BV+[[[OO. M9]^X4?K1%(@6GDHAS20HK*TNPM"D!9;,G*H*)>WD2I?,TE2O0E-I9)EW*D68 M1-%96#(N@^G8K\WU=*QJ*[C$N093ER73OV2\1*EX4J"QGP27,47L[ZS]P;?.39FYQ^]4\P4W>@8.+U7"^"\TK>U@$$!:&ZO*C3,Q*+EL1_:TR<..PS!ZQ2'9."2> M=QO(L_S$+)N.M6I .VM"JO0#$X@B9+> ;Q>I[;G\7K_4COOU/ZX6AJKJ3A^[M/;PO7WP[D+'@)@WE.SY=+F51RC<;MM9%7FOFCH!PR0T^JR^$3 MZI0;=.;T<*2/H"J7<0/QJ _]:$AB:(Q[\.GUK+]1D8M;*4OEP)DXI):$44 : MDO.AGXW\K#\X@X7GR!JF,T/D4U&[(\RU*MN:82*M15[@N,6549=YZDZF& M.6Z6?_#%0P\^'/D 5+P\=5E#9LG?%DQVRJ@;/5+[:RUV2YDJJ'<.<30"8NN& M?;FX!.;D&IV>4]/0 M;5MI)U95_BE?*DN-P?\6U(E1.P/:SQ4=R6;B G2]??H'4$L#!!0 ( !9S M(UB#Q[1VGP, /8' 9 >&PO=V]R:W-H965TM&)R!BTA*HJ3,-I!DZQ:@S8*XVQZ&/= R;0F51)>DX_;?]T@Y M6I(Y[E[$X^GNTW??Z>N[>TLJIW;7L2QK6K527NNMZK'-VMM M.NEP:S:QW1HE5R&I:V-.J8@[V?31?!I\=V8^U3O7-KVZ,V!W72?-ERO5ZOTL M8M&CX[[9U,X[XOET*S=JH=P?VSN#NWA$636=ZFVC>S!J/8LNV<55ZN-#P)^- MVMLG-OA*EEI_])N;U2RBGI!J5>4\@L3E05VKMO5 2./3 3,:/^D3G]J/Z&]# M[5C+4EIUK=N_FI6K9U$1P4JMY:YU]WK_FSK4DWF\2KX. MR6Z^4!N4V,%-/S38*S7Y()>MLF?3V.$7?%Q<'="N!C3^"EH)[W7O M:@N_]"NU>IX?([.1'G^D=\5/ M[JAW/@&0%.>7("+QG+30)>\HUR[]56&]?T M&_C[8]]PSN>G!U7IG MD8T] ^R*ZI;*C)UYXA'!P_]7S&,W>CQ\;*CVTE1UXW!B=T:V\-;(SE>]^&*= MZBR\ 9:4)"LR;XF,4):@E0I.LK1 *Z.,L)R_0/FUE=9"24DI4B@8QC+@!2=< M<.!)1EA6O,A8H#1-A73*E B,8I03FF!6S@E+4T@8KAF#=])LU(^+"JG#[UO7 MH.&+H[3TBQ 4? +#19"R*'#(G#+V4+1J&RPN3)R%"4->5)S!)"=)6>":),B7 MH\$+4N3HN1U%>@,)RI"SU%LB)T6:>T$(S; 8R@>[%"0KV2CQ?WZA2:LMMO*; M@GOF# V.$A2E%SE'CT!#")10'!6;(1$4.R>I8)"6J$$)K$2 _#6E,\)1(-0N MX5 0SABPE*1I>53C',NDX8FP> 48]J@406I*"45NQX8\?G(6=PJY M^QO'0J5WO1N.Y=$[7FJ7PUG^;_AP([['TAO\.5JUQE1ZGF<1F.&6&39.;\/) MOM0.[XE@UG@Q*^,#\/U::_>X\1\8K_KY5U!+ P04 " 6MD7-NCU,>W#@ *O&9K8)W;^?;0C*I*0O^,Z^[[OO M[#OB3JH772$:>*VYT FIC&F60:"S"FNJ)[)!84\*J6IJK*O*0#<*:>Y!-0^B M,%P$-66"I+'?VZHTEJWA3.!6@6[KFJJ_:^2R2\B4'#>>6%D9MQ&D<4-+W*%Y M;K;*>L'(DK,:A692@,(B(:OI*-YMX/KJYG^:P-8Q%A.-Q42>=W:!]YSJ7ZN]-LH^_N]S.GN^#^?Y MW$ L=4,S3(CM>(WJ@"1]_VZZ"#^^H78VJIV]Q6ZOOFDX0P6/3%"1(6R5+!6M M;^';GK.2NJX]I[EG77A6-W.'].X^#./@<*HE.&D)-UU?J"J9T,"QL+!PVELSWFSLD..R@78\T)*&PO=V]R:W-H965T7NTK;%IH"*B NV@UH] MV3)>$:F&/+?%C@/)#*DJ;1?CT*X(K:UX8>9N>+Q@>UG2&FXX$ONJ(OR?:RC9 M<6DYUOW$++$C.=R!_+2[X6ID=RH9K: 6E-6(PW9I73F7J8,UP2#^ MI' 4)_=(N[)F[*L>O,N6%M8K@A(V4DL0=3G "LI2*ZEU_-V*6IU-33R]OU?_ MS3BOG%D3 2M6_D4S62RMN84RV))]*6_9\7=H'0JTWH:5PORB8XO%%MKLA615 M2U8KJ&C=7,FW-A G!*4S3G!;@CLD^(\0O);@/=6"WQ+\IUH(6H)QW6Y\-X%+ MB"3Q@K,CXAJMU/2-B;YAJWC16F^4.\G54ZIX,KZ% ]1[>(-N80/T0-8E"$3J M#*U8+;E*([H2 F0S]YZ2-2VII K3$M&K!"2AI7B-?D6?[A+TZL5K] +1>L MV%XHEEC84BU4F[,W[:*NFT6YCRS*0Q^4]4*@M,X@&^$GY_G1&;ZM M1%R;V/ MTK5[5O /=KA ;O &N=CU1M:S>@H]-'1WS)W_9SU]MO5>,+QNRWA&SWM$+Z&" MY#F'G)A7G6V[O?#YO8*B=Q(J\64LZXVN/ZZK2^*EV)$-+"U5\P3P UCQRU^< M$+\="_F48LF48NE$8KWD^%UR_'/J\4AQBSXMFCK^P#Z=1 M'8&%L[D_Z\.2AS '!X&#W3XN'<-%81 Y':[G9=!Y&9SU4A4KEM?T7\@0D4@4 M=*>^77+,[;,Z/[KEIA1+IA1+)Q+K)2/LDA'^I'H03IF<*<62*<72B<1ZR9EU MR9D]KQXTM.#TS?3]R,&#>C ""^=!Y WJP4.8$IOC8% .'L("[/L!'J\&\\[' M^5.K 3L 1U*=9,=*J(N%=%/J@71E,F94BR94BR= M2*R7' =_/^SCYU6#EM?[4$?^' ^/!Z.XR T&N&0$%^+ C0;GB'0$%T2NXP_/ M!_9)AU,!STUK*="&[6O9G%R[V:Y]O3)-VV#^VKE<.2/SB6YW34?U7;[IE3\0 MGM-:H!*VRA2^F*GRQ9OVLQE(MC/]U9I)U:V9VT*U[, U0#W?,B;O!]I ]R= M_!]02P,$% @ %G,C6"])$NPR P 0P !D !X;"]W;W)K&ULO59M3]LP$/XK5H8FD!AY:Y.6M9&@" V)(51@^S#M@YM> M6PO'[FRW9?]^YR2$M W5$!5?$K_<\_BY\]F^WDJJ1ST#,.0IXT+WG9DQ\U/7 MU>D,,JI/Y!P$SDRDRJC!KIJZ>JZ CG-0QMW \R(WHTPX22\?NU5)3RX,9P)N M%=&++*/J[SEPN>H[OO,\,&33F;$#;M*;TRG<@7F8WRKLN17+F&4@-)."*)CT MG3/_=.#G@-SB!X.5KK6)=64DY:/M7(W[CF<5 8?46 J*OR4,@'/+A#K^E*1. MM:8%UMO/[)>Y\^C,B&H82/Z3CL.$W<8[HW"6( &&,JZ/R!?R<'=!#@^.R %A@MS/Y$(C M@^ZY!D7;I=VT%'A>" Q>$7@CER0 M\X6O\#V[?4QNI '\74LJBNA<,D%%RL2T'I)?UTA K@QD^G>3\\5JK>;5[!D^ MU7.:0M_!0ZI!+<%)/G_R(^]K4RCV1+86F+ *3+B+/;F7AG(\V%46-7E;4$0Y MA;U@EDG@^?G&+.M^;)OYW:X7O9BM*6Q5"EL[%5Z#UJ>$SN5(C/F#9J4=0,:?FF M-%?5FT3%RGI=L(VFP ,R; M,ZS105D#G)](W->R8ZO JNI/_@%02P,$% @ %G,C6/P+1A7F @ 4P< M !D !X;"]W;W)K&ULK95M;],P$,>_RBE,:)/* MTJ:/&VVD/H! VM#4,7B!>.$FE\::8Q?;2;=OSSEIL\+2\H8WK>W<_>]W]OD\ MWBK]:%)$"T^9D&;BI=9NKGW?1"EFS%RJ#4KZDBB=,4M3O?;-1B.+2Z=,^$&[ M/? SQJ47CLNU.QV.56X%EWBGP>19QO3S#(7:3KR.MU]8\G5JW8(?CC=LC?=H M'S9WFF9^K1+S#*7A2H+&9.)-.]>SD;,O#;YQW)J#,;A,5DH]NLGG>.*U'1 * MC*Q38/17X!R%<$*$\6NGZ=4AG>/A>*_^L([L$&P(_IRI1[][,IX4JG MUZSC[N"UV; ()QY=,H.Z0"]\^Z8S:+\_0=FK*7NGU,-I%*EFYNJ:PXG:? A%S;ET/:'5VU\&IBU:9LFRMEJ0F7PY1>/=3.@+XG2MG] MQ 6HW]'P-U!+ P04 " 6?H9J/#3#A5-HO M6E=8ST')4BJ>5V0=04Y8^<!7!'^?$#Y#""I"\%(/844(7^HA MJ@AVZFXY=YNX,5:XWQ5\C81!:S73L-FW;)TOPLP^N55"CQ+-4_TIK( MX0Q- M(0&RPC,*$F&6HA%G2NAE1 ,I096VKP3/""6*:,SI&!0F5*+P SI'=[=C='KR M 9T@PM#WC"^EQLNNJW2(QI&;5.$,RW#\9\()T+7VFTDT82FD#?SQ;IO,Z[Y/_]KZ3C*#>+('5 M"XYO%C07/'_:(&NB,C2R6Q4$^C6826O_W;3ZI7[8K&_NQ(XL< (]1U]Z$L0* MG/[[=ZW8^]B4^K<4&[^EV.2-Q'86*:P7*3RF7B^2@(0O&/D+J6Y2K/1?<91L M5HUNG66[GH4@7*!'P.(<6-/1&Y9^8^O7U)]5OW75ZKJK[34YQ 1A.]@%C0]! M?M0*V[NH28-4' =>C=K)3E1G)WI%=LH<2*R(G..RDO$Y*D#8@LP20'Q&R0*; MD<;;+3J(N;T5<9FB0TP8AWN@\2$HBH-P+T.'H*OH,MY+D+M5'/0!7=BJ+/5& M6#)5'OW:6A?^@:UW>_9AJS-J-=C'^J%0UO4G^?*5<8W%@C")*,RU*^^BK0,6 M9>4N.XH7MC3-N-*WAVUF^K$#P@#T^)QSM>D8!_7SJ?\/4$L#!!0 ( !9S M(UBC^NN&'0, (8. 9 >&PO=V]R:W-H965TJ#22Y@-8F9;3[Z[V<[:6 J MI!HJ'2_$7_?Z'/L>?&][P?BCF !(M$R33'2LB933EFV+: (I$6=L"IF:&3&> M$JFZ?&R+*0<2&Z,TL5W'\>V4T,P*VV:LQ\,VF\F$9M#C2,S2E/"G"TC8HF-A MZWF@3\<3J0?LL#TE8QB O)OVN.K9I9>8II )RC+$8=2QNKAU@3UM8%;\I+ 0 M:VVDJ0P9>]2=Z[AC.1H1)!!)[8*HSQPN(4FT)X7C=^'4*O?4ANOM9^]?#'E% M9D@$7++D%XWEI&,U+13#B,P2V6>+KU 0,@ CE@CSBQ;%6L="T4Q(EA;&"D%* ML_Q+EL5!K!FX[A8#MS!P#>Y\(X/RBD@2MCE;(*Y7*V^Z8:@::P6.9OI6!I*K M6:KL9-B'.60SJ*$^1$#G9)B 0"2+T27+)%=GAKI"@,S';B@9TH1*JM8<7X$D M-!'(.T%'B&;H=L)F0JT2;5LJ8-J]'14@+G(0[A80W]G\#+E>#;F.6T=W@RMT M?'3RMQM;\2K)N24YU_BMOTY.!RC-QJ@'W(1R%@'Z,4SHF.C@J*'/RZF*$XC1 M+4WU.C9" S4E1B2/GOL;Y1M=2TC%PR:".9#&9B!:6BTQ)1%T+*4= 7P.5OCQ M _:=3Q4TZR7->I7W?Z'93=DLDYL(Y%OX9@LMY7G8; 0!#MKV? .T1@FM\5;0 M7KF!&AI(PB5240[HOKNDXJ%EXN44XU/7WT2I$MJ.=^*5Q+U#"3UO#S3]DJ:_ M_]#S7X1>P_.;36=SZ 4EM.#=0D\94A9OPEZ- :,G(+SBG)LEF>9_UE%CNXXJ MH>T88."U+P <@IE= N$9- MHNJX5YD!KGR1WT%0WG9!56/;-=16Z0*N'XJF<&7FLBO35?:!WRS]J!!5XX6H M @\'6YXGO,H0<.7+_%Z:J@91H2E[K:K0%=HWPL&PO=V]R:W-H965TWV,.W!@2_!JK&9;4+[[V<;BFA*HCWL M!6PXY_@<7SXG#1=/L@!0Z+FD3,Z=0JGJTG5E5D")Y06O@.D_&RY*K'17;%U9 M"<"Y)974]3TO=DM,F),F]MN=2!->*TH8W DDZ[+$XN4:*&_FSL1Y_7!/MH4R M']PTJ? 65J >JSNA>VZODI,2F"2<(0&;N7,UN5S$!F\!/P@T2E=U M55'0RZ(P1=>88I8!6MG]<\O:36)F^QPM>%EQIG$2\0TB;*>;7!"0Z'0)"A,J MSS3J<;5$IR=GZ$0CT$/!:XE9+A-7::MF0#?K;%VWMOP#MK[SW07RHT_(]_Q@ MA+XX3K^!]2&ZJR>HGR6_GR7?Z@4']&Z[N"]H261&N:P%H%]7:ZF$WH>_Q_*U M@N&XH#F;E[+"&*?'TSU_(ZA9&$[V_+F#(F4NB&]8 M; F3B,)&\[R+J0XHVJ+;=A2O;-U:/[R'_0( (@* 9 >&PO=V]R:W-H965TZ_?4[)S3C1XC6CGTA=G+OW7OG7+CN0L@G-0/0Y#GFB>I9,ZW3,]M6 MT0QBJDY%"@D^F0@94XU;.;55*H&.S:=:7/##KLIG<(0]$-Z)W%GERQC%D.BF$B(A$G/ M.F^<]1N. >01CPP6:F5-C)61$$]F1:0ZR^5QDN,K2J,Y@&/%,IC:!G88=AP&GZ[:\]7/=1F>:.'5NFA5>OA MH](,VQH]#"B3Y)'R#*J<%"S>BI..%[0VC-2F>J,1KS3BU1JYS1(6L11;$AL- M#T2F0J(OM5MAP_OSM.GOY6BUI_/K/5554I^5M MB+17Q@0SH]U2.<53(QPF"'-. _0HB[&GV&B1YI/#2&B<0_+E#$=%D"8 GT^$ MT"\;,XR4PV?X&U!+ P04 " 6J:ALB7=:2)=R"OF^OI>GY TM)&^"*"HXD M5'/O;')ZGMKU;L$#A;7::B,;R:,03[9S5F!^=X M<(X=[W0/[UDCI*8_H4070NDQ7ST^',?;:C]5+2E@[IER5B!7X.7OWTWBX-,! M=]/!W?00>[[HP.RDKDWN! ?T D2.6>Q)8D=BS\\JQ^$TS?S5B'0X2(=_E2:5 M!CDH(UU+T2UK5)D3X$9&][&GC;;,) G>8R8:S$0'S=P)3=B86+0C-@DF\6Q< M+1[4XH,U\5EI:DZJJ8E+0B5Z(*R#,?'X#2HC&3PF_Z,RDIW\X#"(Q],S&Z1G M;U,9L]W*V+M7Z6 F_;?*2'?.1!HEX1]B_M:59U^/KT0N*5>(065@P4EBS,K^ M1NX[6K3N%GP4VMRIKEF;1PRD76#F*R'T:\=>K,.SF/\"4$L#!!0 ( !9S M(U@T2IZ-Q00 *,= 9 >&PO=V]R:W-H965T7!D+((O,*0I=['E#-R*4.;-)=NU>S"8\42%E<"^03**(B-=S M"/EFZOC.MPL/]&FET@ON;!*3)W@$]2F^%_K,+5$6- (F*6=(P'+JG/FG%WB< M.F06GRELY-8Q2E.9<_ZJ48Z:. MV\??T*^RY'4R%LXX@HBS_)R]%(;8<_'Z+ RX<\+X.O<*AER6:1Y:E=4D4F4T$WR"1 M6FNT]""K3>:MLZ$LG<9')?1=JOW4[(HRP@)*0G3-I!*)GB$ET?M+4(2&$O6. MT"_HT^,E>O_N"+U#E*$_5SR1A"WDQ%5Z_!3%#8JQSO.Q<,M8'_GZ&.'!!X0] MW&MPOS"[7\&\S=W569>IXS)UG.'UVO (%>@S"1/X@,ZD!)VWS@O=4#*G(544 M)+H%(A,!"Z0)]P!!(@1E3YG51\Y$>>&<2"K1EQL] +I6$,F_FXJ31]-OCB9= MKJ)8@U.+.??_*'WJ]-I;($5BM78$78$R!] M84/$HBE((U)7^E@"JR4]+),>'M2Z&]HLG"6P6N%&9>%&>[$E31]8\(J6.5M< M'F>OQ( S)?1[L:D(HQWV]M[P>]<">\-F>H_+@,?&@"]X%/$%5:_H+H_PRRU$ MJ.4I[F^)*-\8]S53H.NAT$/ZGGGI:1\LY0JB9,)%)D2Q\CQWBY]!P/O+K_.46D*K5Z>2@[A_6.O! MJFZTA58O7J4;\7X?_O[3>ACLT>@V&+4WNKB2;-@LV?99$AV;8?.(G>?U1WR@ MPY5R M3Y1)%,)2NWG'([V01+XCF)\H'F>;:G.N%(^RPQ60!8C40-]?.#,C"J\$^T43O1QZ/0\2G).4,)API65N#EPK.!ZA)I0I^(EKG1-V E]@ MA(HN.-&8 %%PCDENQ:D#8 M.84P"%OP,!W!\=')OS*^<:[R,*P\#)UN>X_NA&N4J#3<&W:8%B2#IQM,9RA_ M[X*L%;,YU!'*.F*V,]4G<*8 M4 F/A.4(3]_-0IAH3-5.YM8!F-L5<[OV>-^83^%6V$PSW])%*G*N=Z%NQ+I. MS-X8JZ@5#/S5#H!.!="I!3#):5*/P[=UO"1\@6 &"B*37;O7*KWSH+H59_<@ MP>T>@/FL8C[[R.!NQ/I;P0T:O=W1[54$O5J"*Y&F(J'Z!7YD[AJOR]U:J7<> M5;\"[1\DO/T#,#>#M]L_^,@ EVJ]K0@WVXW^?R'VM\J1+>TW1)I:H8#AW)@% MC3.3AG)3+3<=+3)7H69"FWKGFDOSAX'2+C#SJ?)?H+4$L#!!0 M ( !9S(UB,?S4B^00 .\; 9 >&PO=V]R:W-H965TQ"K!3^HD#+R(( \1!$6 MSSE!:V7!X]T%ZCX@;U:[/&.K(GZMG\0^L[.47P:$28I9T"0[=*ZAE>W M;N*06/Q#R5&>7(,XE0WGW^.;>W]I.7%$)"2>BB&P_GLBMR0,8R0=QW\9J)6/ M&3N>7K^@?TJ2U\ELL"2W//R7^BI86C,+^&2+#Z%ZY,<_2);0.,;S>"B37W#, M;!T+> >I>)0YZP@BRM)__",KQ(F#QFEV0)D#JCJ,6AS2TF4!._OB,(TE!_ !?BVO@/OWWT [P!EX.^ 'Z2&D0M; MZ5IH9>T;I 1\"_^= G0^"- M#G(;XKGMXCY)W)$A'#>OLIO@N2UX:SW[_(.N(=^"75YQI03='%129\4!P5X M-@>I?:4$DNST;%%-M4S'&C6/%<_[*[G''EE:>F)+(IZ(M?KU%SAQ?FLJQ$!@ MI;*,\K*,3.AY\WT$-V1'&:-LUY1O"C))0&):>EI!-'?09&$_G6;28.8ZT$&Y M62G&<1[CV!BC)@M-!4S/12$(\YZ!$IC)$,0)5>J@X"A^"3P)JZ=V#]+!6)&OG1"-?WJPP$5LI\ MGF<^?T.JFP]9EH' 2F6!3K'0.D.0789RVMUS![I5#FDR<^$,-L\^>"('X*!T ME\&5R S-JL$V&,WG+80'41$K&H;RS#A]VRA#*Z?LC&8MZ10: 1K7VD[4ET%4 MNL.95PO^&JLZ+)9U:%[7R^SW.<2R61,:47I_EH'0RCD7,@&.WY#WH%&4]"[- M0&CETA3*!':3)N>8KRXFT%@KN&IO-YFAT:AE^A7" YJ51V_FJ\N0<6T>-MA, M6P(MI 4T:XONM#>HJ,C0.F@]6&@%:%QSNU'>O*DM)DZUU*^QNJ-B=4?FU;U, M>6N-3SW2R'IFH+Y?92BT1 9LG1E_-077Y5>A"_&A^CZ!Z]0V$\P#_6R7%VL[,J_M?V*Q(Q=K#^NI M_G6OJ+YHS&7078>AT,HY%TH!3=^2] ;:I\A*\QJ['JC0)JB;-CE'>G4M 9WQ MN-;;Y\S*41:R YEE1V_:JTN0JOPPFI3WC M-X7;;,3A+>6:XYFV%+GR704S.-(5YI+X=;I\&ULO5G;;N,V$/T5PET4"1!'(G5/ M;0..L[L-T$V#S6[[S%BTK:XDNB0=)_WZ4I?H2K%18>0EENR9PS-#T9PF#LEL8%, MTS42'*63Q2S_[IXM9O0@XB@E]PSP0Y)@]G)-8GJ<3^#D]8NOT78GLB^,Q6R/ MM^2!B._[>R;?C HEC!*2\HBF@)'-?+*$5ROD9PZYQ1\1.?+&,\A">:3T1_9R M&\XG9L:(Q&0M,@@L/Y[(BL1QAB1Y_%V"3JHQ,\?F\ROZISQX&\MHHC2; MQ@?!Y*^1]!.+SY2&QRB. 4Y#\+O8$09N0Y**:!/AQYB VU3@=!MECTO.B>#@ M[(8(',45P7/- CP!\ MH:G8-8#W(#=P>)#30#=@$Z61(""6&R $47.ZHGJZ<#Y=JIDH!K+5 M V5UXXKO\9K,)[(P<,*>R&3Q\T_0-7]19>%$8*VY7ASH^#/CJ1F+RLSW@Z R:[%T*I:.EN5RO3XD MAQ@+.5F2(A/1/S@K82JB!9+38##U/=]R.T159K9K66JB;D74U1*5=5%6O12L M#HR1=/T"OC&<\GB0K-MC 6Y5D6ZC#J M6]FF@VPU([]BY&L9]:KD!2C6YMG'YW5\"+/5^5IISU7<_7XJ'=F)@PYYE9EK M(E_-/JC8!^/8@S%+-GC;DE69#2]9:-;]RQQ)?NPR+@=H9;5#7F$RM4UD#I!O M-%_X5O*X7#>I>G&70$T&K@T]NTM48>99GC- %-5$D9:H3&$H]:/4EKE0R%_! M'4Z(NM5KP<9VF%.AM4.O^RY\M\8+3]IY3X76SDO=>Z&^^=Y*G57D8UKD0R$5 MWUC]RI&:JQ:YOM/;A0HS#Z*!]@SK_@SU#;J.!/Q61*)5P!?:"@.6X5]2MLN3 MSL :4/3N;IE7V2!OH,K#NKU#?7__GS-V 63#S5:_:$2)_R/*?N.7,VIWF[': MK#'Q[4AK@0#U"F&5'YSD68:1@B_?17LU42W0Z"UY(K1VV+4*@?Z[E2JMX!F= MEQ.AM?-2ZQNH%SAO/B? ODKQ72_HGA-49H$=#'195&L9I-FURUB9A?K29 J=+EN%$7(#;X!LK5^07K\,'!E*K]:9 MP78=J\M*8>99P5 *:VF!M"UZ4=RWU/M1N1/U&&-WXJG0VA'7H@'9[U6AD%:> MC,[+B=#:>:DE"-)+D#=7*-27!I8\;/5VO<),L^EK"8'T$F)4A5(=_AW/[)X, MU79H2->A6@4@O0H87:'Z=P.H5Z#Z-E-HVD.EOV[=2'^#,%2@_-Z5%)(-J4NJ M;V4U.T'!R6C<$DMMM,TOSSE89TNMN#"NOJTNZ)?YM;11FQ>W^U\PVT8I!S'9 M2%?STI/Y8,6%>?$BZ#Z_!@ &0 'AL+W=O]-!6#)0RVD60:5M,RR#,_=J/S3+56< DWFIBVKIG^=0%" M=XWWY4_^"S M8Y8U,W"IQ ]>V&H9G 2D@)*UPMZJ[A,,>1*GMU'"^%_2#7.C@&Q:8U4]%*.# MFLO^R1Z&[[!70.DS!70HH-YW#_(NKYAE>:951[2;C6JNX:/Z:C3'I5N4E=7X MEF.=S3\J571<",)D0;[:"C2Y+D!:7G*V%D"NI65RRUWSW!BPAAQ>@65<&$*/ MR 'ADGRK5&NPW&2A14=.-]P,](N>3I^A?U&[8T*3=X1&-"9WJRMR>'#TKTR( M@<94=$Q%O6[\C.X*]V[1HF=5$C"6X^I!0<'L;(+B] M"=\/SO\&9S[X5+K>Q7S:A3M/9Z9A&U@&>& ,Z!T$^=LWLS1Z_T+&>,P8OZ2> MWX([?,MA+I%["G<]=/HN2DRS<38#G(WC^(AA9R12KKTKV6',Z MCZ99RF\.LY.VF63=W$PUZ:LWW?=W=?XJ_C2IL[FP,@ MVQ92V4F0(Y:G86C3' IN>[H$12=+;0J.M#2KT)8&>.9!A0SC*!J%!1*VKS]#,<^SX M4BVM_V55DQL%+%U;U$4#I@X*H>HGWS8Z= #$LQ\0-X#X,6#X!� 9^T+HS M/]891YZ,C:Z8<=G$Y@*OC4?3-$*YMWB#ADX%X3#YI'56"2D95QG[BCD8=I&! M0K$4?"&!72CD:B5<.+46T++#,T NI&7?8(MK+H_86W9[<\8.#X[8 1.*71(= MO2$[#I$:=&7"M&EF5C<3/]',>W:I%>:6?5099 _Q(0W63A?OIIO%SQ)^T9L> MBX_?L#B*!WOZF?\/?.3A\3/M#%JQ!YYO\')BMR+_G"XL&OKJ?^W3M:X[W%_7 M.<&I+7D*DX"NN@6S@2!Y_:H_BC[L$^6%R!Y(-&PE&C['GDP+;5#\Y?Z.PY;, MR@*C4'1U$OUOHS88 MP/\5BYVF.^E6, EYZ1*D:UBU2M>M:G?;AVD?G/ DL0YP9CM)*^V/GPT40B'> M,3E?&MZ>G^U?;?/8S(Z,?Q5; (F>TR03[:=<5J"RD15VP'F;JS9CPE M4IWRC2MV'$BR$T)S9QPEE][X.&,[65",WC@2.S3E/"7&TC8<>Y@ MY_7"(]ULI;[@AK,=V< 3R"^[!Z[.W(H2TQ0R05F&.*SGSB=\'?F>#LB?^)W" M49P<(]V4)6-?]/O$NI49>K T^-7^FW> M>-68)1&P8,D?-);;N3-Q4 QKLD_D(SO^#&6# LU;L43D?]&Q>#88.FBU%Y*E M9;"J04JSXI<\ER). A2G.\ O _RW >=*&)0!@V\-&)8!P]Q,T93<0T0D"6>< M'1'73RN:/LAEYM&J^333__C]NP_H M':(9^FW+]H)DL9BY4A6F0]Q5";XIP/X9\!3=LTQN!?HIBR%NQKNJDE5-_=>: MWOA&X"_L<(7\X"/R/7_049_%MX2/\G"_(SPRA]_"\ESIC=8,*N^#G#&58?T2/HEZ#N&3=5'UD8^LBHI\_9NI8I7RJ6T9FCOSF5U76"+ MUA1:KPSP^#+CU>HRP2HMLD5K*JU7"MB8.O?=@I\DW\;$&C%]IDL-HVKJ]7WAT_YKON;ZS?X>E%\1:@QQ4>->\(W M-!,H@;5">E=CU8=X\9V@.)%LE^^<+YF4+,T/MT!BX/H!=7_-F'P]T0547VO" M?P%02P,$% @ %G,C6,%+=PW1 @ H@< !D !X;"]W;W)K&ULK57O;]HP$/U7K*R:6FEMB(&D=!"IT/V2UJEJU^VS20YB MU;$SVX'NO]_9@932%/7#OH#MW'OWWCFY&Z^5?C %@"6/I9!F$A365A=A:+(" M2F;.5 42GRR4+IG%K5Z&IM+ <@\J14A[O3@L&9=!.O9G-SH=J]H*+N%&$U.7 M)=-_IR#4>A)$P?;@EB\+ZP["=%RQ)=R!O:]N-.["EB7G)4C#E20:%I/@,KJ8 M)2[>!_SBL#8[:^*'?"F8@A"-"&7\VG$&;T@%W MUUOVS]X[>IDS S,E?O/<%I/@/" Y+%@M[*U:?X6-GZ'CRY0P_I>LF]@D#DA6 M&ZO*#1@5E%PV_^QQ4X<= /)T ^@&0/<36>J++G%:[&&,)F3F9*6RR7NR7?.YEQPR\&0 MXRNPC M#HA-R2N[OKLCQT0DY(ER2GX6J#4+-.+0HR-&&V2;YM$E.7TD^(M>8 MKC#DD\PA?XX/T4CKAF[=3.E!PA]J=4;H\ .A/=KOT#-["SSV<'I 3K\M;M_S M]5_A^U(SS:0%:&J[9MIML9Y=I6JH!MU4[F.^,!7+8!+@UVI KR!(W[^+XM[' M+I__B>R9ZT'K>G"(/9TRP60&A%DRAR67$M\GHA:D LU5WF6]X8L]GVL[JS1* MSD=X@:M=3QU1_1%]BGHF=MB*'1X4>YGGW/43)K"C9+IFHO-R&I+A;FZ:#/85 M=D1%M!=U*XQ;A?%!A3/!>&E(Q7AG[>(7.4^3>##84]85E0R'W"7OHI8$BF:FF;7M&>MH/FTO?7 MO?,I#J!F7CS1--/KFFE\U M#H M.4VX&CDKK=<7KJNB%:14G8LU[. Z'CF>=00)1-I24//8 MP@22Q#(9'[\+4J?4M,#J^Y[]:Q:\"69.%4Q$\H/%>C5R^@Z*84$WB;X7NV]0 M!.1;OD@D*OM%NWQM$#@HVB@MT@)L'*2,YT_Z7&Q$!4!( X 4 )+YSH4REU=4 MTW HQ0Y)N]JPV95F*C#$ -76UL6#(W*B3'N21ID!R@6R.R M4N@+CR'^&^\:^V4,9!_#F+02WHGM.2+^)T0\TD&/LRMT>G+6PMLI]Z:3\78: M>*]Y)%) #_3YL"W1"_IY8]:A:PVI^E47?4[:K2>UM^Q"K6D$(\=<(P5R"T[X M\0,.O,\MEKNEY6X;>SB5(@*(E;DP$9ATC^L,YA1!1F%O[38<$-\;NML:8;\4 M]EN%KV !4D*,(J%T;5+D>+^B2H*.7Z\:E*I!J^J=*5MSX+!@NDXR>"49!+A! MLE=*]EHE+S=+7!\O@Y>'Z/GD_IC MQ-ZA\'E'9FQ!4!4V87<;A"L5%Q^3M 6ZJMKM=OL-JN2@2EI59[ V&3 'V9BZ M[01O3 1\*+;X7:HM?H]RBP_U%O^'@EMP5(^T@P=-1WHHN?C8FHM?%UWL=7"# M\*'JXJ/*;H&N_L$0'/3^474K34L*\ MI7+)N$()+ S4.^^9@&7>CN4#+=99"S07VC14V>O*M+ @[0+S?2&$W@^L0-D4 MAW\ 4$L#!!0 ( !9S(UBB#;,090( %H% 9 >&PO=V]R:W-H965T M.WA.MMH\VPH V:Z6RDZ#"K&Y#4.; M5U!S.] -*#I9:U-SI-"4H6T,\,(7U3*,H^@RK+E009KXO:5)$]VB% J6AMFV MKKGY-0.IM]-@&+QL/(JR0K<1IDG#2U@!/C5+0U'8HQ2B!F6%5LS >AK<#6]G M$Y?O$[X*V-J#-7-*,JV?7?"QF :1(P023S#7TOHGVW:Y5]0Q;RWJ M>E],<2U4]^:[_1P."N+XE8)X7Q![WETCSW+!D:>)T5MF7#:AN867ZJN)G%#N MHZS0T*F@.DSGNJX%TI31,JX*-M<*A2HI9I\$SX04*,"R\P4@%]*R+[##ELL+ M=L:$8@]"2IJM34(D+@XQS/=]9UW?^)6^G_5FP.+).Q9'\8@]K1;L_.SB3YB0 MI/1ZXEY/['%'_ZLG=S(6PN92V]8 ^WZ7633T4_PX1KYK,C[>Q!GEUC8\AVE M3K!@-A"D;]\,+Z/W)R2,>@FC4^CI/0&S#9 MT-EPDPY'492$FR,TQCV-\4D:-,F&*S>U&<^?I2[9(TB.4##4;,4E'&728=X< M,!G=7 _&QZE,>BJ3DU26K/=D&LF+?EG1Y0?&)=#Y6FM\"9PA^^LT_0U02P,$ M% @ %G,C6#(3#YC: @ 0D !D !X;"]W;W)K&ULQ59M3]LP$/XKIVR:-HDU+WUG;:06!D,:4T4U^(#VP4VNC442=[;; M@K0?O[.3A@[:?$!#?$ELY^ZYY_&=?1ELA+Q3":*&^RS-U=!)M%X>NZZ*$LR8 M:H@EYO1E+F3&-$WEPE5+B2RV3EGJ!I[7<3/&XT2"6F49 MDP]C3,5FZ/C.=N&*+Q)M%MQPL&0+G*+^N9Q(FKD52LPSS!47.4B<#YV1?SSV M/>-@+:XY;M3.&(R4F1!W9G(1#QW/,,(4(VT@&+W6>()I:I"(Q^\2U*EB&L?= M\1;]S(HG,3.F\$2D-SS6R=#I.1#CG*U2?24VW[ 4U#9XD4B5?<*FL.WV'8A6 M2HNL="8&&<^+-[LO-V+'H1D<< A*A\#R+@)9EJ=,LW @Q0:DL28T,[!2K3>1 MX[G)RE1+^LK)3X?3A$G\/"9=,9R(C)*MF-VNCZ>H&4_5IX&K*8ZQ=J,2]6U7D%=NU+7KDV#90WGI$0KX#E,4'(1PY^]B2[H%H!M"VBNH'7H M]]N>WQRXZSU$.A61S@N(',&-/>6TIZ,U2KJU"A.@HX=PQKB$:Y:ND @_%ND^ MTD7P[@[I5K/A=_9S[E:Z=Y;5F\9_4GYMOM/:+L[72E#N;"]5T$D5KDN M&E2U6O7W4='5'LV+GX-+)A<\5Y#BG%R]1I>V3!;]MIAHL;0];B8T=4P[3.@? M!:4QH.]S(?1V8@)4?SWA7U!+ P04 " 6^_NO=C.#==2 MW>@4T^K^,4JF0)0Z49W[0:H5^ MSKCPHJ&;NU#14!8FXP(O%.@BSYFZ&V,FUR.O[=U/7/)%:NR$'PV7;(%3--?+ M"T4COV))>(Y"P2F92WMC!63+R6K8@S# V MEH'1WPHGF&66B,KXM>'TJI06N/U\S_[):2?<:.G9_EBF6GW"^LRMC_P("ZTD?D&3!7D7)3_[';CPQ: >.H!P080/ 1T M'P%T-H".$UI6YF2=,L.BH9)K4#::V.R#\\:A20T7]BU.C:)53C@335.F\/V8 MC$A@(G/:')HY?]^>HF$\TW"%MZ9@V3MX#]?34WC[^AV\!B[@*I6%9B+10]]0 M(9;.CS=)QV72X)&D SB7PJ0:/HH$DUV\3P(J%<&]BG'02/A5K@XAZ!U T HZ M-?5,G@(/'3QH**=3F=IQ?)U&4V?[IIXHQ<0"Z108F-W!=MP%NW/3)VNF$OCQ MA2CAS&"N?];Y6^;OUN>W)_]8+UF,(X^.MD:U0B]Z\ZH=MC[4F?-"9#M6=2NK MNDWL4:T%?UTZ@*]2Q$RG\/'6VHAU9I090I?!WEJK* R[W:&_VA:Y']0;A.TJ M:*?X7E5\K['X*VE8!H50&,N%X+])0[S]NF.I#5UU&3.T8B0(*5:H[4!;V75: M>GMEMLGIU@,QC67]XQL+*]%AH^A+4J!X;%5,C8QOX,JY^_2% MR'94]RO5_?]\I/LO:=4+D>U8=519==2X0;Z[3R?I9RM4U G $A67B3O*Y?:O MD]_,&;0A=Y^,.K&-T'\4.ZC$#IYP!2H%JYQTG1!%<*4G]EJMNK-3EQ+\F!^3#U;V6+]I2D;OG.F%EQH MR'!.E*W#/EU2JFRBRH&12]>'S*2AKL8]IM1WHK(!M#Z7TMP/;(*JDXW^ %!+ M P04 " 67Y%VV0MZK D"3AZKD:N456M=7OJ_2 M BJJ+D0-'$=R(2NJL2GWOJHET,R2JM*/@F#F5Y1Q+UG:OEN9+$6C2\;A5A+5 M5!65?Z^A%.W*"[W'CB]L7VC3X2?+FN[A#O1O]:W$EC^H9*P"KIC@1$*^\J[# MJ^WY-XY=LY05F0E!"JHT"Q;\#W$!9&B&$ M-,3C[T?UG^W:<2T[JN!&E-]8IHN5M_!(!CEM2OU%M)^@7\_4Z*6B5/:7M#TV M\$C:*"VJGHPSJ!CO_NE#[\,1 77_6;HW;4$V3I10MD0:-:N;#NF_9Z!?C)D_NM,11ACR=;*GDC.\5J4&2NX)* M((ZN=QO0E)7J/?E E.E1CW^,DZ^%:!3EF5KZ&F=D=/VTC[[NHD?/1)^0SX+K M0I$MSR!S\#?G^9=G^#XZ,=@1/=JQCLX*_BH.%R2:_D2B()HXYG/S$OK,TB/7 M%>JIBFL M/+S2%,@#>,G;-^$L^.AR^C7%-J\IMGTEL2=[$@][$I]33]94L93 \1&U)Y&\ M?;.(PO C:>W5"!FA!Y!XTY-45!7>R/UYQ:=":3RLR';M8!=\:H.;)^:01.$B MO%SZA^.M<:+FP5/4QHE:C+2V#E04Q),!]<2EZ>#2]*Q+W\8F0)[CRT1$3KC@ M!U!FK/-M+RG7BJ EA"I\+7$ 'D"F3(&!XP6<%-3^8?7L8COTXQ M<; 8N76*01M&7CETPF>,EO\MVV:NO3]: M4>>>"Q7-Q_XYM2Y'6EL7*I[.W![.!P_G9SV\LSE"6RHSA'.*.?*S<_V\3.>Y M?U3#5"#WMGA4F$\-U]V3-?0.]>FU+OPZB9T]&^PGNW*S^_R73'\F&ULA53;CM,P$/T5*T@()%2W:;O DD1J=T'LPZZJELL#0LA)IHFU MCAWL2=O]>WQ)0Y&ZY27QV'/.G!G/.-DK_6AJ "2'1DB31C5B>TVI*6IHF!FI M%J0]V2K=,+2FKJAI-;#2@QI!X_'XBC:,RRA+_-Y*9XGJ4' )*TU,US1,/RU! MJ'T:3:+CQII7-;H-FB4MJV #^+5=:6O1@:7D#4C#E20:MFFTF%PO9\[?.WSC ML#,QI".N#I^LC^R>=N M<\F9@1LEOO,2ZS1Z%Y$2MJP3N%;[S]#G,W=\A1+&?\D^^,ZM<]$95$T/M@H: M+L.?'?HZG "FTV< <0^(O>X0R*N\90,YE17XLE.-ZE.2739+Z.Y4 3UIK 9T MY&PO=V]R:W-H965T3# MASH\]&N^%G7U6)1_5ULA)/J462S5 M87D_KW:EB#=-HRR=$\=A\RQ.\MGBJCGWH5Q<%7N9)KGX4*)JGV5Q^>5&I,7C M]0S/GDY\3.ZWLCXQ7USMXGNQ$O+3[D.ICN8]99-D(J^2(D>EN+N>O<&7G'IU M@R;B]T0\5@>O49W*;5'\71^\VUS/G/J*1"K6LD;$ZM^#6(HTK4GJ.O[IH+.^ MS[KAX>LG^MLF>97,;5R)99'^D6SD]GH6S-!&W,7[5'XL'G\274+-!:Z+M&K^ MHL?NX$X:* X]@:D:T#,!NZ1!K1K0$_MP>T: MN*?VX'4-FM3G;>[-P$6QC!=79?&(RCI:T>H7S>@WK=5X)7D]45:R5.\FJIU< MK,2]*KM$[_)VTM7%>QD)&2=I]0I=H$^K"+U\\0J]0$F.?ML6^RK.-]757*J^ M:\)\W?5ST_9#CO1#T?LBE]L*\7PC-I;VT73[<*+]7.7<)TZ>$K\AD\!?BH?7 MB'C?(^(0:KF>Y2G-6=.J^+3*"-FE6VVRVL5K<3U3^E6)\D',%M]^@YGS@VVL(6$1 M)(P#P;2JN'U5W"EZ_]G,U?=%55?(5H<6P1I$_:WPL* T]+%[-7\X'&%+&/,# MU]?#HG$8=CP/.T2/X[:XD'DA[N.TC+T^8^^DC$>S\&5:5-4K6_XMT#M,S&=F M7DM+E.LS;&0_CL(8A\R <4N8XSAN:,^=];FSR=S?Y5*453< (DV4V#=R;*WZ M).K<3Q\D+(*$<2"85@^_KX;YB MH'_1K_VX="-5H3_?B^Q6E']9QV:RM[/G+20M J5Q*)I>M\&!87 +AD$]&"@M M J5Q*)I>F\&'80 CUC$T%:&A%WBFC%CBF.=@:NK(.,YEQ',#4TC&<8J&?7)$ M208OAJ?-F*XD/Z9Q9<][DG+V+(2D1: T#D73ZS'X0\S %0+4)X+2(E :AZ+I MM1F\(IXT/<]:=?AC'? P,W^XL83Y[NB7"TN4&V(_(3QQDL&QDVK+IZK%2 M8YJLCR0^"3IW&H+2(E :AZ+I)1E<)"'0$D% G2(H+0*E<2B:7IO!*9))M_.< MM49'U#P""0)3+\91S*'$E(MQ5$ P-L5B'(5=]]@]$C)8,3)MQ>Q:S .E1: T#D73ZS%X1Q* "P2H4P2E1: T#D73:S,X13)]^_$Y2XUP M_'L%=AQ3+:Q1YJT42Q3V1^L6;@L+O?"(+Z&#%Z/37LRB%.R: MQP%N"RF+K'FY%?%&E'6 >O^N*.330=U!_\S*XC]02P,$% @ %G,C6$@0 M6%,6 P 9A$ T !X;"]S='EL97,N>&ULW5A13]LP$/XKD9DFD";2-A": MT53:*B%-VB8D>-@;38F>.REE\_7YPF;?$AQL,&2U5BW^?[[O/=!4>= MU&8CV,V2,1.L2R'KE"R-J3Z&8;U8LI+6IZIBTB*YTB4U=JJ+L*XTHUD-3J4( M1X-!'):42S*=R%5Y59HZ6*B5-"DYZTR!NWW)4C*,STC@Z&8J8RFY.W[_PS+1DP3T5*9E1P>>:@U=.2RXVSCP"PT()I0-CJVI##<%2 M/SAXZ&90\):GY%+I)K:+X/[.V^4'P'8& KD0G< 1<8;II*+&,"VO[*19W!@? M04$[OMU45F&AZ68X.B>]0W.S0>9*9TQW889D:YI.!,M!CN;%$NY&52& QJC2 M#C)."R5IHV'KT0XL[8()<0-/PX]\CWN=[]1L !63W= *:H>.QDV ?Y?-<>_2 M#E[$&U3\7IG/*[L=V"%+YC;_[(#3 M"=WZ!4NE^8.-!JVRL :F27#/M.&+7^_YBR_6'%T\:\D-_]5#@5[-;9'W&L7>?X61,9O0>3K[,FP/79VSK:] MDZVS!O &D9+O\"XB^J#!?,6%X;*=+7F6,?GH@+/TAL[M2^0>OUV?L9RNA+GM MP)3TXV\LXZLRZ59=0R+:5?WX*VQO&'>O+S86EQE;LVS63G4Q;X:!'=BH[04. MA\A5<_D1S,=A?@0P+ ZF /-Q7EB<_VD_8W0_#L.TC;W(&/49HS[.RX?,F@\6 MQ^^3V,N_TR2)HCC&,CJ;>17,L+S%,7S];)@V\,#B0*0_RS5>;;Q#GNX#K*9/ M=0BV4[P3L9WBN0;$GS?P2!)_M;$XX(%5 >L=B.^/ SWE]XDBJ"JF#7N"<21) M, 1ZT=^C<8QD)X:/OS[84Q)%2>)' /,KB"(,@:<11S %H %#HJ@Y!P_.HW![ M3H7]+RO3WU!+ P04 " 6-/E_G;@2=&A(E@6FD7)TZ(=I7\=Q_:0T^FO8R*T>EOH^7%H5 J. MW&,EC'%BM/XU@LD/['X 4$L#!!0 ( !9S(UA:\^VX) 0 -LB / M>&PO=V]R:V)O;VLN>&ULQ9I;C],Z$(#_BI4GCL2A3>)V84618'N 2HBMMBM> MD9M,6PO'KFRGN\NOQW%/A0-EQ,LT3VV?U@[+>U,=_88Z.TFV4[ M[_?7HY&K=M (]\+L08<]&V,;X<.FW8[6ET*.P*ODAX<#_W=YOL()U<2R7]TRR+_Q5DK)%:-O([U+-LG#&W M,P\?C97?C?9"K2IKE)IE^7''%[!>5K\5KSK(>[%VL<2+]9T((+-L.@X7W$CK M?#PB7E\$Q@.$@X];K3?OI?)@Y\+#!VO:O=3;[C+A*4;)8\0XG'Z/0;RV?Q-& ML]G("N:F:AO0_AA'"ZH#U&XG]RYC6C0PRV[, 2Q;BBUT#Q7NLJB/#^@#61(N M>RW##KNH(R,ECW9&R3K0!0)97!#R#ERK IW9L-L] MV'!T EDBD.4%(5<=1'="Y+PQS3Z!Y @D'PY2N%T".4$@)T- =HRKG;!IPYDB MD%-:R(6N3 /L7CR"2XBN$**KRQ&Q9_?PZ%NA_DG87B)L+VG95FW3"/L4ZU!N MM0RGB5"E;ZO*M+K7@E\AD*]H(>_@ +J%YR'%5" /(MS<,:'KT'ZUMR)-V&,L M8X^I8[G?J]@DA.JG;+;0&Y-BHF(A-LM[J0.9#(P+[;R-AZ$DA,;Y8,Q M]8-4*E;OK=\%)R_J<$IX,44D^8F)*24G=LH_RF\]R M3!\YL3]6L(V>[9)(=_HO0V,&Q)=AX>I?PYM)5RKBV'S_,'CFQ M/D*:DW6HU'LKZE##[*VU(K2/7_->@;FC('8'JKBO18J)N:,@=@>JN#XF.BPA MMLA9Q86N5PQKVO,J,(D4Q!)!7=7_:D\Q,=^<9<3$4PPY;NF_E)AZBB%'+E_+=(($LT\YJ'UXBHG9IR2V#XXY M23$Q^Y3$]L$QIRDF.BU&K!\<\RK%Q/13$NL'[W+TFA"FGY)8/W_H;/$]%,2ZP?'9"DFIJ"26$$H9B^]EYB%2F(+X9B]=Q.S4$EL(;RCF6)RS$*< MV$(X9FHACEF($UL(QTPMQ#$+\2%GTGH6XIB%^ 5FTLZF28ZNQ@PZYNFU&$PZ MG'Q!!L/LM1A,.IQ8.CAFK\5@TN'4XYX_CB#CZYEB8M+AU$,?#+/G1HY)AQ-+ MY\Q -RU*5S0QZ4RH%VW.#':3LA03D\Z$>N+MW)C\3-:<8,J91.6,3A]3U+"1 M&NK/X08NE%="54O+NI_C,A"?=-.VFU:IFU!VJS\949^^S3A]5_+F!U!+ P04 M " 6$C(3*G>?447]@M= M=%/F6X5)R)\7 @]A,GN/^R9OVV/:;+LT.AWVQS2O-CEWSR&DY28>FC1NNWB\ M7%FU_:')EV6_#EVSW#7K&'0RF8;^YXSJ9?9SYFAQ[N)?)K:KU7897]OEYR$> M\R^#PU?;[](FQER-%DV_CGE>A=/^?CJ%ZT'&E\G5Z.UC7O5O'U*%TD$*05H^ MR"#(R@BOJK01Z*^JM!'HKZJT$>BOJK01Z*^JM!'HKZJT$>BOJ MK01Z&^IM!'H;ZFT$>AOJ;01ZVV"SA$!O0[V-0&]#O8U ;T.]C4!O0[V-0&]# MO8U ;T.]C4!O1[V=0&]'O9U ;T>]G4!O1[V=0&\?;'83Z.VHMQ/H[:BW$^CM MJ+<3Z.VHMQ/H[:BW$^A=H]XU@=XUZET3Z%VCWO5_ZIWR>1_3O>>VQN?_)]7Y MUW7VSI;#)^VUGRO6U5UGZ2+$.P M#XSY;$F5]JFQ5,>1N7&5#O'1+9C5V4HOB(G!8,0R4P>J0S\T-9+I^(GF>EV& MWO,VOO:%J2>)H](GOVN:>5+NIC/FM_A4\_ 5!+ 0(4 Q0 ( !9S(U@' M04UB@0 +$ 0 " 0 !D;V-0&UL M4$L! A0#% @ %G,C6"ZIL4OO *P( !$ ( !KP M &1O8U!R;W!S+V-O&UL4$L! A0#% @ %G,C6)E&PO=V]R M:W-H965T&UL4$L! A0#% @ %G,C6-?M/!$5!P [!T M !@ ("!*@X 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6"GIFJL4" G2, !@ ("! M[A\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M%G,C6.K2W7\Y @ ) 4 !@ ("!HCL 'AL+W=O1 >&PO=V]R M:W-H965T4]'A@( (P% M 9 " @65, !X;"]W;W)K&UL M4$L! A0#% @ %G,C6(AKBNK5!P >1, !D ("!(D\ M 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ M%G,C6!-QPR*&"@ KQD !D ("!JF< 'AL+W=O&UL4$L! A0#% @ %G,C6(5F&>Y0!0 M#@P !D ("!HGL 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6-=@RM&N! JPL !D M ("!F(8 'AL+W=O&PO=V]R:W-H M965T&UL4$L! M A0#% @ %G,C6!=+;LDZ!0 =PT !D ("!'Y, 'AL M+W=O&PO=V]R:W-H965T; !X;"]W;W)K&UL4$L! A0#% @ %G,C M6)PT]#U7 P YP< !D ("!69\ 'AL+W=OT=I\# #V!P &0 M @('GH@ >&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6%#P>5F( P $! M !D ("!#JD 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6(;%*R@- P 2@D !D M ("!4[, 'AL+W=O&PO=V]R:W-H965T MNY !X;"]W;W)K&UL4$L! A0# M% @ %G,C6-X_O(?] @ B H !D ("!RKP 'AL+W=O M&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6,;R M O^\ @ OP@ !D ("!M,< 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% @ %G,C6*I?#G=[ @ '@8 !D M ("!-]4 'AL+W=O&PO M=V]R:W-H965T&UL4$L! A0#% @ %G,C6,%+=PW1 @ H@< !D ("! M$]\ 'AL+W=O&PO=V]R:W-H965T&UL4$L! A0#% M @ %G,C6#(3#YC: @ 0D !D ("!!.@ 'AL+W=OW\& "_,@ &0 M@('%] >&PO=V]R:W-H965T7!E&UL4$L%!@ \ #P 6Q ' /4' 0 $! end XML 65 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 66 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 67 FilingSummary.xml IDEA: XBRL DOCUMENT 3.23.4 html 186 227 1 false 34 0 false 4 false false R1.htm 0000001 - Document - Cover Page Sheet http://www.apog.com/role/CoverPage Cover Page Cover 1 false false R2.htm 0000002 - Statement - Consolidated Balance Sheets (unaudited) Sheet http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited Consolidated Balance Sheets (unaudited) Statements 2 false false R3.htm 0000003 - Statement - Consolidated Results of Operations (unaudited) Sheet http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited Consolidated Results of Operations (unaudited) Statements 3 false false R4.htm 0000004 - Statement - Consolidated Statements of Comprehensive Earnings (unaudited) Sheet http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited Consolidated Statements of Comprehensive Earnings (unaudited) Statements 4 false false R5.htm 0000005 - Statement - Consolidated Statements of Cash Flows (unaudited) Sheet http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited Consolidated Statements of Cash Flows (unaudited) Statements 5 false false R6.htm 0000006 - Statement - Consolidated Statement of Shareholders Equity (unaudited) Sheet http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited Consolidated Statement of Shareholders Equity (unaudited) Statements 6 false false R7.htm 0000007 - Statement - Income Taxes Sheet http://www.apog.com/role/IncomeTaxes Income Taxes Statements 7 false false R8.htm 0000008 - Statement - Income Taxes (Textual) Sheet http://www.apog.com/role/IncomeTaxesTextual Income Taxes (Textual) Statements 8 false false R9.htm 0000009 - Disclosure - Summary of Significant Accounting Policies Sheet http://www.apog.com/role/SummaryofSignificantAccountingPolicies Summary of Significant Accounting Policies Notes 9 false false R10.htm 0000010 - 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 0000011 - Disclosure - Supplemental Balance Sheet Information Sheet http://www.apog.com/role/SupplementalBalanceSheetInformation Supplemental Balance Sheet Information Notes 11 false false R12.htm 0000012 - Disclosure - Financial Instruments Sheet http://www.apog.com/role/FinancialInstruments Financial Instruments Notes 12 false false R13.htm 0000013 - Disclosure - Goodwill and Other Identifiable Intangible Assets Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssets Goodwill and Other Identifiable Intangible Assets Notes 13 false false R14.htm 0000014 - Disclosure - Debt Sheet http://www.apog.com/role/Debt Debt Notes 14 false false R15.htm 0000015 - Disclosure - Commitments and Contingent Liabilities Sheet http://www.apog.com/role/CommitmentsandContingentLiabilities Commitments and Contingent Liabilities Notes 15 false false R16.htm 0000016 - Disclosure - Share-Based Compensation Sheet http://www.apog.com/role/ShareBasedCompensation Share-Based Compensation Notes 16 false false R17.htm 0000017 - Disclosure - Earnings per Share Sheet http://www.apog.com/role/EarningsperShare Earnings per Share Notes 17 false false R18.htm 0000018 - Disclosure - Segment Information Sheet http://www.apog.com/role/SegmentInformation Segment Information Notes 18 false false R19.htm 995410 - Disclosure - Pay vs Performance Disclosure Sheet http://xbrl.sec.gov/ecd/role/PvpDisclosure Pay vs Performance Disclosure Notes 19 false false R20.htm 995445 - Disclosure - Insider Trading Arrangements Sheet http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements Insider Trading Arrangements Notes 20 false false R21.htm 9954471 - 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 21 false false R22.htm 9954472 - Disclosure - Supplemental Balance Sheet Information (Tables) Sheet http://www.apog.com/role/SupplementalBalanceSheetInformationTables Supplemental Balance Sheet Information (Tables) Tables http://www.apog.com/role/SupplementalBalanceSheetInformation 22 false false R23.htm 9954473 - Disclosure - Financial Instruments (Tables) Sheet http://www.apog.com/role/FinancialInstrumentsTables Financial Instruments (Tables) Tables http://www.apog.com/role/FinancialInstruments 23 false false R24.htm 9954474 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Tables) Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables Goodwill and Other Identifiable Intangible Assets (Tables) Tables http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssets 24 false false R25.htm 9954475 - 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 25 false false R26.htm 9954476 - Disclosure - Share-Based Compensation (Tables) Sheet http://www.apog.com/role/ShareBasedCompensationTables Share-Based Compensation (Tables) Tables http://www.apog.com/role/ShareBasedCompensation 26 false false R27.htm 9954477 - Disclosure - Earnings per Share (Tables) Sheet http://www.apog.com/role/EarningsperShareTables Earnings per Share (Tables) Tables http://www.apog.com/role/EarningsperShare 27 false false R28.htm 9954478 - Disclosure - Segment Information (Tables) Sheet http://www.apog.com/role/SegmentInformationTables Segment Information (Tables) Tables http://www.apog.com/role/SegmentInformation 28 false false R29.htm 9954479 - Disclosure - Summary of Significant Accounting Policies (Details) Sheet http://www.apog.com/role/SummaryofSignificantAccountingPoliciesDetails Summary of Significant Accounting Policies (Details) Details 29 false false R30.htm 9954480 - 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 30 false false R31.htm 9954481 - 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 31 false false R32.htm 9954482 - 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 32 false false R33.htm 9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 4) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails4 Revenue, Receivables and Contract Assets and Liabilities (Details 4) Details http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables 33 false false R34.htm 9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 5) Sheet http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5 Revenue, Receivables and Contract Assets and Liabilities (Details 5) Details http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables 34 false false R35.htm 9954485 - Disclosure - Supplemental Balance Sheet Information - Components of inventories (Details) Sheet http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails Supplemental Balance Sheet Information - Components of inventories (Details) Details 35 false false R36.htm 9954486 - Disclosure - Financial Instruments (Details) Sheet http://www.apog.com/role/FinancialInstrumentsDetails Financial Instruments (Details) Details http://www.apog.com/role/FinancialInstrumentsTables 36 false false R37.htm 9954487 - Disclosure - Financial Instruments (Details 2) Sheet http://www.apog.com/role/FinancialInstrumentsDetails2 Financial Instruments (Details 2) Details http://www.apog.com/role/FinancialInstrumentsTables 37 false false R38.htm 9954488 - Disclosure - Financial Instruments (Details 3) Sheet http://www.apog.com/role/FinancialInstrumentsDetails3 Financial Instruments (Details 3) Details http://www.apog.com/role/FinancialInstrumentsTables 38 false false R39.htm 9954489 - Disclosure - Financial Instruments (Details Textual) Sheet http://www.apog.com/role/FinancialInstrumentsDetailsTextual Financial Instruments (Details Textual) Details http://www.apog.com/role/FinancialInstrumentsTables 39 false false R40.htm 9954490 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details) Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails Goodwill and Other Identifiable Intangible Assets (Details) Details http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables 40 false false R41.htm 9954491 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 1) Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1 Goodwill and Other Identifiable Intangible Assets (Details 1) Details http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables 41 false false R42.htm 9954492 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 2) Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2 Goodwill and Other Identifiable Intangible Assets (Details 2) Details http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables 42 false false R43.htm 9954493 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details Textual) Sheet http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetailsTextual Goodwill and Other Identifiable Intangible Assets (Details Textual) Details http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables 43 false false R44.htm 9954494 - Disclosure - Debt (Details) Sheet http://www.apog.com/role/DebtDetails Debt (Details) Details http://www.apog.com/role/Debt 44 false false R45.htm 9954495 - Disclosure - Commitments and Contingent Liabilities (Details 1) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1 Commitments and Contingent Liabilities (Details 1) Details http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables 45 false false R46.htm 9954496 - Disclosure - Commitments and Contingent Liabilities (Details 2) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2 Commitments and Contingent Liabilities (Details 2) Details http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables 46 false false R47.htm 9954497 - Disclosure - Commitments and Contingent Liabilities (Details Textual) Sheet http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual Commitments and Contingent Liabilities (Details Textual) Details http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables 47 false false R48.htm 9954498 - Disclosure - Share-Based Compensation (Details) Sheet http://www.apog.com/role/ShareBasedCompensationDetails Share-Based Compensation (Details) Details http://www.apog.com/role/ShareBasedCompensationTables 48 false false R49.htm 9954499 - Disclosure - Share-Based Compensation (Details Textual) Sheet http://www.apog.com/role/ShareBasedCompensationDetailsTextual Share-Based Compensation (Details Textual) Details http://www.apog.com/role/ShareBasedCompensationTables 49 false false R50.htm 9954500 - Disclosure - Earnings per Share Earnings per Share (Details) Sheet http://www.apog.com/role/EarningsperShareEarningsperShareDetails Earnings per Share Earnings per Share (Details) Details 50 false false R51.htm 9954501 - Disclosure - Segment Information Segment Information (Details Textual) Sheet http://www.apog.com/role/SegmentInformationSegmentInformationDetailsTextual Segment Information Segment Information (Details Textual) Details 51 false false R52.htm 9954502 - Disclosure - Segment Information (Details) Sheet http://www.apog.com/role/SegmentInformationDetails Segment Information (Details) Details http://www.apog.com/role/SegmentInformationTables 52 false false All Reports Book All Reports apog-20231125.htm apog-20231125.xsd apog-20231125_cal.xml apog-20231125_def.xml apog-20231125_lab.xml apog-20231125_pre.xml http://fasb.org/us-gaap/2023 http://xbrl.sec.gov/dei/2023 http://xbrl.sec.gov/ecd/2023 true true JSON 69 MetaLinks.json IDEA: XBRL DOCUMENT { "version": "2.2", "instance": { "apog-20231125.htm": { "nsprefix": "apog", "nsuri": "http://www.apog.com/20231125", "dts": { "inline": { "local": [ "apog-20231125.htm" ] }, "schema": { "local": [ "apog-20231125.xsd" ], "remote": [ "http://www.xbrl.org/2003/xbrl-instance-2003-12-31.xsd", "http://www.xbrl.org/2003/xbrl-linkbase-2003-12-31.xsd", "http://www.xbrl.org/2003/xl-2003-12-31.xsd", "http://www.xbrl.org/2003/xlink-2003-12-31.xsd", "http://www.xbrl.org/2005/xbrldt-2005.xsd", "http://www.xbrl.org/2006/ref-2006-02-27.xsd", "http://www.xbrl.org/lrr/role/negated-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/net-2009-12-16.xsd", "http://www.xbrl.org/lrr/role/reference-2009-12-16.xsd", "https://www.xbrl.org/2020/extensible-enumerations-2.0.xsd", "https://www.xbrl.org/dtr/type/2020-01-21/types.xsd", "https://www.xbrl.org/dtr/type/2022-03-31/types.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-roles-2023.xsd", "https://xbrl.fasb.org/srt/2023/elts/srt-types-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-gaap-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-roles-2023.xsd", "https://xbrl.fasb.org/us-gaap/2023/elts/us-types-2023.xsd", "https://xbrl.sec.gov/country/2023/country-2023.xsd", "https://xbrl.sec.gov/dei/2023/dei-2023.xsd", "https://xbrl.sec.gov/ecd/2023/ecd-2023.xsd" ] }, "calculationLink": { "local": [ "apog-20231125_cal.xml" ] }, "definitionLink": { "local": [ "apog-20231125_def.xml" ] }, "labelLink": { "local": [ "apog-20231125_lab.xml" ] }, "presentationLink": { "local": [ "apog-20231125_pre.xml" ] } }, "keyStandard": 218, "keyCustom": 9, "axisStandard": 15, "axisCustom": 1, "memberStandard": 25, "memberCustom": 9, "hidden": { "total": 5, "http://xbrl.sec.gov/dei/2023": 5 }, "contextCount": 186, "entityCount": 1, "segmentCount": 34, "elementCount": 448, "unitCount": 4, "baseTaxonomies": { "http://fasb.org/us-gaap/2023": 682, "http://xbrl.sec.gov/dei/2023": 29, "http://xbrl.sec.gov/ecd/2023": 1 }, "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R2": { "role": "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited", "longName": "0000002 - 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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R3": { "role": "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited", "longName": "0000003 - Statement - Consolidated Results of Operations (unaudited)", "shortName": "Consolidated Results of Operations (unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "3", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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-20231125.htm", "unique": true } }, "R4": { "role": "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited", "longName": "0000004 - Statement - Consolidated Statements of Comprehensive Earnings (unaudited)", "shortName": "Consolidated Statements of Comprehensive Earnings (unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "4", "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-20231125.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-20231125.htm", "unique": true } }, "R5": { "role": "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited", "longName": "0000005 - Statement - Consolidated Statements of Cash Flows (unaudited)", "shortName": "Consolidated Statements of Cash Flows (unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "5", "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-20231125.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-20231125.htm", "unique": true } }, "R6": { "role": "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited", "longName": "0000006 - Statement - Consolidated Statement of Shareholders Equity (unaudited)", "shortName": "Consolidated Statement of Shareholders Equity (unaudited)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "6", "firstAnchor": { "contextRef": "c-8", "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-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-46", "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-20231125.htm", "unique": true } }, "R7": { "role": "http://www.apog.com/role/IncomeTaxes", "longName": "0000007 - Statement - Income Taxes", "shortName": "Income Taxes", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "7", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R8": { "role": "http://www.apog.com/role/IncomeTaxesTextual", "longName": "0000008 - Statement - Income Taxes (Textual)", "shortName": "Income Taxes (Textual)", "isDefault": "false", "groupType": "statement", "subGroupType": "", "menuCat": "Statements", "order": "8", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "us-gaap:UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "ix:continuation", "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R9": { "role": "http://www.apog.com/role/SummaryofSignificantAccountingPolicies", "longName": "0000009 - 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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R10": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilities", "longName": "0000010 - 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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R11": { "role": "http://www.apog.com/role/SupplementalBalanceSheetInformation", "longName": "0000011 - Disclosure - Supplemental Balance Sheet Information", "shortName": "Supplemental Balance Sheet Information", "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": [ "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:InventoryDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R12": { "role": "http://www.apog.com/role/FinancialInstruments", "longName": "0000012 - 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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R13": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssets", "longName": "0000013 - Disclosure - Goodwill and Other Identifiable Intangible Assets", "shortName": "Goodwill and Other Identifiable Intangible Assets", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "13", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:GoodwillAndIntangibleAssetsDisclosureTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R14": { "role": "http://www.apog.com/role/Debt", "longName": "0000014 - Disclosure - Debt", "shortName": "Debt", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "14", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R15": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilities", "longName": "0000015 - Disclosure - Commitments and Contingent Liabilities", "shortName": "Commitments and Contingent Liabilities", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "15", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R16": { "role": "http://www.apog.com/role/ShareBasedCompensation", "longName": "0000016 - Disclosure - Share-Based Compensation", "shortName": "Share-Based Compensation", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "16", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R17": { "role": "http://www.apog.com/role/EarningsperShare", "longName": "0000017 - Disclosure - Earnings per Share", "shortName": "Earnings per Share", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "17", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R18": { "role": "http://www.apog.com/role/SegmentInformation", "longName": "0000018 - Disclosure - Segment Information", "shortName": "Segment Information", "isDefault": "false", "groupType": "disclosure", "subGroupType": "", "menuCat": "Notes", "order": "18", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R19": { "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": "19", "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-20231125.htm", "first": true }, "uniqueAnchor": null }, "R20": { "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": "20", "firstAnchor": { "contextRef": "c-5", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "ecd:NonRule10b51ArrAdoptedFlag", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R21": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables", "longName": "9954471 - 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": "21", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R22": { "role": "http://www.apog.com/role/SupplementalBalanceSheetInformationTables", "longName": "9954472 - Disclosure - Supplemental Balance Sheet Information (Tables)", "shortName": "Supplemental Balance Sheet Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "22", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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-20231125.htm", "first": true, "unique": true } }, "R23": { "role": "http://www.apog.com/role/FinancialInstrumentsTables", "longName": "9954473 - Disclosure - Financial Instruments (Tables)", "shortName": "Financial Instruments (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "23", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R24": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables", "longName": "9954474 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Tables)", "shortName": "Goodwill and Other Identifiable Intangible Assets (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "24", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfGoodwillTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R25": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables", "longName": "9954475 - Disclosure - Commitments and Contingent Liabilities (Tables)", "shortName": "Commitments and Contingent Liabilities (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "25", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R26": { "role": "http://www.apog.com/role/ShareBasedCompensationTables", "longName": "9954476 - Disclosure - Share-Based Compensation (Tables)", "shortName": "Share-Based Compensation (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "26", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R27": { "role": "http://www.apog.com/role/EarningsperShareTables", "longName": "9954477 - Disclosure - Earnings per Share (Tables)", "shortName": "Earnings per Share (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "27", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "unitRef": null, "xsiNil": "false", "lang": "en-US", "decimals": null, "ancestors": [ "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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-20231125.htm", "first": true, "unique": true } }, "R28": { "role": "http://www.apog.com/role/SegmentInformationTables", "longName": "9954478 - Disclosure - Segment Information (Tables)", "shortName": "Segment Information (Tables)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "tables", "menuCat": "Tables", "order": "28", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R29": { "role": "http://www.apog.com/role/SummaryofSignificantAccountingPoliciesDetails", "longName": "9954479 - Disclosure - Summary of Significant Accounting Policies (Details)", "shortName": "Summary of Significant Accounting Policies (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "29", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:SupplierFinanceProgramObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:SupplierFinanceProgramObligation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R30": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails", "longName": "9954480 - 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": "30", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "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-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerIncludingAssessedTax", "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-20231125.htm", "first": true, "unique": true } }, "R31": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails", "longName": "9954481 - 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": "31", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R32": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails", "longName": "9954482 - 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": "32", "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:ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AllowanceForDoubtfulAccountsReceivableWriteOffs", "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-20231125.htm", "unique": true } }, "R33": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails4", "longName": "9954483 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 4)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities (Details 4)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "33", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:ContractWithCustomerLiabilityRevenueRecognized", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R34": { "role": "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5", "longName": "9954484 - Disclosure - Revenue, Receivables and Contract Assets and Liabilities (Details 5)", "shortName": "Revenue, Receivables and Contract Assets and Liabilities (Details 5)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "34", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R35": { "role": "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails", "longName": "9954485 - Disclosure - Supplemental Balance Sheet Information - Components of inventories (Details)", "shortName": "Supplemental Balance Sheet Information - Components of inventories (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "35", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:InventoryRawMaterialsNetOfReserves", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:InventoryDisclosureTextBlock", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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", "us-gaap:InventoryDisclosureTextBlock", "us-gaap:ScheduleOfInventoryCurrentTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R36": { "role": "http://www.apog.com/role/FinancialInstrumentsDetails", "longName": "9954486 - Disclosure - Financial Instruments (Details)", "shortName": "Financial Instruments (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "36", "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-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-89", "name": "us-gaap:AvailableForSaleDebtSecuritiesAmortizedCostBasis", "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-20231125.htm", "unique": true } }, "R37": { "role": "http://www.apog.com/role/FinancialInstrumentsDetails2", "longName": "9954487 - Disclosure - Financial Instruments (Details 2)", "shortName": "Financial Instruments (Details 2)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "37", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R38": { "role": "http://www.apog.com/role/FinancialInstrumentsDetails3", "longName": "9954488 - Disclosure - Financial Instruments (Details 3)", "shortName": "Financial Instruments (Details 3)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "38", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:MoneyMarketFundsAtCarryingValue", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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", "ix:continuation", "us-gaap:FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R39": { "role": "http://www.apog.com/role/FinancialInstrumentsDetailsTextual", "longName": "9954489 - Disclosure - Financial Instruments (Details Textual)", "shortName": "Financial Instruments (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "39", "firstAnchor": { "contextRef": "c-91", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-91", "name": "us-gaap:DerivativeNotionalAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R40": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "longName": "9954490 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details)", "shortName": "Goodwill and Other Identifiable Intangible Assets (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "40", "firstAnchor": { "contextRef": "c-4", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-8", "name": "us-gaap:Goodwill", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfGoodwillTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "unique": true } }, "R41": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1", "longName": "9954491 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 1)", "shortName": "Goodwill and Other Identifiable Intangible Assets (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "41", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsGross", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "us-gaap:ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R42": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2", "longName": "9954492 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details 2)", "shortName": "Goodwill and Other Identifiable Intangible Assets (Details 2)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "42", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "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-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "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-20231125.htm", "first": true, "unique": true } }, "R43": { "role": "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetailsTextual", "longName": "9954493 - Disclosure - Goodwill and Other Identifiable Intangible Assets (Details Textual)", "shortName": "Goodwill and Other Identifiable Intangible Assets (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "43", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:AmortizationOfIntangibleAssets", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R44": { "role": "http://www.apog.com/role/DebtDetails", "longName": "9954494 - Disclosure - Debt (Details)", "shortName": "Debt (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "44", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:LineOfCreditFacilityMaximumBorrowingCapacity", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R45": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1", "longName": "9954495 - Disclosure - Commitments and Contingent Liabilities (Details 1)", "shortName": "Commitments and Contingent Liabilities (Details 1)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "45", "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-20231125.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-20231125.htm", "first": true, "unique": true } }, "R46": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2", "longName": "9954496 - Disclosure - Commitments and Contingent Liabilities (Details 2)", "shortName": "Commitments and Contingent Liabilities (Details 2)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "46", "firstAnchor": { "contextRef": "c-1", "name": "apog:GrossProceedsFromNewMarketsTaxCreditTransaction", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.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", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R47": { "role": "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual", "longName": "9954497 - Disclosure - Commitments and Contingent Liabilities (Details Textual)", "shortName": "Commitments and Contingent Liabilities (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "47", "firstAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtInstrumentFaceAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:DebtInstrumentFaceAmount", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R48": { "role": "http://www.apog.com/role/ShareBasedCompensationDetails", "longName": "9954498 - Disclosure - Share-Based Compensation (Details)", "shortName": "Share-Based Compensation (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "48", "firstAnchor": { "contextRef": "c-153", "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-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-153", "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-20231125.htm", "first": true, "unique": true } }, "R49": { "role": "http://www.apog.com/role/ShareBasedCompensationDetailsTextual", "longName": "9954499 - Disclosure - Share-Based Compensation (Details Textual)", "shortName": "Share-Based Compensation (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "49", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:ShareBasedCompensation", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-3", "name": "us-gaap:EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-5", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "unique": true } }, "R50": { "role": "http://www.apog.com/role/EarningsperShareEarningsperShareDetails", "longName": "9954500 - Disclosure - Earnings per Share Earnings per Share (Details)", "shortName": "Earnings per Share Earnings per Share (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "50", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:WeightedAverageNumberOfSharesOutstandingBasic", "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-20231125.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-20231125.htm", "unique": true } }, "R51": { "role": "http://www.apog.com/role/SegmentInformationSegmentInformationDetailsTextual", "longName": "9954501 - Disclosure - Segment Information Segment Information (Details Textual)", "shortName": "Segment Information Segment Information (Details Textual)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "51", "firstAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "reportable_segment", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true }, "uniqueAnchor": { "contextRef": "c-1", "name": "us-gaap:NumberOfReportableSegments", "unitRef": "reportable_segment", "xsiNil": "false", "lang": "en-US", "decimals": "0", "ancestors": [ "span", "div", "ix:continuation", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true, "unique": true } }, "R52": { "role": "http://www.apog.com/role/SegmentInformationDetails", "longName": "9954502 - Disclosure - Segment Information (Details)", "shortName": "Segment Information (Details)", "isDefault": "false", "groupType": "disclosure", "subGroupType": "details", "menuCat": "Details", "order": "52", "firstAnchor": { "contextRef": "c-5", "name": "us-gaap:RevenueFromContractWithCustomerExcludingAssessedTax", "unitRef": "usd", "xsiNil": "false", "lang": "en-US", "decimals": "-3", "ancestors": [ "span", "td", "tr", "table", "div", "body", "html" ], "reportCount": 1, "baseRef": "apog-20231125.htm", "first": true }, "uniqueAnchor": { "contextRef": "c-171", "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-20231125.htm", "unique": true } } }, "tag": { "us-gaap_DisaggregationOfRevenueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisaggregationOfRevenueTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Disaggregated revenue data", "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": [ "r792" ] }, "us-gaap_LineOfCreditFacilityTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityTable", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit Facility [Table]", "label": "Line of Credit Facility [Table]", "documentation": "A table or schedule providing information pertaining to short-term or long-term contractual arrangements with lenders, including letters of credit, standby letters of credit, and revolving credit arrangements, under which borrowings can be made up to maximum amount as of any point in time conditional on satisfaction of specified terms before, as of and after the date of drawdowns on the line." } } }, "auth_ref": [ "r19", "r751" ] }, "us-gaap_LineOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCredit", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "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": [ "r16", "r108", "r800" ] }, "us-gaap_IncomeTaxUncertaintiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxUncertaintiesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Tax Uncertainties [Abstract]", "label": "Income Tax Uncertainties [Abstract]" } } }, "auth_ref": [] }, "us-gaap_IntersegmentEliminationMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntersegmentEliminationMember", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Intersegment eliminations", "label": "Intersegment Eliminations [Member]", "documentation": "Eliminating entries used in operating segment consolidation." } } }, "auth_ref": [ "r200", "r211", "r212", "r213", "r214", "r215", "r217", "r221" ] }, "us-gaap_EarningsPerShareDiluted": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDiluted", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Diluted earnings 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": [ "r155", "r170", "r171", "r172", "r173", "r174", "r181", "r186", "r187", "r188", "r192", "r429", "r430", "r487", "r505", "r625" ] }, "us-gaap_TransferredOverTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransferredOverTimeMember", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Recognized over time", "label": "Transferred over Time [Member]", "documentation": "Contract with customer in which good or service is transferred over time." } } }, "auth_ref": [ "r637" ] }, "us-gaap_IncomeTaxContingencyLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxContingencyLineItems", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "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": [] }, "ecd_ErrCompAnalysisTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r664", "r675", "r685", "r710" ] }, "us-gaap_IncomeTaxContingencyTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeTaxContingencyTable", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "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": [ "r9", "r54", "r101", "r102" ] }, "us-gaap_SupplierFinanceProgramObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplierFinanceProgramObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/SummaryofSignificantAccountingPoliciesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Supplier Finance Program, Obligation", "label": "Supplier Finance Program, Obligation", "documentation": "Amount of obligation for supplier finance program." } } }, "auth_ref": [ "r298", "r299", "r300", "r301", "r302", "r629" ] }, "us-gaap_FairValueInputsLevel2Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel2Member", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r330", "r356", "r361", "r432", "r453", "r630", "r631", "r639", "r640", "r641" ] }, "us-gaap_DisaggregationOfRevenueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r352", "r632", "r633", "r634", "r635", "r636", "r637", "r638" ] }, "us-gaap_FairValueInputsLevel1Member": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueInputsLevel1Member", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r330", "r356", "r361", "r432", "r452", "r639", "r640", "r641" ] }, "us-gaap_StatementOfIncomeAndComprehensiveIncomeAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfIncomeAndComprehensiveIncomeAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Comprehensive Income [Abstract]", "label": "Statement of Comprehensive Income [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedGain": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedGain", "crdr": "credit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "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": [ "r762", "r766" ] }, "us-gaap_DisaggregationOfRevenueTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r352", "r632", "r633", "r634", "r635", "r636", "r637", "r638" ] }, "us-gaap_DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleAndHeldToMaturityCumulativeUnrecognizedLoss", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "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": [ "r763", "r767" ] }, "us-gaap_InventoryNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryNet", "crdr": "debit", "calculation": { "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 6.0 }, "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited", "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Inventories", "totalLabel": "Total inventories", "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": [ "r134", "r620", "r643" ] }, "us-gaap_IncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r113", "r117", "r176", "r177", "r206", "r402", "r410", "r506" ] }, "us-gaap_StatementOfStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfStockholdersEquityAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Stockholders' Equity [Abstract]", "label": "Statement of Stockholders' Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/ShareBasedCompensationDetailsTextual" ], "lang": { "en-us": { "role": { "verboseLabel": "Share-based compensation", "terseLabel": "Share-based Payment Arrangement, Noncash Expense", "label": "Share-Based Payment Arrangement, Noncash Expense", "documentation": "Amount of noncash expense for share-based payment arrangement." } } }, "auth_ref": [ "r6" ] }, "us-gaap_StatementOfCashFlowsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfCashFlowsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Cash Flows [Abstract]", "label": "Statement of Cash Flows [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueRemainingPerformanceObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5" ], "lang": { "en-us": { "role": { "verboseLabel": "Revenue, Remaining Performance Obligation, Amount", "label": "Revenue, Remaining Performance Obligation, Amount", "documentation": "Amount of transaction price allocated to performance obligation that has not been recognized as revenue." } } }, "auth_ref": [ "r114" ] }, "us-gaap_AccountsReceivableAllowanceForCreditLossTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountsReceivableAllowanceForCreditLossTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "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": [ "r773" ] }, "us-gaap_LiabilitiesAndStockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r76", "r109", "r497", "r643", "r752", "r772", "r797" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r637", "r792" ] }, "us-gaap_LiabilitiesAndStockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesAndStockholdersEquityAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Liabilities and Shareholders' Equity", "label": "Liabilities and Equity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_InterestExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestExpense", "crdr": "debit", "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": { "verboseLabel": "Interest expense, net", "label": "Interest Expense", "documentation": "Amount of the cost of borrowed funds accounted for as interest expense." } } }, "auth_ref": [ "r67", "r112", "r152", "r202", "r444", "r571", "r654", "r806" ] }, "us-gaap_TimingOfTransferOfGoodOrServiceDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r637", "r792" ] }, "us-gaap_LetterOfCreditMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LetterOfCreditMember", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Letter of credit", "label": "Letter of Credit [Member]", "documentation": "A document typically issued by a financial institution which acts as a guarantee of payment to a beneficiary, or as the source of payment for a specific transaction (for example, wiring funds to a foreign exporter if and when specified merchandise is accepted pursuant to the terms of the letter of credit)." } } }, "auth_ref": [] }, "us-gaap_DeferredCostsCurrentAndNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredCostsCurrentAndNoncurrent", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "Deferred costs", "label": "Deferred Costs", "documentation": "The carrying amount of deferred costs." } } }, "auth_ref": [] }, "us-gaap_CustomerRelationshipsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CustomerRelationshipsMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Customer relationships", "label": "Customer Relationships [Member]", "documentation": "Customer relationship that exists between an entity and its customer, for example, but not limited to, tenant relationships." } } }, "auth_ref": [ "r56" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableRecoveries": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableRecoveries", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Deductions from allowance, net of recoveries", "label": "Accounts Receivable, Allowance for Credit Loss, Recovery", "documentation": "Amount of increase in allowance for credit loss on accounts receivable, from recovery." } } }, "auth_ref": [ "r269" ] }, "us-gaap_EarningsPerShareTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r178", "r189", "r190", "r191" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInContractWithCustomerLiability", "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": "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": [ "r479", "r748" ] }, "us-gaap_IncrementalCommonSharesAttributableToShareBasedPaymentArrangements": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncrementalCommonSharesAttributableToShareBasedPaymentArrangements", "presentation": [ "http://www.apog.com/role/EarningsperShareEarningsperShareDetails" ], "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": [ "r182", "r183", "r184", "r188", "r366" ] }, "us-gaap_IncreaseDecreaseInContractWithCustomerAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r748" ] }, "us-gaap_SharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SharesOutstanding", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [] }, "ecd_PeerGroupIssuersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r697" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Goodwill and Intangible Assets Disclosure [Abstract]", "label": "Goodwill and Intangible Assets Disclosure [Abstract]" } } }, "auth_ref": [] }, "ecd_StkPrcOrTsrEstimationMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r665", "r676", "r686", "r711" ] }, "ecd_NonPeoNeoAvgCompActuallyPaidAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r696" ] }, "us-gaap_LiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r21", "r123", "r162", "r260", "r308", "r309", "r311", "r312", "r313", "r315", "r317", "r319", "r320", "r417", "r418", "r419", "r435", "r643", "r790", "r798", "r799" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommitmentsAndContingenciesDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Commitments and Contingencies Disclosure [Abstract]", "label": "Commitments and Contingencies Disclosure [Abstract]" } } }, "auth_ref": [] }, "ecd_OutstandingRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Outstanding Recovery, Individual Name" } } }, "auth_ref": [ "r669", "r680", "r690", "r715" ] }, "ecd_TotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r697" ] }, "us-gaap_ScheduleOfGoodwillTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTextBlock", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of goodwill attributable to each business segment", "label": "Schedule of Goodwill [Table Text Block]", "documentation": "Tabular disclosure of goodwill by reportable segment and in total which includes a rollforward schedule." } } }, "auth_ref": [ "r628", "r774", "r775", "r776", "r777", "r778", "r779", "r780", "r781", "r782", "r783", "r784" ] }, "us-gaap_ExtendedProductWarrantyAccrualPayments": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ExtendedProductWarrantyAccrualPayments", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Claims paid", "label": "Extended Product Warranty Accrual, Decrease for Payments", "documentation": "Amount of decrease in the extended product warranty accrual from payments made in cash or in kind to satisfy claims under the terms of the extended product warranty. Excludes standard product warranties." } } }, "auth_ref": [ "r787" ] }, "us-gaap_IntangibleAssetsGrossExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IntangibleAssetsGrossExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible Assets, Gross (Excluding Goodwill)", "label": "Intangible Assets, Gross (Excluding Goodwill)", "documentation": "Amount before accumulated amortization of intangible assets, excluding goodwill." } } }, "auth_ref": [ "r126" ] }, "us-gaap_AccountsNotesAndLoansReceivableLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "us-gaap_StockRedeemedOrCalledDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRedeemedOrCalledDuringPeriodShares", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other share retirements, 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_LiabilitiesCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LiabilitiesCurrentAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current liabilities", "label": "Liabilities, Current [Abstract]" } } }, "auth_ref": [] }, "ecd_ChangedPeerGroupFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r697" ] }, "us-gaap_DerivativeInstrumentRiskAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeInstrumentRiskAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3", "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative Instrument [Axis]", "label": "Derivative Instrument [Axis]", "documentation": "Information by type of derivative contract." } } }, "auth_ref": [ "r58", "r60", "r61", "r62", "r538", "r540", "r552", "r553", "r554", "r556", "r557", "r558", "r559", "r561", "r562", "r563", "r564", "r574", "r575", "r576", "r577", "r580", "r581", "r582", "r583", "r592", "r593", "r598", "r600", "r624", "r644", "r646" ] }, "us-gaap_ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementsByShareBasedPaymentAwardAwardTypeAndPlanNameDomain", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://www.apog.com/role/ShareBasedCompensationDetailsTextual", "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": [ "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "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": [ "r733" ] }, "us-gaap_CommodityOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommodityOptionMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3", "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Commodity Option [Member]", "label": "Commodity Option [Member]", "documentation": "Option contract in which the underlying asset is a commodity." } } }, "auth_ref": [] }, "us-gaap_DebtDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Debt Disclosure [Abstract]", "label": "Debt Disclosure [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardLineItems", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://www.apog.com/role/ShareBasedCompensationDetailsTextual" ], "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": [ "r363", "r365", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393" ] }, "us-gaap_InventoryDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/SupplementalBalanceSheetInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Supplemental Balance Sheet Information", "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": [ "r278" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionTable", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5" ], "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": [] }, "ecd_PeerGroupTotalShareholderRtnAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r697" ] }, "us-gaap_OtherLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r20", "r643" ] }, "us-gaap_OperatingIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingIncomeLoss", "crdr": "credit", "calculation": { "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited": { "parentTag": "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited", "http://www.apog.com/role/SegmentInformationDetails" ], "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": [ "r198", "r212", "r218", "r221", "r626" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionLineItems", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5" ], "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_ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfShareBasedCompensationArrangementsByShareBasedPaymentAwardTable", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://www.apog.com/role/ShareBasedCompensationDetailsTextual" ], "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": [ "r363", "r365", "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393" ] }, "us-gaap_AdjustmentsToReconcileNetIncomeLossToCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "us-gaap_OtherLiabilitiesNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r23" ] }, "ecd_OutstandingRecoveryCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "OutstandingRecoveryCompAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Compensation Amount", "label": "Outstanding Recovery Compensation Amount" } } }, "auth_ref": [ "r669", "r680", "r690", "r715" ] }, "us-gaap_AllowanceForDoubtfulAccountsReceivableWriteOffs": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AllowanceForDoubtfulAccountsReceivableWriteOffs", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Additions charged to costs and expenses", "label": "Accounts Receivable, Allowance for Credit Loss, Writeoff", "documentation": "Amount of direct write-downs of accounts receivable charged against the allowance." } } }, "auth_ref": [ "r268" ] }, "ecd_AwardTmgDiscLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardTmgDiscLineItems", "lang": { "en-us": { "role": { "label": "Award Timing Disclosures [Line Items]" } } }, "auth_ref": [ "r717" ] }, "us-gaap_DividendsCommonStockCash": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DividendsCommonStockCash", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [ "r100" ] }, "country_CA": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/country/2023", "localname": "CA", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Canada", "label": "CANADA" } } }, "auth_ref": [] }, "us-gaap_RevolvingCreditFacilityMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevolvingCreditFacilityMember", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "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": [] }, "us-gaap_InventoryDisclosureAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryDisclosureAbstract", "lang": { "en-us": { "role": { "terseLabel": "Inventory Disclosure [Abstract]", "label": "Inventory Disclosure [Abstract]" } } }, "auth_ref": [] }, "ecd_RestatementDoesNotRequireRecoveryTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r670", "r681", "r691", "r716" ] }, "us-gaap_OtherComprehensiveIncomeLossAvailableForSaleSecuritiesAdjustmentNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 (loss) gain on marketable securities, net of $(2), $(24), $23 and $(127) of tax (benefit) expense, 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": [ "r140", "r141", "r142" ] }, "srt_StatementGeographicalAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "StatementGeographicalAxis", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Axis]", "label": "Geographical [Axis]" } } }, "auth_ref": [ "r225", "r226", "r533", "r535", "r537", "r589", "r590", "r591", "r602", "r603", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r618", "r633", "r646", "r792", "r802" ] }, "us-gaap_EarningsPerShareBasic": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasic", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Basic earnings 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": [ "r155", "r170", "r171", "r172", "r173", "r174", "r179", "r181", "r186", "r187", "r188", "r192", "r429", "r430", "r487", "r505", "r625" ] }, "us-gaap_DepreciationDepletionAndAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r7", "r203" ] }, "us-gaap_AccountsPayableCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r18", "r643" ] }, "us-gaap_OtherComprehensiveIncomeLossForeignCurrencyTransactionAndTranslationAdjustmentBeforeTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r3", "r80" ] }, "us-gaap_DebtSecuritiesAvailableForSaleTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtSecuritiesAvailableForSaleTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "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": [ "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241" ] }, "ecd_RecoveryOfErrCompDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RecoveryOfErrCompDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Recovery of Erroneously Awarded Compensation Disclosure [Line Items]" } } }, "auth_ref": [ "r661", "r672", "r682", "r707" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTax", "crdr": "credit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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", "r15", "r145", "r148", "r153", "r437", "r438", "r443", "r485", "r502", "r744", "r745" ] }, "ecd_AwardTmgMnpiDiscTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "us-gaap_OrganizationConsolidationAndPresentationOfFinancialStatementsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r69", "r104", "r524", "r525" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedPeriodForRecognition1", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Weighted average period, Nonvested", "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": [ "r396" ] }, "ecd_AggtErrCompNotYetDeterminedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r667", "r678", "r688", "r713" ] }, "ecd_AwardTmgMethodTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "ecd_NonGaapMeasureDescriptionTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r698" ] }, "ecd_AwardTmgPredtrmndFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "srt_SegmentGeographicalDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "SegmentGeographicalDomain", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Geographical [Domain]", "label": "Geographical [Domain]" } } }, "auth_ref": [ "r225", "r226", "r533", "r535", "r537", "r589", "r590", "r591", "r602", "r608", "r609", "r610", "r611", "r612", "r613", "r614", "r615", "r616", "r618", "r633", "r646", "r792", "r802" ] }, "ecd_MeasureAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Measure:", "label": "Measure [Axis]" } } }, "auth_ref": [ "r698" ] }, "ecd_ForgoneRecoveryExplanationOfImpracticabilityTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r668", "r679", "r689", "r714" ] }, "apog_IndefinitelivedIntangibleAssetsExcludingGoodwillNetoftranslationadjustments": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "IndefinitelivedIntangibleAssetsExcludingGoodwillNetoftranslationadjustments", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments", "label": "Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments", "documentation": "Indefinite-lived Intangible Assets (Excluding Goodwill), Net of translation adjustments" } } }, "auth_ref": [] }, "us-gaap_Goodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill", "periodStartLabel": "Goodwill, Beginning", "periodEndLabel": "Goodwill, Ending", "label": "Goodwill", "documentation": "Amount after accumulated impairment loss of an asset representing future economic benefits arising from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r126", "r279", "r483", "r628", "r643", "r775", "r782" ] }, "apog_SettlementOfNewMarketsTaxCreditTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "SettlementOfNewMarketsTaxCreditTransaction", "crdr": "credit", "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": { "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_TradeAccountsReceivableMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "us-gaap_FiniteLivedIntangibleAssetsNetAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNetAbstract", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of finite lived identifiable intangible assets", "label": "Finite-Lived Intangible Assets, Net [Abstract]" } } }, "auth_ref": [] }, "apog_GoodwillAndOtherIdentifiableIntangibleAssetsTextualAbstract": { "xbrltype": "stringItemType", "nsuri": "http://www.apog.com/20231125", "localname": "GoodwillAndOtherIdentifiableIntangibleAssetsTextualAbstract", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetailsTextual" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill and Other Identifiable Intangible Assets (Textual) [Abstract]", "label": "Goodwill and Other Identifiable Intangible Assets (Textual) [Abstract]", "documentation": "Goodwill and other identifiable intangible assets." } } }, "auth_ref": [] }, "ecd_Rule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r725" ] }, "us-gaap_PaymentsOfDebtIssuanceCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsOfDebtIssuanceCosts", "crdr": "credit", "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": { "negatedTerseLabel": "Payments on 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": [ "r32" ] }, "us-gaap_RetainedEarningsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RetainedEarningsMember", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Retained Earnings [Member]", "label": "Retained Earnings [Member]", "documentation": "Accumulated undistributed earnings (deficit)." } } }, "auth_ref": [ "r119", "r165", "r166", "r167", "r169", "r175", "r177", "r261", "r262", "r398", "r399", "r400", "r407", "r408", "r421", "r423", "r424", "r426", "r428", "r518", "r520", "r529", "r807" ] }, "us-gaap_AdditionalPaidInCapitalMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdditionalPaidInCapitalMember", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Additional Paid-in Capital [Member]", "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": [ "r398", "r399", "r400", "r529", "r754", "r755", "r756", "r796", "r807" ] }, "apog_August2025Member": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "August2025Member", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "August 2025", "label": "August 2025 [Member]", "documentation": "August 2025 [Member]" } } }, "auth_ref": [] }, "us-gaap_InterestPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestPaid", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r750" ] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTable", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAccountsReceivableDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "label": "Schedule of Accounts, Notes, Loans and Financing Receivable [Table]", "documentation": "Schedule itemizing specific types of trade accounts and notes receivable, and for each the gross carrying value, allowance, and net carrying value as of the balance sheet date. Presentation is categorized by current, noncurrent and unclassified receivables." } } }, "auth_ref": [ "r25" ] }, "ecd_ForgoneRecoveryIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ForgoneRecoveryIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Forgone Recovery, Individual Name" } } }, "auth_ref": [ "r668", "r679", "r689", "r714" ] }, "ecd_ForgoneRecoveryDueToViolationOfHomeCountryLawAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r668", "r679", "r689", "r714" ] }, "ecd_NonRule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r725" ] }, "us-gaap_DebtDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r99", "r161", "r321", "r323", "r324", "r325", "r326", "r327", "r328", "r331", "r332", "r333", "r335" ] }, "apog_RecoveryZoneFacilityBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "RecoveryZoneFacilityBondsMember", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Industrial Revenue Bonds", "label": "Recovery Zone Facility Bonds [Member]", "documentation": "Recovery zone facility bonds." } } }, "auth_ref": [] }, "us-gaap_ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAccountsNotesLoansAndFinancingReceivableTextBlock", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesTables" ], "lang": { "en-us": { "role": { "terseLabel": "Net 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": [ "r25" ] }, "us-gaap_DerivativeContractTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeContractTypeDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3", "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "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": [ "r538", "r540", "r552", "r553", "r554", "r556", "r557", "r558", "r559", "r561", "r562", "r563", "r564", "r574", "r575", "r576", "r577", "r580", "r581", "r582", "r583", "r592", "r593", "r598", "r600", "r644", "r646" ] }, "us-gaap_FiniteLivedIntangibleAssetsLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsLineItems", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Finite Lived Intangible Assets [Line Items]", "label": "Finite-Lived Intangible Assets [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": [ "r481" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsExcludingGoodwill", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-lived Intangible Assets (Excluding Goodwill)", "label": "Indefinite-Lived Intangible Assets (Excluding Goodwill)", "documentation": "Amount of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r97" ] }, "ecd_AdjToPeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "apog_CompaniesBacklogRelatedToSales": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "CompaniesBacklogRelatedToSales", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Companies Backlog Related to Sales", "label": "Companies Backlog Related to Sales", "documentation": "Companies backlog related to sales." } } }, "auth_ref": [] }, "ecd_NonRule10b51ArrTrmntdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r725" ] }, "apog_TerminationDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://www.apog.com/20231125", "localname": "TerminationDateAxis", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date [Axis]", "label": "Termination Date [Axis]", "documentation": "Termination Date [Axis]" } } }, "auth_ref": [] }, "us-gaap_EquityComponentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EquityComponentDomain", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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", "r119", "r149", "r150", "r151", "r165", "r166", "r167", "r169", "r175", "r177", "r193", "r261", "r262", "r338", "r398", "r399", "r400", "r407", "r408", "r421", "r422", "r423", "r424", "r425", "r426", "r428", "r437", "r439", "r440", "r441", "r442", "r443", "r448", "r518", "r519", "r520", "r529", "r586" ] }, "ecd_MtrlTermsOfTrdArrTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r725" ] }, "us-gaap_UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "UnrecognizedTaxBenefitsThatWouldImpactEffectiveTaxRate", "crdr": "credit", "presentation": [ "http://www.apog.com/role/IncomeTaxesTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate", "label": "Unrecognized Tax Benefits that Would Impact Effective Tax Rate", "documentation": "The total amount of unrecognized tax benefits that, if recognized, would affect the effective tax rate." } } }, "auth_ref": [ "r404" ] }, "us-gaap_FiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Finite Lived Intangible Assets By Major Class [Axis]", "label": "Finite-Lived Intangible Assets by Major Class [Axis]", "documentation": "Information by major type or class of finite-lived intangible assets." } } }, "auth_ref": [ "r291", "r293", "r294", "r296", "r481", "r482" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedOtherComprehensiveIncomeMember", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Accumulated Other Comprehensive Income (Loss) [Member]", "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": [ "r2", "r11", "r27", "r422", "r425", "r448", "r518", "r519", "r744", "r745", "r746", "r754", "r755", "r756" ] }, "us-gaap_StockAppreciationRightsSARSMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "ecd_RestatementDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r662", "r673", "r683", "r708" ] }, "apog_MunicipalandCorporateBondsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "MunicipalandCorporateBondsMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Municipal and Corporate Bonds", "label": "Municipal and Corporate Bonds [Member]", "documentation": "Municipal and Corporate Bonds [Member]" } } }, "auth_ref": [] }, "us-gaap_FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsFutureAmortizationExpenseAbstract", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of estimated future amortization expense for identifiable intangible assets", "label": "Finite-Lived Intangible Assets, Net, Amortization Expense, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfProductWarrantyLiabilityTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfProductWarrantyLiabilityTableTextBlock", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesTables" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r307" ] }, "apog_ArchitecturalFramingSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "ArchitecturalFramingSegmentMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Framing Systems", "label": "Architectural Framing Segment [Member]", "documentation": "Architectural Framing Segment [Member]" } } }, "auth_ref": [] }, "ecd_TradingArrByIndTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r726" ] }, "apog_NewMarketsTaxCreditTransactionBenefitNet": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "NewMarketsTaxCreditTransactionBenefitNet", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "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": [] }, "us-gaap_CorporateAndOtherMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CorporateAndOtherMember", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Corporate and other*", "label": "Corporate and Other [Member]", "documentation": "Component of an entity that provides financial and operational oversight and administrative support for other segments and other segments not separately reported due to size or nature of business activities. Excludes intersegment elimination and reconciling items." } } }, "auth_ref": [ "r758" ] }, "us-gaap_FiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Finite Lived Intangible Assets Major Class Name [Domain]", "label": "Finite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of finite-lived intangible asset (for example, patents, trademarks, copyrights, etc.) A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of a company." } } }, "auth_ref": [ "r44", "r47" ] }, "us-gaap_NumberOfReportableSegments": { "xbrltype": "integerItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NumberOfReportableSegments", "presentation": [ "http://www.apog.com/role/SegmentInformationSegmentInformationDetailsTextual" ], "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": [ "r759" ] }, "us-gaap_DerivativeLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeLiabilities", "crdr": "credit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency forward/option 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": [ "r137", "r138", "r434", "r531", "r532", "r533", "r534", "r536", "r537", "r538", "r539", "r540", "r561", "r563", "r564", "r593", "r594", "r595", "r598", "r599", "r600", "r601", "r624", "r804" ] }, "ecd_TrdArrIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndName", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Trading Arrangement, Individual Name" } } }, "auth_ref": [ "r726" ] }, "dei_AmendmentFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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_LongTermDebtNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r130" ] }, "us-gaap_DebtInstrumentFaceAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DebtInstrumentFaceAmount", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual" ], "lang": { "en-us": { "role": { "verboseLabel": "Face value of performance bonds", "label": "Debt Instrument, Face Amount", "documentation": "Face (par) amount of debt instrument at time of issuance." } } }, "auth_ref": [ "r66", "r68", "r322", "r445", "r630", "r631" ] }, "ecd_NonNeosMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "NonNeosMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Non-NEOs", "label": "Non-NEOs [Member]" } } }, "auth_ref": [ "r668", "r679", "r689", "r706", "r714" ] }, "ecd_ForgoneRecoveryDueToDisqualificationOfTaxBenefitsAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r668", "r679", "r689", "r714" ] }, "us-gaap_ScheduleOfInventoryCurrentTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfInventoryCurrentTableTextBlock", "presentation": [ "http://www.apog.com/role/SupplementalBalanceSheetInformationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Components 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": [ "r17", "r77", "r78", "r79" ] }, "us-gaap_EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeServiceShareBasedCompensationNonvestedAwardsTotalCompensationCostNotYetRecognizedShareBasedAwardsOtherThanOptions", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetailsTextual" ], "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": [ "r793" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionStartDateAxis", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5" ], "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": [ "r115" ] }, "ecd_TrdArrTerminationDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrTerminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date", "label": "Trading Arrangement Termination Date" } } }, "auth_ref": [ "r727" ] }, "ecd_AdjToNonPeoNeoCompFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r431", "r432", "r433" ] }, "ecd_TrdArrIndTitle": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrIndTitle", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Title", "label": "Trading Arrangement, Individual Title" } } }, "auth_ref": [ "r726" ] }, "ecd_NamedExecutiveOfficersFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "ecd_TrdArrDuration": { "xbrltype": "durationItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrDuration", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Arrangement Duration", "label": "Trading Arrangement Duration" } } }, "auth_ref": [ "r728" ] }, "ecd_ForgoneRecoveryDueToExpenseOfEnforcementAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r668", "r679", "r689", "r714" ] }, "us-gaap_FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Foreign Currency Translation", "label": "Finite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [] }, "us-gaap_AccountsNotesLoansAndFinancingReceivableByReceivableTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r25" ] }, "ecd_TrdArrAdoptionDate": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TrdArrAdoptionDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Adoption Date", "label": "Trading Arrangement Adoption Date" } } }, "auth_ref": [ "r727" ] }, "ecd_PeoName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO Name", "label": "PEO Name" } } }, "auth_ref": [ "r699" ] }, "dei_DocumentFiscalYearFocus": { "xbrltype": "gYearItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_FinancialInstrumentAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FinancialInstrumentAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Financial Instrument [Axis]", "label": "Financial Instrument [Axis]", "documentation": "Information by type of financial instrument." } } }, "auth_ref": [ "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r264", "r265", "r271", "r272", "r273", "r275", "r276", "r277", "r334", "r337", "r427", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r503", "r627", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r768", "r769", "r770", "r771" ] }, "us-gaap_LineOfCreditFacilityMaximumBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityMaximumBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r19" ] }, "us-gaap_CapitalExpendituresIncurredButNotYetPaid": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r34", "r35", "r36" ] }, "us-gaap_MarketableSecuritiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MarketableSecuritiesAbstract", "lang": { "en-us": { "role": { "terseLabel": "Marketable Securities [Abstract]", "label": "Marketable Securities [Abstract]" } } }, "auth_ref": [] }, "ecd_AdjToCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "us-gaap_DesignatedAsHedgingInstrumentMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DesignatedAsHedgingInstrumentMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "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" ] }, "dei_DocumentFiscalPeriodFocus": { "xbrltype": "fiscalPeriodItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "ecd_EquityValuationAssumptionDifferenceFnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r700" ] }, "us-gaap_LongTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongTermDebt", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual", "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "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": [ "r16", "r108", "r329", "r336", "r630", "r631", "r800" ] }, "us-gaap_FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValuesDerivativesBalanceSheetLocationByDerivativeContractTypeByHedgingDesignationTable", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "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": "Schedule that discloses the location and fair value amounts of derivative instruments (and nonderivative instruments that are designated and qualify as hedging instruments) reported in the statement of financial position." } } }, "auth_ref": [ "r57", "r59", "r63" ] }, "ecd_TrdArrSecuritiesAggAvailAmt": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r729" ] }, "ecd_InsiderTradingPoliciesProcLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingPoliciesProcLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Policies and Procedures [Line Items]" } } }, "auth_ref": [ "r660", "r730" ] }, "us-gaap_RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1": { "xbrltype": "durationItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueRemainingPerformanceObligationExpectedTimingOfSatisfactionPeriod1", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails5" ], "lang": { "en-us": { "role": { "terseLabel": "Revenue, Remaining Performance Obligation, Expected Timing of Satisfaction, Period", "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": [ "r115" ] }, "us-gaap_RestrictedCashAndInvestmentsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedCashAndInvestmentsCurrent", "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": "Restricted cash", "label": "Restricted Cash and Investments, Current", "documentation": "The current cash, cash equivalents and investments that are restricted as to withdrawal or usage. Restrictions may include legally restricted deposits held as compensating balances against short-term borrowing arrangements, contracts entered into with others, or entity statements of intention with regard to particular deposits; however, time deposits and short-term certificates of deposit are not generally included in legally restricted deposits. Excludes compensating balance arrangements that are not agreements which legally restrict the use of cash amounts shown on the balance sheet. Includes current cash equivalents and investments that are similarly restricted as to withdrawal, usage or disposal." } } }, "auth_ref": [ "r604", "r605", "r743" ] }, "us-gaap_ContractWithCustomerLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r339", "r340", "r353" ] }, "ecd_InsiderTrdPoliciesProcNotAdoptedTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r660", "r730" ] }, "us-gaap_LineOfCreditFacilityRemainingBorrowingCapacity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityRemainingBorrowingCapacity", "crdr": "credit", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Line of Credit Facility, Remaining Borrowing Capacity", "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": [ "r19" ] }, "us-gaap_LineOfCreditFacilityLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LineOfCreditFacilityLineItems", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "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": [ "r751" ] }, "us-gaap_PurchaseObligation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PurchaseObligation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetailsTextual" ], "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_InsiderTrdPoliciesProcAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r660", "r730" ] }, "dei_DocumentType": { "xbrltype": "submissionTypeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_InterestRateDerivativeLiabilitiesAtFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestRateDerivativeLiabilitiesAtFairValue", "crdr": "credit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "lang": { "en-us": { "role": { "terseLabel": "Interest rate swap contract", "label": "Interest Rate Derivative Liabilities, at Fair Value", "documentation": "Fair value as of the balance sheet date of interest rate derivative liabilities, which includes all such derivative instruments in hedging and nonhedging relationships that are recognized as liabilities." } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerIncludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerIncludingAssessedTax", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesRevenueDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Total", "label": "Revenue from Contract with Customer, Including Assessed Tax", "documentation": "Amount, including tax collected from customer, of revenue from satisfaction of performance obligation by transferring promised good or service to customer. Tax collected from customer is tax assessed by governmental authority that is both imposed on and concurrent with specific revenue-producing transaction, including, but not limited to, sales, use, value-added and excise." } } }, "auth_ref": [ "r199", "r200", "r211", "r216", "r217", "r223", "r225", "r227", "r351", "r352", "r480" ] }, "us-gaap_CommonStockParOrStatedValuePerShare": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockParOrStatedValuePerShare", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock, Par or Stated Value Per Share", "label": "Common Stock, Par or Stated Value Per Share", "documentation": "Face amount or stated value per share of common stock." } } }, "auth_ref": [ "r71" ] }, "us-gaap_PerformanceSharesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PerformanceSharesMember", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Performance Shares", "label": "Performance Shares [Member]", "documentation": "Share-based payment arrangement awarded for meeting performance target." } } }, "auth_ref": [] }, "us-gaap_TransferredAtPointInTimeMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r637" ] }, "us-gaap_TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TransfersAndServicingOfFinancialInstrumentsTypesOfFinancialInstrumentsDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "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": [ "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241", "r242", "r243", "r244", "r245", "r246", "r247", "r248", "r249", "r250", "r251", "r252", "r253", "r254", "r255", "r256", "r257", "r258", "r259", "r334", "r337", "r427", "r449", "r450", "r451", "r452", "r453", "r454", "r455", "r456", "r457", "r458", "r459", "r460", "r461", "r462", "r463", "r464", "r465", "r466", "r467", "r468", "r469", "r470", "r471", "r472", "r473", "r474", "r475", "r476", "r477", "r478", "r503", "r736", "r737", "r738", "r739", "r740", "r741", "r742", "r768", "r769", "r770", "r771" ] }, "dei_DocumentQuarterlyReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r659" ] }, "us-gaap_ReceivablesNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ReceivablesNetCurrent", "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": "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": [ "r643" ] }, "us-gaap_IncomeLossFromContinuingOperationsBeforeIncomeTaxesExtraordinaryItemsNoncontrollingInterest": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r0", "r81", "r110", "r198", "r212", "r218", "r221", "r488", "r500", "r626" ] }, "us-gaap_SegmentReportingDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/SegmentInformation" ], "lang": { "en-us": { "role": { "verboseLabel": "Segment Information", "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": [ "r194", "r195", "r196", "r197", "r198", "r210", "r215", "r219", "r220", "r221", "r222", "r223", "r224", "r227" ] }, "dei_EntityCommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_InvestmentsClassifiedByContractualMaturityDateTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "dei_DocumentTransitionReport": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r692" ] }, "ecd_AllIndividualsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r671", "r679", "r689", "r706", "r714", "r718", "r726" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTextBlock", "presentation": [ "http://www.apog.com/role/SegmentInformationTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Sales and operating income data", "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": [ "r38", "r39", "r40", "r41" ] }, "us-gaap_ProceedsFromPaymentsForOtherFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromPaymentsForOtherFinancingActivities", "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": "Other, net", "label": "Proceeds from (Payments for) Other Financing Activities", "documentation": "Amount of cash inflow (outflow) from financing activities classified as other." } } }, "auth_ref": [ "r732", "r747" ] }, "us-gaap_SegmentReportingInformationLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationLineItems", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "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_ScheduleOfAvailableForSaleSecuritiesLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAvailableForSaleSecuritiesLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails" ], "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": [ "r230", "r231", "r232", "r233", "r234", "r235", "r236", "r237", "r238", "r239", "r240", "r241" ] }, "us-gaap_ScheduleOfSegmentReportingInformationBySegmentTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfSegmentReportingInformationBySegmentTable", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule of Segment Reporting Information, by Segment [Table]", "label": "Schedule of Segment Reporting Information, by Segment [Table]", "documentation": "A table disclosing the profit or loss and total assets for each reportable segment of the entity. An entity discloses certain information on each reportable segment if the amounts (a) are included in the measure of segment profit or loss reviewed by the chief operating decision maker or (b) are otherwise regularly provided to the chief operating decision maker, even if not included in that measure of segment profit or loss." } } }, "auth_ref": [ "r38", "r39", "r40", "r41" ] }, "us-gaap_InterestRateSwapMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InterestRateSwapMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3", "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Interest Rate Swap [Member]", "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": [ "r617", "r651", "r652" ] }, "us-gaap_PaymentsToAcquireMarketableSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r761" ] }, "us-gaap_StockIssuedDuringPeriodValueShareBasedCompensation": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueShareBasedCompensation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [ "r51", "r70", "r71", "r100" ] }, "us-gaap_HedgingDesignationAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "HedgingDesignationAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Axis]", "label": "Hedging Designation [Axis]", "documentation": "Information by designation of purpose of derivative instrument." } } }, "auth_ref": [ "r13", "r420" ] }, "us-gaap_PaymentsToAcquirePropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r88" ] }, "ecd_AggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r664", "r675", "r685", "r710" ] }, "us-gaap_PropertyPlantAndEquipmentNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 $454,659 and $431,710", "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": [ "r8", "r491", "r499", "r643" ] }, "us-gaap_AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AdjustmentsToAdditionalPaidInCapitalSharebasedCompensationRequisiteServicePeriodRecognitionValue", "crdr": "credit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [ "r52", "r53", "r364" ] }, "ecd_IndividualAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r671", "r679", "r689", "r706", "r714", "r718", "r726" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseNextTwelveMonths", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "2025", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year One", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in next fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r96" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearTwo", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "verboseLabel": "2026", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Two", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in second fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r96" ] }, "srt_ConsolidationItemsDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsDomain", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Domain]", "label": "Consolidation Items [Domain]" } } }, "auth_ref": [ "r164", "r200", "r211", "r212", "r213", "r214", "r215", "r217", "r221", "r308", "r309", "r310", "r311", "r313", "r314", "r316", "r318", "r319", "r790", "r791" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearThree": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearThree", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "verboseLabel": "2027", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Three", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in third fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r96" ] }, "ecd_NonPeoNeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r706" ] }, "us-gaap_SellingGeneralAndAdministrativeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r85" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseYearFour": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseYearFour", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "verboseLabel": "2028", "label": "Finite-Lived Intangible Asset, Expected Amortization, Year Four", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in fourth fiscal year following current fiscal year. Excludes interim and annual periods when interim periods are reported from current statement of financial position date (rolling approach)." } } }, "auth_ref": [ "r96" ] }, "us-gaap_StockIssuedDuringPeriodValueStockOptionsExercised": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodValueStockOptionsExercised", "crdr": "credit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "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", "r24", "r100" ] }, "us-gaap_AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccumulatedDepreciationDepletionAndAmortizationPropertyPlantAndEquipment", "crdr": "credit", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "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": [ "r49", "r125", "r498" ] }, "us-gaap_ProvisionForDoubtfulAccounts": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProvisionForDoubtfulAccounts", "crdr": "debit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesAllowanceforCreditLossesDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign currency effects", "label": "Accounts Receivable, Credit Loss Expense (Reversal)", "documentation": "Amount of expense (reversal of expense) for expected credit loss on accounts receivable." } } }, "auth_ref": [ "r156", "r267" ] }, "us-gaap_FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAmortizationExpenseRemainderOfFiscalYear", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails2" ], "lang": { "en-us": { "role": { "verboseLabel": "Remainder of 2024", "label": "Finite-Lived Intangible Asset, Expected Amortization, Remainder of Fiscal Year", "documentation": "Amount of amortization for assets, excluding financial assets and goodwill, lacking physical substance with finite life expected to be recognized in remainder of current fiscal year." } } }, "auth_ref": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedAndRetiredDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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", "r70", "r71", "r100" ] }, "srt_ConsolidationItemsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/srt/2023", "localname": "ConsolidationItemsAxis", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Consolidation Items [Axis]", "label": "Consolidation Items [Axis]" } } }, "auth_ref": [ "r164", "r200", "r211", "r212", "r213", "r214", "r215", "r217", "r221", "r308", "r309", "r310", "r311", "r313", "r314", "r316", "r318", "r319", "r790", "r791" ] }, "us-gaap_RetainedEarningsAccumulatedDeficit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r73", "r100", "r496", "r521", "r523", "r527", "r548", "r643" ] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisTableTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "terseLabel": "Fair value measurements", "label": "Fair Value Measurements, Recurring and Nonrecurring [Table Text Block]", "documentation": "Tabular disclosure of financial instruments measured at fair value, including those classified in shareholders' equity measured on a recurring or nonrecurring basis. Disclosures include, but are not limited to, fair value measurements recorded and the reasons for the measurements, level within the fair value hierarchy in which the fair value measurements are categorized and transfers between levels 1 and 2. Nonrecurring fair value measurements are those that are required or permitted in the statement of financial position in particular circumstances." } } }, "auth_ref": [ "r14", "r64", "r65", "r106" ] }, "us-gaap_ProceedsFromLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ProceedsFromLinesOfCredit", "crdr": "debit", "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": { "terseLabel": "Borrowings on line of credit", "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": [ "r29", "r751" ] }, "us-gaap_AssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Sum of the carrying amounts as of the balance sheet date of all assets that are expected to be realized in cash, sold, or consumed within one year (or the normal operating cycle, if longer). Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r122", "r136", "r162", "r260", "r308", "r309", "r311", "r312", "r313", "r315", "r317", "r319", "r320", "r416", "r418", "r435", "r643", "r790", "r791", "r798" ] }, "us-gaap_AccumulatedOtherComprehensiveIncomeLossNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r26", "r27", "r80", "r132", "r495", "r522", "r523" ] }, "ecd_Additional402vDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r693" ] }, "us-gaap_StatementEquityComponentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementEquityComponentsAxis", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Equity Components [Axis]", "label": "Equity Components [Axis]", "documentation": "Information by component of equity." } } }, "auth_ref": [ "r12", "r24", "r119", "r149", "r150", "r151", "r165", "r166", "r167", "r169", "r175", "r177", "r193", "r261", "r262", "r338", "r398", "r399", "r400", "r407", "r408", "r421", "r422", "r423", "r424", "r425", "r426", "r428", "r437", "r439", "r440", "r441", "r442", "r443", "r448", "r518", "r519", "r520", "r529", "r586" ] }, "ecd_OutstandingAggtErrCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r666", "r677", "r687", "r712" ] }, "us-gaap_FiniteLivedIntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "negatedLabel": "Accumulated Amortization", "label": "Finite-Lived Intangible Assets, Accumulated Amortization", "documentation": "Accumulated amount of amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r127", "r294" ] }, "us-gaap_AssetsCurrentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsCurrentAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Current assets", "label": "Assets, Current [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfEarningsPerShareBasicAndDilutedTableTextBlock", "presentation": [ "http://www.apog.com/role/EarningsperShareTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Reconciliation 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": [ "r757" ] }, "us-gaap_StatementOfFinancialPositionAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementOfFinancialPositionAbstract", "lang": { "en-us": { "role": { "terseLabel": "Statement of Financial Position [Abstract]", "label": "Statement of Financial Position [Abstract]" } } }, "auth_ref": [] }, "dei_EntityAddressPostalZipCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_MoneyMarketFundsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MoneyMarketFundsAtCarryingValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [] }, "ecd_CoSelectedMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r698" ] }, "us-gaap_OperatingLeaseLiabilityCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r447" ] }, "us-gaap_ExtendedProductWarrantyAccrual": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ExtendedProductWarrantyAccrual", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1" ], "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": [ "r786", "r789" ] }, "us-gaap_ContractWithCustomerLiabilityRevenueRecognized": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerLiabilityRevenueRecognized", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails4" ], "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": [ "r354" ] }, "us-gaap_SegmentDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentDomain", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "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": [ "r195", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r221", "r227", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r303", "r304", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r628", "r735", "r802" ] }, "us-gaap_StockholdersEquity": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [ "r71", "r74", "r75", "r92", "r549", "r566", "r587", "r588", "r643", "r655", "r752", "r772", "r797", "r807" ] }, "us-gaap_HedgingDesignationDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "HedgingDesignationDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Hedging Designation [Domain]", "label": "Hedging Designation [Domain]", "documentation": "Designation of purpose of derivative instrument." } } }, "auth_ref": [ "r13" ] }, "us-gaap_MovementInExtendedProductWarrantyAccrualRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "MovementInExtendedProductWarrantyAccrualRollForward", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1" ], "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": [] }, "dei_CityAreaCode": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "dei_EntityInteractiveDataCurrent": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r731" ] }, "us-gaap_ExtendedProductWarrantyAccrualWarrantiesIssued": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ExtendedProductWarrantyAccrualWarrantiesIssued", "crdr": "credit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Additional accruals", "label": "Extended Product Warranty Accrual, Increase for Warranties Issued", "documentation": "Amount of increase in the extended product warranty accrual from warranties issued. Excludes standard product warranties." } } }, "auth_ref": [ "r788" ] }, "us-gaap_OperatingLeaseLiabilityNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r447" ] }, "us-gaap_RestrictedStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RestrictedStockMember", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://www.apog.com/role/ShareBasedCompensationDetailsTextual", "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restricted Stock [Member]", "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": [ "r37" ] }, "us-gaap_DerivativeNotionalAmount": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativeNotionalAmount", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Derivative, Notional Amount", "label": "Derivative, Notional Amount", "documentation": "Nominal or face amount used to calculate payment on derivative." } } }, "auth_ref": [ "r794", "r795" ] }, "dei_LocalPhoneNumber": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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_ContractWithCustomerAssetNetCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r339", "r341", "r353" ] }, "ecd_CoSelectedMeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r698" ] }, "dei_CoverAbstract": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "localname": "CoverAbstract", "lang": { "en-us": { "role": { "terseLabel": "Cover [Abstract]", "label": "Cover [Abstract]", "documentation": "Cover page." } } }, "auth_ref": [] }, "us-gaap_DeferredIncomeTaxExpenseBenefit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DeferredIncomeTaxExpenseBenefit", "crdr": "debit", "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": { "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": [ "r7", "r103", "r116", "r411", "r412", "r753" ] }, "us-gaap_ComprehensiveIncomeNetOfTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r28", "r146", "r148", "r154", "r486", "r504" ] }, "us-gaap_RevenueFromContractWithCustomerAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RevenueFromContractWithCustomerAbstract", "lang": { "en-us": { "role": { "terseLabel": "Revenue from Contract with Customer [Abstract]", "label": "Revenue from Contract with Customer [Abstract]" } } }, "auth_ref": [] }, "us-gaap_RevenueFromContractWithCustomerTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r118", "r342", "r343", "r344", "r345", "r346", "r347", "r349", "r350", "r355" ] }, "us-gaap_OperatingLeaseRightOfUseAsset": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r446" ] }, "us-gaap_IncreaseDecreaseInInventories": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInInventories", "crdr": "credit", "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": { "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": [ "r6" ] }, "us-gaap_OperatingSegmentsMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OperatingSegmentsMember", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Operating Segments [Member]", "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": [ "r211", "r212", "r213", "r214", "r215", "r221" ] }, "ecd_PvpTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r694" ] }, "ecd_PvpTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r694" ] }, "dei_Security12bTitle": { "xbrltype": "securityTitleItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r656" ] }, "us-gaap_ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ContractWithCustomerPerformanceObligationSatisfiedInPreviousPeriod", "crdr": "credit", "presentation": [ "http://www.apog.com/role/RevenueReceivablesandContractAssetsandLiabilitiesDetails4" ], "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": [ "r348" ] }, "us-gaap_IncomeStatementAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncomeStatementAbstract", "lang": { "en-us": { "role": { "terseLabel": "Income Statement [Abstract]", "label": "Income Statement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GainLossOnSaleOfPropertyPlantEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GainLossOnSaleOfPropertyPlantEquipment", "crdr": "credit", "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": { "negatedTerseLabel": "Gain on disposal of assets", "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": [ "r7" ] }, "us-gaap_FairValueByFairValueHierarchyLevelAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueByFairValueHierarchyLevelAxis", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r330", "r356", "r357", "r358", "r359", "r360", "r361", "r432", "r452", "r453", "r454", "r630", "r631", "r639", "r640", "r641" ] }, "ecd_PeoTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r695" ] }, "us-gaap_IncreaseDecreaseInStockholdersEquityRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInStockholdersEquityRollForward", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [] }, "dei_TradingSymbol": { "xbrltype": "tradingSymbolItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "ecd_NonPeoNeoAvgTotalCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r695" ] }, "dei_SecurityExchangeName": { "xbrltype": "edgarExchangeCodeItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r658" ] }, "us-gaap_RevenueFromContractWithCustomerExcludingAssessedTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/ConsolidatedResultsofOperationsunaudited", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Net sales", "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": [ "r199", "r200", "r211", "r216", "r217", "r223", "r225", "r227", "r351", "r352", "r480" ] }, "ecd_PeoActuallyPaidCompAmt": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r696" ] }, "us-gaap_IndefiniteLivedIntangibleAssetsMajorClassNameDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsMajorClassNameDomain", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]", "label": "Indefinite-Lived Intangible Assets, Major Class Name [Domain]", "documentation": "The major class of indefinite-lived intangible asset (for example, trade names, etc. but not all-inclusive), excluding goodwill. A major class is composed of intangible assets that can be grouped together because they are similar, either by their nature or by their use in the operations of the company." } } }, "auth_ref": [ "r45", "r97" ] }, "apog_LargeScaleOpticalMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "LargeScaleOpticalMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Large-Scale Optical", "label": "Large Scale Optical [Member]", "documentation": "Large scale optical." } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsByMajorClassAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsByMajorClassAxis", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite-Lived Intangible Assets [Axis]", "label": "Indefinite-Lived Intangible Assets [Axis]", "documentation": "Information by type or class of assets, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit." } } }, "auth_ref": [ "r292", "r295" ] }, "us-gaap_CommonStockSharesIssued": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesIssued", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock, Shares, Issued", "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": [ "r71" ] }, "us-gaap_IncomeTaxDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 taxes. Disclosures may include net deferred tax liability or asset recognized in an enterprise's statement of financial position, net change during the year in the total valuation allowance, approximate tax effect of each type of temporary difference and carryforward that gives rise to a significant portion of deferred tax liabilities and deferred tax assets, utilization of a tax carryback, and tax uncertainties information." } } }, "auth_ref": [ "r163", "r401", "r403", "r405", "r406", "r409", "r413", "r414", "r415", "r528" ] }, "us-gaap_LongtermDebtTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeDomain", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "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": [ "r22", "r50" ] }, "us-gaap_OtherNoncashIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r91" ] }, "us-gaap_DerivativesFairValueLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DerivativesFairValueLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "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_CommonStockValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 22,085,098 and 22,224,299, 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": [ "r71", "r494", "r643" ] }, "us-gaap_ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfAvailableForSaleSecuritiesReconciliationTableTextBlock", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Amortized cost, gross unrealized gains and losses, and estimated fair values of investments available for sale", "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": [] }, "ecd_AdjToCompAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "us-gaap_CommonStockSharesAuthorized": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesAuthorized", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock, Shares Authorized", "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": [ "r71", "r547" ] }, "us-gaap_CommonStockSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockSharesOutstanding", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock, Shares, Outstanding", "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", "r71", "r547", "r566", "r807", "r808" ] }, "us-gaap_GoodwillAndIntangibleAssetsDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillAndIntangibleAssetsDisclosureTextBlock", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssets" ], "lang": { "en-us": { "role": { "verboseLabel": "Goodwill and Other Identifiable Intangible Assets", "label": "Goodwill and Intangible Assets Disclosure [Text Block]", "documentation": "The entire disclosure for goodwill and intangible assets." } } }, "auth_ref": [ "r94" ] }, "us-gaap_IncreaseDecreaseInReceivables": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r6" ] }, "us-gaap_TrademarksAndTradeNamesMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TrademarksAndTradeNamesMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Trademarks and Trade Names", "label": "Trademarks and Trade Names [Member]", "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style, or rights either acquired through registration of a business name to gain or protect exclusive use thereof." } } }, "auth_ref": [ "r55" ] }, "ecd_PayVsPerformanceDisclosureLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PayVsPerformanceDisclosureLineItems", "lang": { "en-us": { "role": { "label": "Pay vs Performance Disclosure [Line Items]" } } }, "auth_ref": [ "r694" ] }, "us-gaap_CommonStockMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CommonStockMember", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Common Stock [Member]", "label": "Common Stock [Member]", "documentation": "Stock that is subordinate to all other stock of the issuer." } } }, "auth_ref": [ "r644", "r645", "r646", "r648", "r649", "r650", "r653", "r754", "r755", "r796", "r803", "r807" ] }, "us-gaap_TrademarksMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "TrademarksMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Other intangibles", "label": "Trademarks [Member]", "documentation": "Rights acquired through registration of a trademark to gain or protect exclusive use of a business name, symbol or other device or style." } } }, "auth_ref": [ "r55" ] }, "us-gaap_IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInIncomeTaxesPayableNetOfIncomeTaxesReceivable", "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": "Refundable and accrued income taxes", "label": "Increase (Decrease) in Income Taxes Payable, Net of Income Taxes Receivable", "documentation": "The increase (decrease) during the reporting period in the amounts payable to taxing authorities for taxes that are based on the reporting entity's earnings, net of amounts receivable from taxing authorities for refunds of overpayments or recoveries of income taxes." } } }, "auth_ref": [ "r748" ] }, "ecd_AllAdjToCompMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r699" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationAndTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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 gain (loss) on derivative instruments, net of $56, $277, $1 and $(1,192) of tax expense (benefit), 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": [ "r139", "r142" ] }, "ecd_MeasureName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "MeasureName", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Name", "label": "Measure Name" } } }, "auth_ref": [ "r698" ] }, "us-gaap_OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossCashFlowHedgeGainLossAfterReclassificationTax", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Tax expense (benefit) on derivatives", "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": [ "r143" ] }, "ecd_OtherPerfMeasureAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r698" ] }, "us-gaap_CashAndCashEquivalentsAtCarryingValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashAndCashEquivalentsAtCarryingValue", "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": "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": [ "r33", "r124", "r619" ] }, "us-gaap_IntangibleAssetsNetExcludingGoodwill": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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", "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "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": [ "r42", "r46" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "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, cash equivalents and restricted cash", "label": "Cash, Cash Equivalents, Restricted Cash, and Restricted Cash Equivalents, Period Increase (Decrease), Excluding Exchange Rate Effect", "documentation": "Amount of increase (decrease) in cash and cash equivalents, and cash and cash equivalents restricted to withdrawal or usage; excluding 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": [ "r1", "r89" ] }, "us-gaap_StatementBusinessSegmentsAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementBusinessSegmentsAxis", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Statement Business Segments [Axis]", "label": "Segments [Axis]", "documentation": "Information by business segments." } } }, "auth_ref": [ "r120", "r195", "r198", "r199", "r200", "r201", "r202", "r203", "r204", "r205", "r206", "r207", "r208", "r209", "r211", "r212", "r213", "r214", "r215", "r216", "r217", "r218", "r219", "r221", "r227", "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r297", "r303", "r304", "r507", "r508", "r509", "r510", "r511", "r512", "r513", "r514", "r515", "r516", "r517", "r628", "r735", "r802" ] }, "us-gaap_ProceedsFromSaleAndMaturityOfAvailableForSaleSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r157", "r158", "r761" ] }, "us-gaap_OperatingLeaseRightOfUseAssetAmortizationExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Noncash 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": [ "r749" ] }, "us-gaap_NetIncomeLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/ConsolidatedStatementofShareholdersEquityunaudited", "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited", "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited", "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "totalLabel": "Net earnings", "verboseLabel": "Net earnings", "terseLabel": "Net earnings", "label": "Net Income (Loss)", "documentation": "The portion of profit or loss for the period, net of income taxes, which is attributable to the parent." } } }, "auth_ref": [ "r82", "r91", "r111", "r121", "r144", "r147", "r151", "r162", "r168", "r170", "r171", "r172", "r173", "r176", "r177", "r185", "r198", "r212", "r218", "r221", "r260", "r308", "r309", "r311", "r312", "r313", "r315", "r317", "r319", "r320", "r430", "r435", "r501", "r568", "r584", "r585", "r626", "r654", "r790" ] }, "us-gaap_AwardTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AwardTypeAxis", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails", "http://www.apog.com/role/ShareBasedCompensationDetailsTextual", "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": [ "r368", "r369", "r370", "r371", "r372", "r373", "r374", "r375", "r376", "r377", "r378", "r379", "r380", "r381", "r382", "r383", "r384", "r385", "r386", "r387", "r388", "r389", "r390", "r391", "r392", "r393" ] }, "us-gaap_IncreaseDecreaseInOperatingCapitalAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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_WeightedAverageNumberOfSharesOutstandingBasic": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfSharesOutstandingBasic", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited", "http://www.apog.com/role/EarningsperShareEarningsperShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted average basic shares outstanding", "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": [ "r179", "r188" ] }, "us-gaap_IncreaseDecreaseInAccountsPayable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccountsPayable", "crdr": "debit", "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": { "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": [ "r6" ] }, "us-gaap_EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EffectOfExchangeRateOnCashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "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": [ "r436" ] }, "us-gaap_FiniteLivedIntangibleAssetsNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsNet", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Net", "label": "Finite-Lived Intangible Assets, Net", "documentation": "Amount after amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r95", "r481" ] }, "us-gaap_IncreaseDecreaseInAccruedLiabilities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInAccruedLiabilities", "crdr": "debit", "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": { "terseLabel": "Accrued expenses", "label": "Increase (Decrease) in Accrued Liabilities", "documentation": "The increase (decrease) during the reporting period in the aggregate amount of expenses incurred but not yet paid." } } }, "auth_ref": [ "r6" ] }, "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalents", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited" ], "lang": { "en-us": { "role": { "periodStartLabel": "Cash, cash equivalents and restricted cash at beginning of year", "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": [ "r33", "r89", "r160" ] }, "us-gaap_FiniteLivedIntangibleAssetsGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FiniteLivedIntangibleAssetsGross", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "verboseLabel": "Gross Carrying Amount", "label": "Finite-Lived Intangible Assets, Gross", "documentation": "Amount before amortization of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r95", "r482" ] }, "us-gaap_StockIssuedDuringPeriodSharesShareBasedCompensation": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesShareBasedCompensation", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Issuance of stock, net of cancellations (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", "r70", "r71", "r100" ] }, "ecd_AwardExrcPrice": { "xbrltype": "perShareItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardExrcPrice", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise Price", "label": "Award Exercise Price" } } }, "auth_ref": [ "r721" ] }, "us-gaap_EmployeeRelatedLiabilitiesCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r20" ] }, "ecd_AwardsCloseToMnpiDiscIndName": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r719" ] }, "ecd_AwardTmgMnpiCnsdrdFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "us-gaap_IncreaseDecreaseInOtherOperatingCapitalNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IncreaseDecreaseInOtherOperatingCapitalNet", "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": "Prepaid expenses and other current assets", "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": [ "r6" ] }, "ecd_AwardTmgHowMnpiCnsdrdTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInFinancingActivities", "crdr": "debit", "calculation": { "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "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": [ "r159" ] }, "us-gaap_StockholdersEquityAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockholdersEquityAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Shareholders' equity", "label": "Equity, Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "dei_EntityTaxIdentificationNumber": { "xbrltype": "employerIdItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleofFiniteLivedIntangibleAssetsFutureAmortizationExpenseTableTextBlock", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of estimated future amortization expense for identifiable intangible assets", "label": "Schedule of Finite-Lived Intangible Assets, Future Amortization Expense [Table Text Block]", "documentation": "Tabular disclosure of the amount of amortization expense expected to be recorded in succeeding fiscal years for finite-lived intangible assets." } } }, "auth_ref": [ "r47" ] }, "us-gaap_NetCashProvidedByUsedInFinancingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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/2023", "localname": "NetCashProvidedByUsedInInvestingActivities", "crdr": "debit", "calculation": { "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "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": [ "r159" ] }, "us-gaap_RepaymentsOfLongTermLinesOfCredit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Payments on line of credit", "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": [ "r31" ] }, "us-gaap_IncreaseDecreaseInOperatingLeaseLiability": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r734", "r748" ] }, "us-gaap_StockIssuedDuringPeriodSharesStockOptionsExercised": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockIssuedDuringPeriodSharesStockOptionsExercised", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Exercise of stock options (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", "r70", "r71", "r100", "r376" ] }, "us-gaap_NetCashProvidedByUsedInInvestingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "ecd_AwardsCloseToMnpiDiscTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r718" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NetCashProvidedByUsedInOperatingActivities", "calculation": { "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited": { "parentTag": "us-gaap_CashCashEquivalentsRestrictedCashAndRestrictedCashEquivalentsPeriodIncreaseDecreaseExcludingExchangeRateEffect", "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": [ "r89", "r90", "r91" ] }, "us-gaap_NetCashProvidedByUsedInOperatingActivitiesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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_CreditLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "CreditLossAbstract", "lang": { "en-us": { "role": { "terseLabel": "Credit Loss [Abstract]", "label": "Credit Loss [Abstract]" } } }, "auth_ref": [] }, "ecd_CompActuallyPaidVsOtherMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r704" ] }, "us-gaap_CommitmentsAndContingenciesDisclosureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r98", "r305", "r306", "r607", "r785" ] }, "ecd_ErrCompRecoveryTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r661", "r672", "r682", "r707" ] }, "ecd_TradingArrAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "TradingArrAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/InsiderTradingArrangements" ], "lang": { "en-us": { "role": { "terseLabel": "Trading Arrangement:", "label": "Trading Arrangement [Axis]" } } }, "auth_ref": [ "r724" ] }, "us-gaap_Assets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Sum of the carrying amounts as of the balance sheet date of all assets that are recognized. Assets are probable future economic benefits obtained or controlled by an entity as a result of past transactions or events." } } }, "auth_ref": [ "r107", "r129", "r162", "r198", "r213", "r219", "r260", "r308", "r309", "r311", "r312", "r313", "r315", "r317", "r319", "r320", "r416", "r418", "r435", "r493", "r560", "r643", "r655", "r790", "r791", "r798" ] }, "dei_EntityIncorporationStateCountryCode": { "xbrltype": "edgarStateCountryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_StockRepurchasedAndRetiredDuringPeriodShares": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRepurchasedAndRetiredDuringPeriodShares", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Share repurchases, 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", "r70", "r71", "r100" ] }, "us-gaap_ReceivableTypeDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r25" ] }, "ecd_MnpiDiscTimedForCompValFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r717" ] }, "dei_CurrentFiscalYearEndDate": { "xbrltype": "gMonthDayItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueAssetsAndLiabilitiesMeasuredOnRecurringAndNonrecurringBasisLineItems", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r431", "r432", "r433" ] }, "ecd_TotalShareholderRtnVsPeerGroupTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r704" ] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r5", "r10", "r105", "r145", "r148" ] }, "ecd_CompActuallyPaidVsCoSelectedMeasureTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r703" ] }, "ecd_AwardsCloseToMnpiDiscTable": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r718" ] }, "ecd_CompActuallyPaidVsTotalShareholderRtnTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r701" ] }, "us-gaap_OtherAssetsNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r128" ] }, "ecd_AwardUndrlygSecuritiesAmt": { "xbrltype": "decimalItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "AwardUndrlygSecuritiesAmt", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Underlying Securities", "label": "Award Underlying Securities Amount" } } }, "auth_ref": [ "r720" ] }, "ecd_CompActuallyPaidVsNetIncomeTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r702" ] }, "apog_ProceedsFromNewMarketsTaxCreditTransactionNetOfDeferredCosts": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "ProceedsFromNewMarketsTaxCreditTransactionNetOfDeferredCosts", "crdr": "debit", "calculation": { "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInOperatingActivities", "weight": 1.0, "order": 18.0 } }, "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Proceeds from New Markets Tax Credit transaction, net of deferred costs", "label": "Proceeds from New Markets Tax Credit Transaction net of deferred costs", "documentation": "Proceeds from New Markets Tax Credit Transaction net of deferred costs" } } }, "auth_ref": [] }, "apog_IntangibleAssetsAccumulatedAmortization": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "IntangibleAssetsAccumulatedAmortization", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Intangible Assets Accumulated Amortization", "label": "Intangible Assets Accumulated Amortization", "documentation": "Intangible Assets Accumulated Amortization" } } }, "auth_ref": [] }, "apog_IntangibleAssetsForeignCurrencyTranslation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "IntangibleAssetsForeignCurrencyTranslation", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Intangible Assets Foreign Currency Translation", "label": "Intangible Assets Foreign Currency Translation", "documentation": "Intangible Assets Foreign Currency Translation" } } }, "auth_ref": [] }, "us-gaap_NoncashInvestingAndFinancingItemsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NoncashInvestingAndFinancingItemsAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Noncash Activity", "label": "Noncash Investing and Financing Items [Abstract]" } } }, "auth_ref": [] }, "apog_GrossProceedsFromNewMarketsTaxCreditTransaction": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "GrossProceedsFromNewMarketsTaxCreditTransaction", "crdr": "debit", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "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_OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeUnrealizedHoldingGainLossOnSecuritiesArisingDuringPeriodTax", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Tax expense (benefit) on marketable securities", "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": [ "r4", "r141" ] }, "ecd_AwardGrantDateFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r722" ] }, "us-gaap_OtherAssetsCurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherAssetsCurrent", "crdr": "debit", "calculation": { "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited": { "parentTag": "us-gaap_AssetsCurrent", "weight": 1.0, "order": 5.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": [ "r135", "r643" ] }, "apog_AccountsReceivableConstructionContractsMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "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": [] }, "apog_GoodwillReallocation": { "xbrltype": "monetaryItemType", "nsuri": "http://www.apog.com/20231125", "localname": "GoodwillReallocation", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill Reallocation", "label": "Goodwill Reallocation", "documentation": "Goodwill Reallocation" } } }, "auth_ref": [] }, "us-gaap_AllowanceForDoubtfulAccountsReceivable": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": "Accounts Receivable, Allowance for Credit Loss, Beginning Balance", "periodEndLabel": "Accounts Receivable, Allowance for Credit Loss, Ending Balance", "label": "Accounts Receivable, Allowance for Credit Loss", "documentation": "Amount of allowance for credit loss on accounts receivable." } } }, "auth_ref": [ "r133", "r229", "r263", "r266", "r270", "r801" ] }, "dei_EntityCurrentReportingStatus": { "xbrltype": "yesNoItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_FairValueMeasurementsFairValueHierarchyDomain": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "FairValueMeasurementsFairValueHierarchyDomain", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "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": [ "r330", "r356", "r357", "r358", "r359", "r360", "r361", "r452", "r453", "r454", "r630", "r631", "r639", "r640", "r641" ] }, "ecd_UndrlygSecurityMktPriceChngPct": { "xbrltype": "pureItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r723" ] }, "dei_EntityShellCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_AccountsReceivableGross": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r131", "r228", "r801" ] }, "ecd_TabularListTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r705" ] }, "us-gaap_InventoryFinishedGoodsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryFinishedGoodsNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 3.0 } }, "presentation": [ "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails" ], "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": [ "r93", "r621" ] }, "us-gaap_AmortizationOfIntangibleAssets": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AmortizationOfIntangibleAssets", "crdr": "debit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetailsTextual" ], "lang": { "en-us": { "role": { "verboseLabel": "Amortization expense on identifiable intangible assets", "label": "Amortization of Intangible Assets", "documentation": "The aggregate expense charged against earnings to allocate the cost of intangible assets (nonphysical assets not used in production) in a systematic and rational manner to the periods expected to benefit from such assets. As a noncash expense, this element is added back to net income when calculating cash provided by or used in operations using the indirect method." } } }, "auth_ref": [ "r7", "r43", "r48" ] }, "apog_September2025Member": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "September2025Member", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "September 2025", "label": "September 2025 [Member]", "documentation": "September 2025 [Member]" } } }, "auth_ref": [] }, "us-gaap_GoodwillRollForward": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillRollForward", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of goodwill attributable to each business segment", "label": "Goodwill [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_InsiderTradingArrLineItems": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "InsiderTradingArrLineItems", "lang": { "en-us": { "role": { "label": "Insider Trading Arrangements [Line Items]" } } }, "auth_ref": [ "r724" ] }, "us-gaap_InventoryWorkInProcessNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryWorkInProcessNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails" ], "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": [ "r93", "r622" ] }, "us-gaap_GoodwillForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "negatedLabel": "Foreign currency translation", "label": "Goodwill, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset representing future economic benefits from other assets acquired in a business combination that are not individually identified and separately recognized." } } }, "auth_ref": [ "r286" ] }, "dei_EntityFilerCategory": { "xbrltype": "filerCategoryItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_InventoryRawMaterialsNetOfReserves": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InventoryRawMaterialsNetOfReserves", "crdr": "debit", "calculation": { "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails": { "parentTag": "us-gaap_InventoryNet", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/SupplementalBalanceSheetInformationComponentsofinventoriesDetails" ], "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": [ "r93", "r623" ] }, "apog_ArchitecturalServicesSegmentMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "ArchitecturalServicesSegmentMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Services", "label": "Architectural Services segment [Member]", "documentation": "Architectural Services segment [Member]" } } }, "auth_ref": [] }, "us-gaap_AccountingPoliciesAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AccountingPoliciesAbstract", "lang": { "en-us": { "role": { "label": "Accounting Policies [Abstract]" } } }, "auth_ref": [] }, "apog_TerminationDateDomain": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "TerminationDateDomain", "presentation": [ "http://www.apog.com/role/CommitmentsandContingentLiabilitiesDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "Termination Date [Domain]", "label": "Termination Date [Domain]", "documentation": "[Domain] for Termination Date [Axis]" } } }, "auth_ref": [] }, "us-gaap_OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "OtherComprehensiveIncomeLossNetOfTaxPortionAttributableToParentAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Other comprehensive (loss) earnings:", "label": "Other Comprehensive Income (Loss), Net of Tax, Portion Attributable to Parent [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ProceedsFromSaleOfPropertyPlantAndEquipment": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r87" ] }, "dei_EntitySmallBusiness": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_StatementLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementLineItems", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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": [ "r165", "r166", "r167", "r193", "r480", "r526", "r530", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r552", "r553", "r554", "r556", "r557", "r558", "r559", "r561", "r562", "r563", "r564", "r565", "r567", "r569", "r570", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r586", "r647" ] }, "ecd_AllTradingArrangementsMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r724" ] }, "apog_ArchitecturalGlassMember": { "xbrltype": "domainItemType", "nsuri": "http://www.apog.com/20231125", "localname": "ArchitecturalGlassMember", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails", "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Architectural Glass", "label": "Architectural Glass [Member]", "documentation": "Architectural Glass" } } }, "auth_ref": [] }, "us-gaap_IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "IndefiniteLivedIntangibleAssetsForeignCurrencyTranslationGainLoss", "crdr": "credit", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Indefinite Lived Identifiable Intangible Assets, Foreign Currency Translation Adjustments", "label": "Indefinite-Lived Intangible Assets, Foreign Currency Translation Gain (Loss)", "documentation": "Amount of foreign currency translation gain (loss) which increases (decreases) an asset, excluding financial assets and goodwill, lacking physical substance and having a projected indefinite period of benefit to fair value." } } }, "auth_ref": [] }, "us-gaap_AssetsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AssetsAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedBalanceSheetsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Assets", "label": "Assets [Abstract]" } } }, "auth_ref": [] }, "ecd_Rule10b51ArrAdoptedFlag": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r725" ] }, "dei_EntityEmergingGrowthCompany": { "xbrltype": "booleanItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_AvailableForSaleSecuritiesDebtSecurities": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtSecurities", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails", "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r232", "r274", "r484", "r760" ] }, "us-gaap_RepaymentsOfShortTermDebt": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "RepaymentsOfShortTermDebt", "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": "Repayment on debt", "label": "Repayments of Short-Term Debt", "documentation": "The cash outflow for a borrowing having initial term of repayment within one year or the normal operating cycle, if longer." } } }, "auth_ref": [ "r31" ] }, "us-gaap_SegmentReportingInformationProfitLossAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingInformationProfitLossAbstract", "presentation": [ "http://www.apog.com/role/SegmentInformationDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Sales and operating income data", "label": "Segment Reporting Information, Profit (Loss) [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsShareBasedPaymentsTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r362", "r367", "r394", "r395", "r397", "r642" ] }, "us-gaap_EarningsPerShareBasicAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareBasicAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Earnings per share - basic", "label": "Earnings Per Share, Basic [Abstract]" } } }, "auth_ref": [] }, "us-gaap_GrossProfit": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r83", "r162", "r198", "r212", "r218", "r221", "r260", "r308", "r309", "r311", "r312", "r313", "r315", "r317", "r319", "r320", "r435", "r626", "r790" ] }, "dei_DocumentPeriodEndDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_AdditionalPaidInCapital": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r72", "r643", "r805" ] }, "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleDebtSecuritiesAmortizedCostBasis", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": null, "weight": null, "order": null, "root": true } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails", "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r231", "r274", "r492" ] }, "us-gaap_GoodwillLineItems": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "GoodwillLineItems", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Goodwill [Line Items]", "label": "Goodwill [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": [ "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r628" ] }, "us-gaap_PaymentsForRepurchaseOfCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "PaymentsForRepurchaseOfCommonStock", "crdr": "credit", "calculation": { "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited": { "parentTag": "us-gaap_NetCashProvidedByUsedInFinancingActivities", "weight": -1.0, "order": 7.0 } }, "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofCashFlowsunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Repurchase and retirement of common stock", "label": "Payments for Repurchase of Common Stock", "documentation": "The cash outflow to reacquire common stock during the period." } } }, "auth_ref": [ "r30" ] }, "us-gaap_StatementTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StatementTable", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Statement [Table]", "label": "Statement [Table]", "documentation": "Schedule reflecting a Statement of Income, Statement of Cash Flows, Statement of Financial Position, Statement of Shareholders' Equity and Other Comprehensive Income, or other statement as needed." } } }, "auth_ref": [ "r165", "r166", "r167", "r193", "r480", "r526", "r530", "r541", "r542", "r543", "r544", "r545", "r546", "r547", "r550", "r551", "r552", "r553", "r554", "r556", "r557", "r558", "r559", "r561", "r562", "r563", "r564", "r565", "r567", "r569", "r570", "r572", "r573", "r574", "r575", "r576", "r577", "r578", "r579", "r580", "r581", "r582", "r583", "r586", "r647" ] }, "us-gaap_MarketableSecuritiesTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [] }, "us-gaap_ScheduleOfGoodwillTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfGoodwillTable", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Goodwill [Table]", "label": "Schedule of Goodwill [Table]", "documentation": "Schedule of goodwill and the changes during the year due to acquisition, sale, impairment or for other reasons." } } }, "auth_ref": [ "r280", "r281", "r282", "r283", "r284", "r285", "r286", "r287", "r288", "r289", "r290", "r628" ] }, "us-gaap_ForeignExchangeForwardMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ForeignExchangeForwardMember", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3", "http://www.apog.com/role/FinancialInstrumentsDetailsTextual" ], "lang": { "en-us": { "role": { "terseLabel": "Foreign Exchange Forward", "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": [ "r553", "r558", "r563", "r576", "r582", "r596", "r597", "r598", "r646" ] }, "us-gaap_SelfInsuranceReserveNoncurrent": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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_EarningsPerShareDilutedAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareDilutedAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited" ], "lang": { "en-us": { "role": { "verboseLabel": "Earnings per share - diluted", "label": "Earnings Per Share, Diluted [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriod", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Grants in Period", "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": [ "r382" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue": { "xbrltype": "perShareItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsGrantsInPeriodWeightedAverageGrantDateFairValue", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetails" ], "lang": { "en-us": { "role": { "terseLabel": "Share Grants in Period, Weighted Average Grant Date Fair Value", "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": [ "r382" ] }, "us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount", "presentation": [ "http://www.apog.com/role/EarningsperShareEarningsperShareDetails" ], "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": [ "r189" ] }, "us-gaap_SegmentReportingAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SegmentReportingAbstract", "lang": { "en-us": { "role": { "terseLabel": "Segment Reporting [Abstract]", "label": "Segment Reporting [Abstract]" } } }, "auth_ref": [] }, "us-gaap_DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "DisclosureOfCompensationRelatedCostsSharebasedPaymentsAbstract", "lang": { "en-us": { "role": { "terseLabel": "Share-based Payment Arrangement [Abstract]", "label": "Share-Based Payment Arrangement [Abstract]" } } }, "auth_ref": [] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAmortizedCostAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAmortizedCostAbstract", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "Amortized Cost", "label": "Debt Securities, Available-for-Sale, Amortized Cost, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] }, "us-gaap_EarningsPerShareAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EarningsPerShareAbstract", "lang": { "en-us": { "role": { "terseLabel": "Earnings Per Share [Abstract]", "label": "Earnings Per Share [Abstract]" } } }, "auth_ref": [] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardOptionsGrantsInPeriodWeightedAverageGrantDateFairValueTableTextBlock", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationTables" ], "lang": { "en-us": { "role": { "terseLabel": "Share Grants in Period 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": [ "r51" ] }, "us-gaap_ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ShareBasedCompensationArrangementByShareBasedPaymentAwardEquityInstrumentsOtherThanOptionsVestedInPeriodTotalFairValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ShareBasedCompensationDetailsTextual" ], "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": [ "r386" ] }, "us-gaap_SupplementalIncomeStatementElementsAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "SupplementalIncomeStatementElementsAbstract", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementsofComprehensiveEarningsunaudited" ], "lang": { "en-us": { "role": { "terseLabel": "Supplemental Income Statement Elements [Abstract]", "label": "Supplemental Income Statement Elements [Abstract]" } } }, "auth_ref": [] }, "dei_EntityRegistrantName": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "dei_EntityAddressAddressLine1": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsAmortizedCost", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r765" ] }, "ecd_AllExecutiveCategoriesMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "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": [ "r706" ] }, "us-gaap_CostOfGoodsAndServicesSold": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r84", "r480" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearAmortizedCost", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": "us-gaap_AvailableForSaleDebtSecuritiesAmortizedCostBasis", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r764" ] }, "us-gaap_StockRedeemedOrCalledDuringPeriodValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "StockRedeemedOrCalledDuringPeriodValue", "crdr": "debit", "presentation": [ "http://www.apog.com/role/ConsolidatedStatementofShareholdersEquityunaudited" ], "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_PaymentsOfDividendsCommonStock": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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" ], "lang": { "en-us": { "role": { "negatedLabel": "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": [ "r30" ] }, "us-gaap_InvestmentsFairValueDisclosure": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "InvestmentsFairValueDisclosure", "crdr": "debit", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails3" ], "lang": { "en-us": { "role": { "terseLabel": "Municipal and corporate bonds", "label": "Investments, Fair Value Disclosure", "documentation": "Fair value portion of investment securities, including, but not limited to, marketable securities, derivative financial instruments, and investments accounted for under the equity method." } } }, "auth_ref": [ "r431" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesWithinOneYearFairValue", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 1.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r238", "r489" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesAfterOneThroughFiveYearsFairValue", "crdr": "debit", "calculation": { "http://www.apog.com/role/FinancialInstrumentsDetails2": { "parentTag": "us-gaap_AvailableForSaleSecuritiesDebtSecurities", "weight": 1.0, "order": 2.0 } }, "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "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": [ "r239", "r490" ] }, "us-gaap_LongtermDebtTypeAxis": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "LongtermDebtTypeAxis", "presentation": [ "http://www.apog.com/role/DebtDetails" ], "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": [ "r22" ] }, "ecd_PeoMember": { "xbrltype": "domainItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "PeoMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "PEO", "label": "PEO [Member]" } } }, "auth_ref": [ "r706" ] }, "us-gaap_NonoperatingIncomeExpense": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "NonoperatingIncomeExpense", "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/ConsolidatedResultsofOperationsunaudited" ], "lang": { "en-us": { "role": { "negatedTerseLabel": "Other expense (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": [ "r86" ] }, "dei_EntityAddressCityOrTown": { "xbrltype": "normalizedStringItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_EmployeeStockOptionMember": { "xbrltype": "domainItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "EmployeeStockOptionMember", "presentation": [ "http://xbrl.sec.gov/ecd/role/AwardTimingDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Employee Stock Option", "label": "Employee Stock 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": [] }, "ecd_RestatementDeterminationDate": { "xbrltype": "dateItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "RestatementDeterminationDate", "presentation": [ "http://xbrl.sec.gov/ecd/role/ErrCompDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Restatement Determination Date", "label": "Restatement Determination Date" } } }, "auth_ref": [ "r663", "r674", "r684", "r709" ] }, "dei_EntityCentralIndexKey": { "xbrltype": "centralIndexKeyItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [ "r657" ] }, "us-gaap_AccountsReceivableNet": { "xbrltype": "monetaryItemType", "nsuri": "http://fasb.org/us-gaap/2023", "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": [ "r555", "r606", "r647", "r801" ] }, "us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding": { "xbrltype": "sharesItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "WeightedAverageNumberOfDilutedSharesOutstanding", "presentation": [ "http://www.apog.com/role/ConsolidatedResultsofOperationsunaudited", "http://www.apog.com/role/EarningsperShareEarningsperShareDetails" ], "lang": { "en-us": { "role": { "verboseLabel": "Weighted average diluted shares outstanding", "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": [ "r180", "r188" ] }, "ecd_ExecutiveCategoryAxis": { "xbrltype": "stringItemType", "nsuri": "http://xbrl.sec.gov/ecd/2023", "localname": "ExecutiveCategoryAxis", "presentation": [ "http://xbrl.sec.gov/ecd/role/PvpDisclosure" ], "lang": { "en-us": { "role": { "terseLabel": "Executive Category:", "label": "Executive Category [Axis]" } } }, "auth_ref": [ "r706" ] }, "dei_EntityAddressStateOrProvince": { "xbrltype": "stateOrProvinceItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock": { "xbrltype": "textBlockItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTableTextBlock", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsTables" ], "lang": { "en-us": { "role": { "verboseLabel": "Schedule of finite lived intangible assets", "label": "Schedule of Finite-Lived Intangible Assets [Table Text Block]", "documentation": "Tabular disclosure of assets, excluding financial assets and goodwill, lacking physical substance with a finite life, by either major class or business segment." } } }, "auth_ref": [ "r44", "r47" ] }, "dei_EntityFileNumber": { "xbrltype": "fileNumberItemType", "nsuri": "http://xbrl.sec.gov/dei/2023", "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": [] }, "us-gaap_ScheduleOfFiniteLivedIntangibleAssetsTable": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "ScheduleOfFiniteLivedIntangibleAssetsTable", "presentation": [ "http://www.apog.com/role/GoodwillandOtherIdentifiableIntangibleAssetsDetails1" ], "lang": { "en-us": { "role": { "terseLabel": "Schedule Of Finite Lived Intangible Assets [Table]", "label": "Schedule of Finite-Lived Intangible Assets [Table]", "documentation": "Schedule of assets, excluding financial assets and goodwill, lacking physical substance with a finite life." } } }, "auth_ref": [ "r44", "r47", "r481" ] }, "us-gaap_AvailableForSaleSecuritiesDebtMaturitiesFairValueAbstract": { "xbrltype": "stringItemType", "nsuri": "http://fasb.org/us-gaap/2023", "localname": "AvailableForSaleSecuritiesDebtMaturitiesFairValueAbstract", "presentation": [ "http://www.apog.com/role/FinancialInstrumentsDetails2" ], "lang": { "en-us": { "role": { "terseLabel": "Estimated Fair Value", "label": "Debt Securities, Available-for-Sale, Fair Value, Fiscal Year Maturity [Abstract]" } } }, "auth_ref": [] } } } }, "std_ref": { "r0": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "25", "Paragraph": "1", "SubTopic": "20", "Topic": "940", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147481913/940-20-25-1" }, "r1": { "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/2147481877/830-230-45-1" }, "r2": { "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" }, "r3": { "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" }, "r4": { "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" }, "r5": { "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" }, "r6": { "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" }, "r7": { "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" }, "r8": { "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" }, "r9": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "19", "SubTopic": "10", "Topic": "740", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-19" }, "r10": { "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" }, "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": "50", "Paragraph": "2C", "SubTopic": "10", "Topic": "820", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2C" }, "r15": { "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" }, "r16": { "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" }, "r17": { "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" }, "r18": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(a))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r19": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.19(b),22(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r20": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.20)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r21": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.21)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r22": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.22)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r23": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.24)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r24": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.29-31)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r25": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "210", "SubTopic": "10", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.5-02.3,4)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r26": { "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" }, "r27": { "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" }, "r28": { "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" }, "r29": { "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" }, "r30": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r31": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "230", "SubTopic": "10", "Section": "45", "Paragraph": "15", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482740/230-10-45-15" }, "r32": { "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" }, "r33": { "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" }, "r34": { "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" }, "r35": { "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" }, "r36": { "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" }, "r37": { "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" }, "r38": { "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" }, "r39": { "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" }, "r40": { "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" }, "r41": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "20", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1" }, "r42": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-1" }, "r43": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482686/350-30-45-2" }, "r44": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r45": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "1", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r46": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "((a)(1),(b))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r47": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r48": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "350", "SubTopic": "30", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r49": { "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" }, "r50": { "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" }, "r51": { "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" }, "r52": { "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" }, "r53": { "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" }, "r54": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "740", "SubTopic": "10", "Section": "55", "Paragraph": "217", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482663/740-10-55-217" }, "r55": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "14", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-14" }, "r56": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "805", "SubTopic": "20", "Section": "55", "Paragraph": "20", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479876/805-20-55-20" }, "r57": { "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" }, "r58": { "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" }, "r59": { "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" }, "r60": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "815", "SubTopic": "10", "Section": "50", "Paragraph": "4B", "Subparagraph": "(c)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480434/815-10-50-4B" }, "r61": { "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" }, "r62": { "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" }, "r63": { "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" }, "r64": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-2" }, "r65": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "820", "SubTopic": "10", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r66": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-2" }, "r67": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "45", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482925/835-30-45-3" }, "r68": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Name": "Accounting Standards Codification", "Topic": "835", "SubTopic": "30", "Section": "55", "Paragraph": "8", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482949/835-30-55-8" }, "r69": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "205", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//205/tableOfContent" }, "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(28))", "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(29))", "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(30)(a)(1))", "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(30)(a)(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "r74": { "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" }, "r75": { "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" }, "r76": { "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" }, "r77": { "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" }, "r78": { "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" }, "r79": { "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" }, "r80": { "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" }, "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(10))", "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(20))", "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.1,2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r84": { "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),(d))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r85": { "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" }, "r86": { "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" }, "r87": { "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" }, "r88": { "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" }, "r89": { "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" }, "r90": { "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" }, "r91": { "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" }, "r92": { "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" }, "r93": { "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" }, "r94": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//350/tableOfContent" }, "r95": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "r96": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(a)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r97": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "r98": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "440", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//440/tableOfContent" }, "r99": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "470", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//470/tableOfContent" }, "r100": { "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" }, "r101": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15" }, "r102": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r103": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "r104": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "Topic": "810", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//810/tableOfContent" }, "r105": { "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" }, "r106": { "role": "http://fasb.org/us-gaap/role/ref/legacyRef", "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" }, "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(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/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/2147479853/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(23))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479853/942-210-S99-1" }, "r110": { "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/2147483589/942-220-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(22))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/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.9)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483589/942-220-S99-1" }, "r113": { "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" }, "r114": { "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" }, "r115": { "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" }, "r116": { "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" }, "r117": { "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" }, "r118": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Name": "Accounting Standards Codification", "Topic": "606", "Publisher": "FASB", "URI": "https://asc.fasb.org//606/tableOfContent" }, "r119": { "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" }, "r120": { "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" }, "r121": { "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" }, "r122": { "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" }, "r123": { "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" }, "r124": { "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" }, "r125": { "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" }, "r126": { "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" }, "r127": { "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(16))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480566/210-10-S99-1" }, "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(17))", "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(18))", "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(22))", "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(3)(a)(1))", "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(30)(a)(4))", "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(4))", "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(6))", "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(8))", "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(9))", "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": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Subparagraph": "(c)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483466/210-20-50-3" }, "r138": { "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" }, "r139": { "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" }, "r140": { "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" }, "r141": { "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" }, "r142": { "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" }, "r143": { "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" }, "r144": { "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" }, "r145": { "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" }, "r146": { "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" }, "r147": { "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" }, "r148": { "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" }, "r149": { "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" }, "r150": { "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" }, "r151": { "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" }, "r152": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "220", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "2", "Subparagraph": "(210.5-03(11))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483621/220-10-S99-2" }, "r153": { "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" }, "r154": { "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" }, "r155": { "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" }, "r156": { "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" }, "r157": { "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" }, "r158": { "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" }, "r159": { "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" }, "r160": { "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" }, "r161": { "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" }, "r162": { "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" }, "r163": { "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" }, "r164": { "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" }, "r165": { "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" }, "r166": { "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" }, "r167": { "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" }, "r168": { "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" }, "r169": { "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" }, "r170": { "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" }, "r171": { "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" }, "r172": { "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" }, "r173": { "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" }, "r174": { "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" }, "r175": { "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" }, "r176": { "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" }, "r177": { "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" }, "r178": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "260", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//260/tableOfContent" }, "r179": { "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" }, "r180": { "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" }, "r181": { "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" }, "r182": { "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" }, "r183": { "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" }, "r184": { "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" }, "r185": { "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" }, "r186": { "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" }, "r187": { "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" }, "r188": { "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" }, "r189": { "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" }, "r190": { "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" }, "r191": { "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" }, "r192": { "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" }, "r193": { "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" }, "r194": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//280/tableOfContent" }, "r195": { "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" }, "r196": { "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" }, "r197": { "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" }, "r198": { "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" }, "r199": { "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" }, "r200": { "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" }, "r201": { "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" }, "r202": { "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" }, "r203": { "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" }, "r204": { "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" }, "r205": { "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" }, "r206": { "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" }, "r207": { "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" }, "r208": { "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" }, "r209": { "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" }, "r210": { "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" }, "r211": { "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" }, "r212": { "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" }, "r213": { "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" }, "r214": { "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" }, "r215": { "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" }, "r216": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r217": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r218": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r219": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r220": { "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" }, "r221": { "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" }, "r222": { "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" }, "r223": { "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" }, "r224": { "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" }, "r225": { "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" }, "r226": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "280", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "41", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482810/280-10-50-41" }, "r227": { "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" }, "r228": { "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" }, "r229": { "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" }, "r230": { "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" }, "r231": { "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" }, "r232": { "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" }, "r233": { "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" }, "r234": { "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" }, "r235": { "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" }, "r236": { "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" }, "r237": { "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" }, "r238": { "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" }, "r239": { "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" }, "r240": { "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" }, "r241": { "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" }, "r242": { "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" }, "r243": { "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" }, "r244": { "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" }, "r245": { "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" }, "r246": { "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" }, "r247": { "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" }, "r248": { "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" }, "r249": { "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" }, "r250": { "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" }, "r251": { "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" }, "r252": { "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" }, "r253": { "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" }, "r254": { "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" }, "r255": { "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" }, "r256": { "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" }, "r257": { "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" }, "r258": { "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" }, "r259": { "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" }, "r260": { "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" }, "r261": { "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" }, "r262": { "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" }, "r263": { "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" }, "r264": { "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" }, "r265": { "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" }, "r266": { "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" }, "r267": { "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" }, "r268": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r269": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "326", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "13", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479319/326-20-50-13" }, "r270": { "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" }, "r271": { "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" }, "r272": { "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" }, "r273": { "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" }, "r274": { "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" }, "r275": { "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" }, "r276": { "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" }, "r277": { "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" }, "r278": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "330", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//330/tableOfContent" }, "r279": { "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" }, "r280": { "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" }, "r281": { "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" }, "r282": { "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" }, "r283": { "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" }, "r284": { "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" }, "r285": { "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" }, "r286": { "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" }, "r287": { "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" }, "r288": { "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" }, "r289": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r290": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r291": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Subparagraph": "(a)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-1" }, "r292": { "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" }, "r293": { "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" }, "r294": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r295": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r296": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "350", "SubTopic": "30", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(d)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482665/350-30-50-2" }, "r297": { "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" }, "r298": { "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" }, "r299": { "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" }, "r300": { "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" }, "r301": { "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" }, "r302": { "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" }, "r303": { "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" }, "r304": { "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" }, "r305": { "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" }, "r306": { "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" }, "r307": { "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" }, "r308": { "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" }, "r309": { "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" }, "r310": { "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" }, "r311": { "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" }, "r312": { "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" }, "r313": { "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" }, "r314": { "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" }, "r315": { "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" }, "r316": { "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" }, "r317": { "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" }, "r318": { "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" }, "r319": { "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" }, "r320": { "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" }, "r321": { "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" }, "r322": { "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" }, "r323": { "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" }, "r324": { "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" }, "r325": { "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" }, "r326": { "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" }, "r327": { "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" }, "r328": { "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" }, "r329": { "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" }, "r330": { "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" }, "r331": { "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" }, "r332": { "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" }, "r333": { "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" }, "r334": { "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" }, "r335": { "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" }, "r336": { "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" }, "r337": { "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" }, "r338": { "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" }, "r339": { "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" }, "r340": { "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" }, "r341": { "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" }, "r342": { "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" }, "r343": { "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" }, "r344": { "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" }, "r345": { "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" }, "r346": { "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" }, "r347": { "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" }, "r348": { "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" }, "r349": { "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" }, "r350": { "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" }, "r351": { "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" }, "r352": { "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" }, "r353": { "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" }, "r354": { "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" }, "r355": { "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" }, "r356": { "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" }, "r357": { "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" }, "r358": { "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" }, "r359": { "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" }, "r360": { "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" }, "r361": { "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" }, "r362": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//718/tableOfContent" }, "r363": { "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" }, "r364": { "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" }, "r365": { "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" }, "r366": { "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" }, "r367": { "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" }, "r368": { "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" }, "r369": { "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" }, "r370": { "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" }, "r371": { "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" }, "r372": { "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" }, "r373": { "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" }, "r374": { "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" }, "r375": { "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" }, "r376": { "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" }, "r377": { "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" }, "r378": { "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" }, "r379": { "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" }, "r380": { "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" }, "r381": { "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" }, "r382": { "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" }, "r383": { "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" }, "r384": { "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" }, "r385": { "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" }, "r386": { "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" }, "r387": { "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" }, "r388": { "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" }, "r389": { "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" }, "r390": { "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" }, "r391": { "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" }, "r392": { "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" }, "r393": { "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" }, "r394": { "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" }, "r395": { "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" }, "r396": { "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" }, "r397": { "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" }, "r398": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(e)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r399": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r400": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "718", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "65", "Paragraph": "15", "Subparagraph": "(f)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480336/718-10-65-15" }, "r401": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//740/tableOfContent" }, "r402": { "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" }, "r403": { "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" }, "r404": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "740", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "15A", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482685/740-10-50-15A" }, "r405": { "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" }, "r406": { "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" }, "r407": { "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" }, "r408": { "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" }, "r409": { "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" }, "r410": { "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" }, "r411": { "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.Fact.1)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r412": { "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.Fact.2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479360/740-10-S99-1" }, "r413": { "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" }, "r414": { "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/2147482526/740-270-50-1" }, "r415": { "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" }, "r416": { "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" }, "r417": { "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" }, "r418": { "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" }, "r419": { "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" }, "r420": { "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" }, "r421": { "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" }, "r422": { "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" }, "r423": { "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" }, "r424": { "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" }, "r425": { "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" }, "r426": { "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" }, "r427": { "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" }, "r428": { "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" }, "r429": { "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" }, "r430": { "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" }, "r431": { "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" }, "r432": { "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" }, "r433": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "820", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "3", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482106/820-10-50-3" }, "r434": { "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" }, "r435": { "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" }, "r436": { "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/2147481877/830-230-45-1" }, "r437": { "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" }, "r438": { "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" }, "r439": { "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" }, "r440": { "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" }, "r441": { "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" }, "r442": { "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" }, "r443": { "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" }, "r444": { "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" }, "r445": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "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" }, "r446": { "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" }, "r447": { "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" }, "r448": { "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" }, "r449": { "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" }, "r450": { "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" }, "r451": { "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" }, "r452": { "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" }, "r453": { "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" }, "r454": { "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" }, "r455": { "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" }, "r456": { "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" }, "r457": { "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" }, "r458": { "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" }, "r459": { "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" }, "r460": { "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" }, "r461": { "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" }, "r462": { "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" }, "r463": { "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" }, "r464": { "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" }, "r465": { "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" }, "r466": { "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" }, "r467": { "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" }, "r468": { "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" }, "r469": { "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" }, "r470": { "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" }, "r471": { "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" }, "r472": { "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" }, "r473": { "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" }, "r474": { "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" }, "r475": { "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" }, "r476": { "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" }, "r477": { "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" }, "r478": { "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" }, "r479": { "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/2147482312/912-310-45-11" }, "r480": { "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" }, "r481": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "926", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "5", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483154/926-20-50-5" }, "r482": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "928", "SubTopic": "340", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483147/928-340-50-1" }, "r483": { "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/2147479853/942-210-S99-1" }, "r484": { "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/2147479853/942-210-S99-1" }, "r485": { "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/2147483589/942-220-S99-1" }, "r486": { "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/2147483589/942-220-S99-1" }, "r487": { "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/2147483589/942-220-S99-1" }, "r488": { "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/2147479557/942-235-S99-1" }, "r489": { "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/2147480832/942-320-50-3A" }, "r490": { "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/2147480832/942-320-50-3A" }, "r491": { "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/2147480842/942-360-50-1" }, "r492": { "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/2147479440/944-210-S99-1" }, "r493": { "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/2147479440/944-210-S99-1" }, "r494": { "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/2147479440/944-210-S99-1" }, "r495": { "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/2147479440/944-210-S99-1" }, "r496": { "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/2147479440/944-210-S99-1" }, "r497": { "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/2147479440/944-210-S99-1" }, "r498": { "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/2147479440/944-210-S99-1" }, "r499": { "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/2147479440/944-210-S99-1" }, "r500": { "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/2147483586/944-220-S99-1" }, "r501": { "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/2147483586/944-220-S99-1" }, "r502": { "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/2147483586/944-220-S99-1" }, "r503": { "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/2147483586/944-220-S99-1" }, "r504": { "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/2147483586/944-220-S99-1" }, "r505": { "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/2147483586/944-220-S99-1" }, "r506": { "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/2147483586/944-220-S99-1" }, "r507": { "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/2147480149/944-235-S99-1" }, "r508": { "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/2147480149/944-235-S99-1" }, "r509": { "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/2147480149/944-235-S99-1" }, "r510": { "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/2147480149/944-235-S99-1" }, "r511": { "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/2147480149/944-235-S99-1" }, "r512": { "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/2147480149/944-235-S99-1" }, "r513": { "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/2147480149/944-235-S99-1" }, "r514": { "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/2147480149/944-235-S99-1" }, "r515": { "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/2147480149/944-235-S99-1" }, "r516": { "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/2147480149/944-235-S99-1" }, "r517": { "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/2147480149/944-235-S99-1" }, "r518": { "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" }, "r519": { "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" }, "r520": { "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" }, "r521": { "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" }, "r522": { "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" }, "r523": { "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" }, "r524": { "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" }, "r525": { "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" }, "r526": { "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" }, "r527": { "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" }, "r528": { "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" }, "r529": { "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/2147480767/946-205-45-4" }, "r530": { "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/2147480555/946-210-45-4" }, "r531": { "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/2147480524/946-210-50-1" }, "r532": { "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/2147480524/946-210-50-1" }, "r533": { "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/2147480524/946-210-50-1" }, "r534": { "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/2147480524/946-210-50-1" }, "r535": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "946", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480524/946-210-50-2" }, "r536": { "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/2147480524/946-210-50-6" }, "r537": { "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/2147480524/946-210-50-6" }, "r538": { "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/2147480524/946-210-50-6" }, "r539": { "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/2147480524/946-210-50-6" }, "r540": { "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/2147480524/946-210-50-6" }, "r541": { "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/2147479617/946-210-S99-1" }, "r542": { "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/2147479617/946-210-S99-1" }, "r543": { "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/2147479617/946-210-S99-1" }, "r544": { "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/2147479617/946-210-S99-1" }, "r545": { "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/2147479617/946-210-S99-1" }, "r546": { "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/2147479617/946-210-S99-1" }, "r547": { "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/2147479617/946-210-S99-1" }, "r548": { "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/2147479617/946-210-S99-1" }, "r549": { "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/2147479617/946-210-S99-1" }, "r550": { "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/2147479617/946-210-S99-1" }, "r551": { "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/2147479617/946-210-S99-1" }, "r552": { "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/2147479617/946-210-S99-1" }, "r553": { "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/2147479617/946-210-S99-1" }, "r554": { "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/2147479617/946-210-S99-1" }, "r555": { "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/2147479617/946-210-S99-1" }, "r556": { "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/2147479617/946-210-S99-1" }, "r557": { "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/2147479617/946-210-S99-1" }, "r558": { "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/2147479617/946-210-S99-1" }, "r559": { "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/2147479617/946-210-S99-1" }, "r560": { "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/2147479617/946-210-S99-1" }, "r561": { "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/2147479617/946-210-S99-1" }, "r562": { "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/2147479617/946-210-S99-1" }, "r563": { "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/2147479617/946-210-S99-1" }, "r564": { "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/2147479617/946-210-S99-1" }, "r565": { "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/2147479617/946-210-S99-2" }, "r566": { "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/2147479617/946-210-S99-2" }, "r567": { "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/2147483581/946-220-45-3" }, "r568": { "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/2147483581/946-220-45-7" }, "r569": { "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/2147483575/946-220-S99-1" }, "r570": { "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/2147483575/946-220-S99-1" }, "r571": { "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(3))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483575/946-220-S99-1" }, "r572": { "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/2147483575/946-220-S99-1" }, "r573": { "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/2147483575/946-220-S99-1" }, "r574": { "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/2147483575/946-220-S99-1" }, "r575": { "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/2147483575/946-220-S99-1" }, "r576": { "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/2147483575/946-220-S99-1" }, "r577": { "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/2147483575/946-220-S99-1" }, "r578": { "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/2147483575/946-220-S99-1" }, "r579": { "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/2147483575/946-220-S99-1" }, "r580": { "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/2147483575/946-220-S99-1" }, "r581": { "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/2147483575/946-220-S99-1" }, "r582": { "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/2147483575/946-220-S99-1" }, "r583": { "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/2147483575/946-220-S99-1" }, "r584": { "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/2147483575/946-220-S99-1" }, "r585": { "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/2147483575/946-220-S99-3" }, "r586": { "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/2147483575/946-220-S99-3" }, "r587": { "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/2147483575/946-220-S99-3" }, "r588": { "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/2147483575/946-220-S99-3" }, "r589": { "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 C)(Footnote 5))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-1" }, "r590": { "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 C)(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-2" }, "r591": { "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 C)(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-3" }, "r592": { "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/2147480032/946-320-S99-5" }, "r593": { "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/2147480032/946-320-S99-5" }, "r594": { "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/2147480032/946-320-S99-5" }, "r595": { "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/2147480032/946-320-S99-5A" }, "r596": { "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/2147480032/946-320-S99-5B" }, "r597": { "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/2147480032/946-320-S99-5B" }, "r598": { "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/2147480032/946-320-S99-5B" }, "r599": { "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/2147480032/946-320-S99-5B" }, "r600": { "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/2147480032/946-320-S99-5C" }, "r601": { "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/2147480032/946-320-S99-5C" }, "r602": { "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 F)(Footnote 7))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480032/946-320-S99-6" }, "r603": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "948", "SubTopic": "310", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-29(Footnote 4))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479851/948-310-S99-1" }, "r604": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "4", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480632/954-210-45-4" }, "r605": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "954", "SubTopic": "210", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480602/954-210-50-2" }, "r606": { "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/2147481058/954-310-45-1" }, "r607": { "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/2147480327/954-440-50-1" }, "r608": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column B))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r609": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column C))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r610": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column D))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r611": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column E))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r612": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column F))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r613": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column G))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r614": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column H))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r615": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Column I))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r616": { "role": "http://www.xbrl.org/2003/role/disclosureRef", "Topic": "970", "SubTopic": "360", "Name": "Accounting Standards Codification", "Section": "S99", "Paragraph": "1", "Subparagraph": "(SX 210.12-28(Footnote 2))", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147479438/970-360-S99-1" }, "r617": { "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" }, "r618": { "role": "http://www.xbrl.org/2003/role/exampleRef", "Name": "Accounting Standards Codification", "Section": "55", "Paragraph": "13H", "Subparagraph": "(b)", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480046/944-40-55-13H" }, "r619": { "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" }, "r620": { "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" }, "r621": { "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" }, "r622": { "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" }, "r623": { "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" }, "r624": { "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" }, "r625": { "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" }, "r626": { "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" }, "r627": { "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" }, "r628": { "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" }, "r629": { "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" }, "r630": { "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" }, "r631": { "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" }, "r632": { "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" }, "r633": { "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" }, "r634": { "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" }, "r635": { "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" }, "r636": { "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" }, "r637": { "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" }, "r638": { "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" }, "r639": { "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" }, "r640": { "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" }, "r641": { "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" }, "r642": { "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" }, "r643": { "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" }, "r644": { "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/2147480524/946-210-50-1" }, "r645": { "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/2147480524/946-210-50-6" }, "r646": { "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/2147480493/946-210-55-1" }, "r647": { "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/2147480833/946-310-45-1" }, "r648": { "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/2147480032/946-320-S99-1" }, "r649": { "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/2147480032/946-320-S99-2" }, "r650": { "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/2147480032/946-320-S99-3" }, "r651": { "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/2147480032/946-320-S99-5C" }, "r652": { "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/2147480032/946-320-S99-5C" }, "r653": { "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/2147480032/946-320-S99-6" }, "r654": { "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/2147480167/946-830-55-10" }, "r655": { "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/2147480167/946-830-55-12" }, "r656": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b" }, "r657": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "b-2" }, "r658": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Exchange Act", "Number": "240", "Section": "12", "Subsection": "d1-1" }, "r659": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 10-Q", "Number": "240", "Section": "308", "Subsection": "a" }, "r660": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "16", "Subsection": "J", "Paragraph": "a" }, "r661": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1" }, "r662": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i" }, "r663": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "A" }, "r664": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "B" }, "r665": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "C" }, "r666": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "D" }, "r667": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "i", "Sentence": "E" }, "r668": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii" }, "r669": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "1", "Subparagraph": "iii" }, "r670": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Section": "6", "Subsection": "F", "Paragraph": "2" }, "r671": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 20-F", "Subsection": "F", "Paragraph": "1", "Subparagraph": "ii", "Section": "6" }, "r672": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a" }, "r673": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1" }, "r674": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r675": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r676": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r677": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r678": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r679": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "2" }, "r680": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "a", "Subparagraph": "3" }, "r681": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form 40-F", "Section": "19", "Paragraph": "b" }, "r682": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a" }, "r683": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1" }, "r684": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "i" }, "r685": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "ii" }, "r686": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iii" }, "r687": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "iv" }, "r688": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "1", "Sentence": "v" }, "r689": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "2" }, "r690": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "a", "Subparagraph": "3" }, "r691": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Form N-CSR", "Section": "18", "Paragraph": "b" }, "r692": { "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" }, "r693": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v" }, "r694": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "1" }, "r695": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "ii" }, "r696": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iii" }, "r697": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "iv" }, "r698": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "2", "Subparagraph": "vi" }, "r699": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "3" }, "r700": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "4" }, "r701": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "i" }, "r702": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "ii" }, "r703": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iii" }, "r704": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "5", "Subparagraph": "iv" }, "r705": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6" }, "r706": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "v", "Paragraph": "6", "Subparagraph": "i" }, "r707": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1" }, "r708": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "i" }, "r709": { "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" }, "r710": { "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" }, "r711": { "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" }, "r712": { "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" }, "r713": { "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" }, "r714": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "ii" }, "r715": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "1", "Subparagraph": "iii" }, "r716": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "w", "Paragraph": "2" }, "r717": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "1" }, "r718": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "402", "Subsection": "x", "Paragraph": "2" }, "r719": { "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" }, "r720": { "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" }, "r721": { "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" }, "r722": { "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" }, "r723": { "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" }, "r724": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a" }, "r725": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "1" }, "r726": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "A" }, "r727": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "B" }, "r728": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "C" }, "r729": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "a", "Paragraph": "2", "Subparagraph": "D" }, "r730": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-K", "Number": "229", "Section": "408", "Subsection": "b", "Paragraph": "1" }, "r731": { "role": "http://www.xbrl.org/2003/role/presentationRef", "Publisher": "SEC", "Name": "Regulation S-T", "Number": "232", "Section": "405" }, "r732": { "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" }, "r733": { "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" }, "r734": { "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" }, "r735": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "4H", "SubTopic": "40", "Topic": "944", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147480081/944-40-50-4H" }, "r736": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(a)", "Publisher": "SEC" }, "r737": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(1)", "Publisher": "SEC" }, "r738": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(2)", "Publisher": "SEC" }, "r739": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(b)", "Subparagraph": "(3)", "Publisher": "SEC" }, "r740": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(i)", "Publisher": "SEC" }, "r741": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(ii)", "Publisher": "SEC" }, "r742": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Name": "Regulation S-K (SK)", "Number": "229", "Section": "1402", "Paragraph": "(c)", "Subparagraph": "(2)(iii)", "Publisher": "SEC" }, "r743": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r744": { "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" }, "r745": { "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" }, "r746": { "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" }, "r747": { "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" }, "r748": { "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" }, "r749": { "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" }, "r750": { "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" }, "r751": { "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" }, "r752": { "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" }, "r753": { "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" }, "r754": { "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" }, "r755": { "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" }, "r756": { "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" }, "r757": { "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" }, "r758": { "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" }, "r759": { "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" }, "r760": { "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" }, "r761": { "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" }, "r762": { "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" }, "r763": { "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" }, "r764": { "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" }, "r765": { "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" }, "r766": { "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" }, "r767": { "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" }, "r768": { "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" }, "r769": { "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" }, "r770": { "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" }, "r771": { "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" }, "r772": { "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" }, "r773": { "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" }, "r774": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r775": { "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" }, "r776": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r777": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r778": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r779": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r780": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r781": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "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" }, "r782": { "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" }, "r783": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "1A", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-1A" }, "r784": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "350", "SubTopic": "20", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "2", "Subparagraph": "(b)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482573/350-20-50-2" }, "r785": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "450", "Name": "Accounting Standards Codification", "Publisher": "FASB", "URI": "https://asc.fasb.org//450/tableOfContent" }, "r786": { "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" }, "r787": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(2)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r788": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "460", "SubTopic": "10", "Name": "Accounting Standards Codification", "Section": "50", "Paragraph": "8", "Subparagraph": "(c)(3)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147482425/460-10-50-8" }, "r789": { "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" }, "r790": { "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" }, "r791": { "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" }, "r792": { "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" }, "r793": { "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" }, "r794": { "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" }, "r795": { "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" }, "r796": { "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" }, "r797": { "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" }, "r798": { "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" }, "r799": { "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" }, "r800": { "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/2147479440/944-210-S99-1" }, "r801": { "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/2147479440/944-210-S99-1" }, "r802": { "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" }, "r803": { "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/2147480767/946-205-45-4" }, "r804": { "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/2147480524/946-210-50-6" }, "r805": { "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/2147479617/946-210-S99-1" }, "r806": { "role": "http://www.xbrl.org/2009/role/commonPracticeRef", "Topic": "946", "SubTopic": "220", "Name": "Accounting Standards Codification", "Section": "45", "Paragraph": "3", "Subparagraph": "(i)", "Publisher": "FASB", "URI": "https://asc.fasb.org//1943274/2147483581/946-220-45-3" }, "r807": { "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/2147483575/946-220-S99-3" }, "r808": { "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/2147483575/946-220-S99-3" } } } ZIP 70 0000006845-24-000004-xbrl.zip IDEA: XBRL DOCUMENT begin 644 0000006845-24-000004-xbrl.zip M4$L#!!0 ( !9S(U@+KG<\_ ! .I#$0 1 87!O9RTR,#(S,3$R-2YH M=&WLO6UWFTK2+OS]_ H>S3QGDK6PPJL03D9G.8ZSM]>=V!G;N>>>\V562[0L M9B/0 '+L^?6GJP&]6+(%$H@&UUXSCBT0='==55UO7?7I_SQ./>F!AI$;^'_M MJ%VE(_V?P:?_[^3D?S[??).^!*/YE/JQ=!Y2$E-'^N7&$RF>4.GO0?B'^T"D M'QZ)QT$X/3GAWSH/9D^A>S^))4W1C.RN]&)XJND.-4C?.1F/AMJ)09SQ27\X M&IZ0D:&/%:I2Q[+E^U-ES#XU[?')N&]9)X9#]9,AM;63T;BOV)JE&[37DYW3 M\7"HV3W%HKIB&YICD[XY)+K6TS6+.*1OPVLG,9L?FZ,?G9)9]T'^.U&Q^'H=<-POL/KN^Y/H6E^1"'Q(]@ MYB1F2P>/4$X4[435LH? EQQW\9S%,S1%Z7U(+JZ\[R2BH[5WLK^[]\'#JZ]4 MS1.E?Z*KV7-&P=R/PZ?U=V8/2B_RR69?F$6+N9C>./ M[[L#82.G*VW\@NK-WH1H&AJ=8K*Y'> MD7[AY7$"-I<0>.F!JKZ"@55PN:\-877%3CWB,^13_^3G;8>Q!"7.X-.4QD2" M[Y_0?\_=A[]VS@,_9JQ^!\S3XY+@/4A0_>?2O'<>-9AYY.O4#G[(!N(^G<",- MDU]=QZ$^_Y5=OV+R)G1'R?L?XQLZ_FMG=,(0[I,I/(FZIQ<^>]W3.1M=2+Q+ MWZ&/_T6?.I++Z#<^84P\4/A_O;[!1K;VU (O.6-BSP'1]]4C]QTIX;J_=ABG MGH[=1\HD&/$ Z^E;>YT!_V#_%V:B]JL;C8CW#TK"K^R3:/$&JS, D5K6"WZP MVP-G_17]SN!O^OXO.)^'X=H$+GSG"]LUUE?/89^<3-E3)O#-$X<\G5!_,02[ M,_A.PM%$TC;&\6$=*R$=4_:Z$8VV0!PDP&G$A0<;J<0EPFG,@/W73N1.9Q[P M!?]L$L)$UM#PO MUX&_QRX-)?Y\NE7PGU_^USJ4GW]YD'VT_O09IVSV%Q,#80Q4 /3HL$-IO>Q[ MRVN+83K+6U7U1#.7KTBN9']G+_FP-N_MRZ )L R)/(S3F;%%L!G]:5( M=\C3G[=?BJ^2(=HJ 5.5L$I,)-\"_#AU^H M'TQ=?]MC\\)Y[1$?UD>_DYZF /1\+B;[;,,]LICLB;8,&E^&?IYET/@R],I8 M!DO 9=!RHJ'$9>@+L PK0DY;UQR*";GUF=FBS6R-9H?,3%6JGEH*07H/BGSR MI\->]CCSW)$;?Z?3(7N%X[*KB3\G->-/;V.&0_C.!;/UF.T43&?,%//CZ.S1 M94I,=AO[G&GFMW$P^B-YUJM_0V/B^M2Y(*'O^O=18Q:^?\W1$*UW_=$0 MK6GAT1 5AQ9HB!;5/,R<(8XD*%2*;U\3T1"M8QW0$&TH@-$0%9Q :(@VB%CB M&:+]DB*B.AJBQU]S-$3K77\T1&M:>#1$Q:$%&J)%-8\:4@[UR@W1-G*,"(1K MNN5\5 .L#@(UW4*NS0"K@UA-MY:/9Z4<<"#DV9I7;O2VA4&J67^CZ9;YD:V4 M\A:^\>9Y[59*>;1HNJE^+,%?XO$/H_%6>@V"O\SU1\N\IH5'8UL<6C3=?CZR M>ZK0&VB('G_-T1"M=_W1 M$*UIX=$0%8<6:(@6U3QJ*([;:WQ:L0@&6!V$:[KE?%0#K X"-=U"KLT JZ-& M>-.MY>-9*:45M[8:G[=T,ZSJI:P5GX3 M:%:3@B6L-Z )-*NGS9HEK&^@"32KI\N/):Q;8%^:73_0L+U;F;!. L')5<\N MUA?632 XN>K9P/K">A@$)U=-'>J$=4@P@Q=ZG4=704RC;P$CQYGO?'5]XH\8 M&6_HB+H/9.C1ST_+WZ'K]08='9H]:GEC4\ZV]X5U6S29/*6UC.H+Z\DXC#S0 M2OMTDRSG 5NK<#X"!RS[/0[)*&Y,R8Z^L!Z,UM"J/+ZJR7,!S>6=EPEU0Q^H M/Z,3O1ZZ+GW!!;[XG%&1S%U,G7CEGT:C0DGQ&VVJ2>D M^U3-@[M. ,]9\@_3%*I]TP)1*PLH$NO7Y%1I'9P,A!/ J29_3^O@9"*< $[" M^J-2'81XEUR7@&^OZ!S?YS[[^HQXQ'?.@W 6A&S=/P>^TQB5T!;6M23HRI>F MX-G">HE^I\X]$RM?:.3>^US>K%NLV07JG$7IO4L:[5C^W(/XPI;R@;T<(OO9 MLV_FFWK/P)#==.G/YG'$[U ;0P9A_6%ED$%K#!F$3=(102"^+2@(F_M3 M(13$67UALWB.P01HFB0@$-87T^YU5Q5Q73'-X[Z&VH:J(JQ7J.7K+JQ#I@D6 M66E.4541UCG2!#V\1#JTVD/1;E6P1!0(ZR!I^\*C2P1%<88%](G4NOSH%&FJ M>5 B"!KN%&GJNJO"^D06-0L^SR/7IU%TFSPB6DU)9HSHQG04ST/B?0T))&NE MMU5*@1(;3*FJL Z)PA3XS2-18[JLJ:JP'HG""Y\>+XL:AWUAG1%Y2/"-A/?T M=D0\"D)_U)S.CJHJK/-!.*DOP/E)51762R#*%B$$E81U*8BWGPA!+V'-?D$V M'R&()*QS0+B=JBH+45C+7)3-IZ*%U]ICFA_3/BF5!(VVS8]KGY2Z[NTQS8]J MG]13CD?5&FW&']T^J8M*[3'ZCVN?U$6O1EO]Q[9/ZB)2>XS^H]HGY246:HTV MXX]NGY2X\.TQS8]KGY1(@D;;YL>V3\I;=UU8T_RKZS-4?W,?J'/ILPG>NT./ MGD41C://3]_)OX+P'(3,L^2%>10'4QK>4(\?"(XF[JPY4.XR-A'4&"*=(5,4[POH"A*. M" QC5.Y":,I""&N^BZ] 521*#&'M&WUC;$%#6/-7-U&D[9$EA+./'_CI"V1:X4U]E]?]V\TCJ&S6[+LS>$D M82WT[J/+_JB&<6D)YYY": BB??2$\ZHA M- 11.GK".?<0&H+H&CWA')+-@L;1:TW4HG4(YQ]%D(BG?PCG1460B*>)".=& M19"(IY,(YT<5'B0UU%.J11$1SGN*R!!$^T"?J>C(J$GEL-!E*CHR:M(SK$9Z M3'E3Q?21%YZ;I<>U<\.W&NFYK(=$->V\5B,]B+5Q42U;8"/]=[5Q42U[D7#> M,V$KQ0JQ+PGGQVH&N>K:HX3S* D=BZR+J83S[@A-I;IX23A/2T.\Z35Q55\X M_T=#Z%43?_6%\TJ([#JJBZF$\TN(3*2Z.$DXST1.(BW;QH>S(&2WGOG.=3RA M84N923CWA.!TJHN?FNJCJ)&?ZG#W]9OJG*B1GRKV^7UP'T]#&@7SD*FOR9\3 M2AP^>,=]&'QB/SCYW/%PJ-D]Q:*Z8AN:8Y.^.22ZUM,UBSBD;_\3U,/E=Z+X MR6-DG+K^R82Z]Y/XU#!G\<=?KA-/3E5%^?\[_+[!IVA&_,&G8?B!?3OY/7G( MQJ-@P"?$<^_]TQ$%%RQ[ C]AG=TP#$(V\)-1X'ED%M'3[)>/CAO-//)TZOH> M(^X)_]+'*=,UV."&01P'TU,8VP,-N=*1OH2_+[F<#MNVNWU3AY'';'UB)WMQ M.JDNG]2'V-F\9O>[MO+R9:6K+JY]X,\.LQO2Q=-G<-" MZ4S462QQ][7TIX17/J;7XV"VY>*,.([KWY\JDLI?L1S#![Y..0D!8\JNLR$& MX6GV@C&#VLF83%WOZ?0O=XSU(NF*_I)N@BGQ_R)'Q(].(@;.<7)CY/Z'GJH] M1@W^YZ]D]A9[#B==NAJJ!FOY\^KR[N*+='MW=G=QNPX> 4=[>W'^\^;R[O+B M5CJ[^B)=_,_Y[V=7OUU(Y]??OU_>WEY>7]4X!2W7%/Y^=OO[Y=5O=]=7LO2E M>]Z5-,4T[!>'G7(8X,Y@SZ]^%LJS61A;9_'/7?_][S^I/>5CGFGI1YE6/GQ] MO;[Y+GUB\ML/_*OYE#UD)*5B_H:.^?[;D7P">ZM#W=,OP6@.FQ+4\.AP"3]F M-PQ4Y>1O?!=8/F4@U0C,?"1-*+:3L'E(:B:"]MC[BJ58^^PK>EJEK2G;7;39(^POJ\SBT?'FT@2S_ @Z"UWB23]]=Q0X5/I^FU>V M;4 HV9@+<\[?YDP;HZ'WE-1ZZ4B\\DW,5"4V1Z:SG@Z#P!L2SPOB8?"8\9@& M:+4MH_?Q.9LMT)FN>;'E_-<\8DKPTT$KFH\G[:ZY2R#Q%?W;S[.;NXN;;_^0 M;BY^7-_<23]^WMS^/+NZD^ZN);8;WK$M3U)U*0@EU7SGO)>NOTIWOU](*QOE M8I,\.[^#RZJM&VO+]+JBLLZ*($97&%T]ANRV\XENM@3,FI#^G2%*2M1UB6GQ MU-E#J/_@7[](;( U8)XZ[).3*7O$!+YVXI"GDR=*PA/J9PC5.X.KX"$QE313 MEL (S+\EU"U*^UW%MO<3I8I5B2BU-!2ENY20D+W.A22:0K+42&6IT7I9>G=S M=G5[R25F7<)4,%D9+R"3"L_<:SC8 18^A*DI&YUQF<_;C^[>)"NKAB^M^/F\O;BUM9NKPZ[PID63YG MANV$?G?Q2$8QG[@4C*5P,6&)1%(THR/P.SN2ZTMN'$FC"=??WHL^JW5T"LE MPNJ7>[N =;NK]O32%4Q5[:IV/@6ST&.5;D_=;[2O7S/U\I5L7>_V;:-B)3MA M6(%TPJ+2^M(?I>$KMK?S@-=YTO3CG"G]FQIW!'?,PN !GK.T#JW.X+OK^S0* M8G* UKT6;JCCUC92^(X\7J;!T!&G\KK^U>\,#/5$L56[9QJOTJYL+DE$:-G+ M^%RIV6Z-ON-0!\,H@(BM]*]YZ$:..^*F ]O3W56VX+>%]\1W_\/_?M]*2-=* MCLON3?>V*UU,9U[PQ.BQCECI*NB^WX;% O%080BR[ZW-8+^JI-B9XX0TBM)_ MOK'GJ9D$LYD$8["2_DZC6++Z\42ZC4-*8UFZG;N,R4U-*=<3U*+U/&>_7H=W MP:_%5JXJZ5Y.9H'G1KAR+ZP)4JU6@JT IS[I_I6H#J,@L9'MT9\23Z2$?SV'T +\48 M3B*T4W&I;]49Z"1 W1;=I$:/^6YVX]Z6I9_N?_^IKZG6QTB*J4=GD\"GDL]M M!!GT8&\.Y)!(2(D$D:!3Z5U^3H7]Y8Q]V"3'\'*LE\2V1_D%0X$=_)/AJ[$2.>!$%F!K(Q.$G]>^I($>REDD>8)I81NK'+GIAXN&G("#2;A]$<7-UQ(+$[N'6F M:N^&[V'K@1#=CK<%S M:W5-TZS%/V:3H,O'=5 M::_-6(RK--C(H4$?D_U28L+WU\1EGRPE= -=MCDWVOR:8;IU/:G:D//40C,T MDTR& ,8>C/Z0I1D)I0?BS:GT9Z6KZY+Z08?,$2F"/H5OPCHO??%3MDVX=K'R M:?P?E_00/%^D?)\D5CQW.(%4>.9KLI@493K9%8D<\F^)]T25OI/P#QI+W[Z= M[_:-Y+%BZ]52+WT'@@14&CXQ(X*R^3$E\ \F%2F/ZX!&NI*?\4Y-K:FJ GOOON0M:+E-NAS2]@3TX5723KZ[FTZ4Z[XJJG)$(]&"X#/ET MDL.NLHT,;IV%=$3YMJ9J$L^XC:1W['F,F%(T9Y(\F@20+I+EK\43$C^?Q2^R M/E089_+E="+O96YKO=-69CMDN& W#?_%Y@)?XO>S;\)0TH?QLXU\)'RD8(39 MBN20IZB[*XTM)^G_SMX&DX\.(_ICG5DJ:],OZ+(\GX;1@ MUWYG\ ^ZX7(7:^T#4=;^*MC#E],D805Y)XT4$RXC[>+R0F27+F,S&V?,:J\7XS9W<:B@E"ZH;>S[TDTGI[UN$K& MLQ! -'K??3&M%N5+P6R>!1X #JFX6<@7&^4+RI<%7[J11"0/BNM(9#1B\@5J M&#B<)4-0(+9^*C'@G&RY$$V96&+O"+.MC8%URI;@"90E]BRF7,":W4OW8? K MGF17NTQWHGQ@#AV[/D_=YU$LB$EH;(XO#(]?5C]FM^V\X<7A9?>!OI3>^\)0 MLSM=/Y&=S+@\T3(-<%7MZPJ MC.9JF^[=*+XI2=@'31&&;U[,WR:&5S*WA?65_)D: M5HT"<+F"OZANR5O9BOX&U_ \V3]=O.L5D;YD@:PA6HVDB\NQZ]X,R%?>JL'UAUO"^[PD Y3 MX_R 1V3F4>()9;-/2CQMJ682A/Q=WA.\_)?+7@TN5I_-+0#GYH,;<;70)_X( ML,^413C-"S=',?$=$CJ1!&=27.>E7$[]'7G_NE>S#M:?NH[C4>'LLQ?S(U:K MV\Z"A(BG(84@VP/=J'>[] !S9ZZR_ H91H$WCS>_LJM$;O)S$B[7^YZ>#$-* M_C@AXYB&I\3[19ZBSH>J"O.^7.>S<3&2:$(];Q'/>,5 M.5$:H/>JZ7(+*Y!["]-W;F%UQ_;^02.QHI["1)P;&/4\XP'#+W245B>TD^J$ MZ["<9Y=B>SG]9QKW487X]<9F)%?^U<7GW=DK[#_/WVY^?;RR^79S>76PK7"U 23,!TACV% MP@%UK%Y[K&5V#:N"8EXPVJH+6>V*\M9C;5=8DZZ(9[Z]H>7FE//86:R2S2H9 M&].YTL)-IW.?B2"XJS/XP;:=DLY&'5Q9N=2383_.;NZDRPK#1J]Q_WA M(^8G(LQ8I$D(YL.?5C$C.,UCM!=< MOS&=2FH1/ZB G+9M:G5Q6L&Q%. T?973%FW<(NG=3Y_,'3>FSOM3Y+KJGEGWN/>!I/Y^)1Z!,RNV$TCC:"\<'Y'FN?"6$B;XLC9'(Q8ALO$!* ME#,H9XX!0?N9G+FAT=R+N1/Z>D:3)Z.X:0VM310W*&[J@R!D.JV)FQ4]G4D< MB#:'= (]F1^H=$%"'Z*L*'W:0OH>2A^4/C5"T'Q=^I!H(GWU@E\H<5I#;@LE M#DJ<&B'8?U7B\(2B2>"Q!T=_D2[^/7?C)Y0];2%\'V4/RI[Z(*BKO) X&U,< M2&M":%N8!,5.6VBN*BV6.\T(&&L8,!:?5WK0P)#XY)X+P$6.]1]C>(5B^(YG#(Y6P8S..L+O6-&_V!\K(M&-#:[.9OAKPT4%XV M@%41BVA< H#.L_)X$')9IP4$+I#*YY.08\)2$N MF^$IB69O2:JB=P;?Z#WQ$FV#]WE =:,]M$5]HVY!F':,.D-QV 26Z74&X'V2 MOI)1'(0H"=M#5I2$=4M"C(,V@UGLSN"GO]+O^Y9X21FJ)"-MM=4AN*E^1KPK M;:H_HLAL#PI09-8N,DT4F0U@%E4KRUF%@E!$VJ(@K%T0]E 0-H%9S,[@XG'B M#EU,(6X12;4VGYLJ)/]04I0%JWYG<,O6E<1[)S@1G"JLSN./EDWGM M"X:V[0>Q7JC!G**[MZT^Z_'S;;1EODU7^GIY=79U?GGV3;J\^GI]\_WL[O+Z M:K.F=$X4ZYTMBY!*^A,0ZPE$^2*XC Q^?'IB%.I'6^HB/,N&./X0/JZMC6IV M%0T68_NQO^6EY.R^77B] RMXJ*>LAS_GUU>WUM\LO9W<77Z3/9]\84"^D MV]\O+NXJK\">4_:O5*P4M0X[VPBZ2K(9%"W$WNMW#3M?=X9BUTQ]OZ>^6H== M[^I[EG>O:;!6:WJU+ZI_\P>>NC%[V2B'^^C=I2_%DV#.'NI$LD0?1Q0:<4#3 M%,DA,7E?P+%TF,EQS%KIS[L[;$^(O0H>THXY9M(QYPVOQ5$S$X!96>^ _]<+"%V%I^3,(0&NO\-#?/R]>W3L[Y] MNM(9:+IL*-9&S[[M'77V8=X")$)&04;9S2AP"Y8=LV=8,@1BE)&VK 3OL M#8WBT.7MQ6&/K53OTHHMX%;1T6S^VK$1+8F1UE7Y/S0, MMC"6!LW;^IJJ?3R4LUY!=U5;$&*J))E=&%.[);;.)+9L&K9 L"K)),J=W[$U MY*'VCQ _>DF,CRC;CX<>C63)IW'N/(G]W1RO<5Y>1;#9G+=3FB]H2";IV]&T8=_UXR!T:;7>3=2(=LCE MC!!/C)6*\E"O,["4,E@(56J! ;1#&A\"((L!J"\;ABH0@-Y0/('= >M]2)0) ME9JRW.XI,?[NQI/S><3F1$,>0]Y?Q>EW!D9?5HV>0!H.XNK87NKR<05=$&W9 M4'2! D"J 'M$-V<(DF^SWX<92B=@:[)NJT(I *U.=UBV1!?-=$!.O#,%RA>RV0VH?Q&D:$]B6)AMF M68[H(DFO35&\WS+X=LCZ@\"G,_#U=5E5#G:;' M\1\W7K>/445(K.PQF;$!/ MLC3S"&P!OL.S-&<07N:!2#BF2$:C^73N\3YR#IV%C,S\_"-<^W.9\FWYGB\K MKV&_>Q1^.?.=LVG UN\__/-L\#]@Z.S:13;PHN@T.@/#-.3>%M'(5Z30''>Q M44US--D<=56VU$V%73H@V%RB*OV69>\.QG@1!<4=V 94R31ZLJ8<[&,K2K<& MF75O&8L[!%B96(1>&49?[I<6CA-/+3@D3ZD67UW2S-"_ESQ*(BKQ-3D)QB=S M]H<8%F++^6^7ZRXCT#>@SPV\Y'K\,Z)U&E&[O'AE(LIF M>J8JZV8+3P.(*[1_"P+GE^MY&%2I4S)G5"C(,J;2&:B:+2OFP=%)C*4(C)X= M4GA?]*@I>K2R[#E4DW,E@\;$OW>A_$ZB%*]G[:,>4TM>:$:3Q%?-#-*+QY$W MAR79E[NTSJ!GR*HEDCJ#P#IZOFCYP-(9L"Q9MTR!@-5Z/3E)1&*+?8+)2.+( M[94LDJO '^T5830AAL,$M7JPH$8=6F DY<]'VA])$"DSY9ZA"82DMY:25)VC MN=H,D.871LD___9(E5QI5T7%2*\SZ-N&W#?+TO"$B;,BAR&'59%;5I3#K,[ M5DU9[S6&PUID8&TO(?K-)4/76[:-O)V0D$X"CRUKQ&O96!_3!I-U%XA#OGS,Y&(S:/.))FY EJ;50A M8PXVP!NLP&R;8GMTE-W)R1Q 1K\D/IT[&+29[V;S\5TY@5/E-Y0?G)D MQB M>'>^'CO R(*8>\ +;N#]&5%C"IG-]#&16A\BJL0( M+NR/*BA+KLO*X8Y"+,*QGP"/J#<^^7N%]RXARF='D M)B')_CQF,!Y3F0:%23UMAM0.R5TNI$RN#.@J5KP[>LATM782:MN"".SGH:[] M.:O7&1B*; J5<(%PJCERNC^M]W848A'Y&ZW?U;04ZZ/X%.II0#T&@F@JYNX-E#TZ_?P(WGZI] M/J"Z9$P ;PU&?^SL O:#AAQFKVY#VN8Y 'C%+;SA!PFOP]L8SJC]-_'F=/G M=,=1%CM.__6=\*6AZ!4,Q>X,E*Z^N?5M?'"B?M"E&0FE!WCB1XG,XTD0,FHX MTHMSB>"ET:O3N+SZ^LI$^*BCL\6K\FWMB]GUE5<6>OO@C.,-#LXA*C)C ?C_ M;@)(R8 _2FX4P2%HV#6#>1S%[!<(+E1-A>OENXK.5"M,AL*CN^2+4G1@<.1& MDY6^*2OVYHF [7WVJ@;4?C,QJD?Z 0 P^3IKFB%K]F:RRL8',OA89Y3]\4"] MY1Y?:^._EEM;.P]2+L# =Y2"-E:?F>R6K/=$RD]%#!W]S.1A&+( 0X9R\,DM M\?RI#3B+U0:(ZAL:$_:A(U$2^FSH MF*A0JX3.R'&14F.MM_K8';E% Q:VTAGHFBW;NDBA9<35D85U^;A2F95NZ;)E MB)0%\W9/LHLWX H/Z3?7,%JRG10D!_:#Z2RD$^I'[@.5O"#"Q)/BR_KNH!TX M8N-GOVVI 9O1BJ6GQI,(56VSN]=&_!K- MIT8";6-+K@=H.@>::6[J?[4 K4S3J@DG_:-RTQ'PJ-U1\L7![YP2+6GN4I3K MH'FC:I M74*B;;V:L.M=:0O4'K&6OY+.F>\<+N2J:DE9 E%KML20O9&]ZRQ35 I[5]4/ MLT;VYDK.AQC:"F59:BO9T"EA3(-1;A9$/,!Z&D(S"_>!?OSE.O$DH]K*M]+I M*,NOD"$;^3S>_$IE$.-//(4(L#MZ'70:S]*G5"(C\'X2_PDR4OT@9N^+ P < M7W7N)!V[/O%'+MC1D*',CX!TUW/\%I,:?!J&'P8;%[.YKI!IQ!Y#P^.S&Y^Y M\2Q%<>4GC!:0[XZ'0\WN*1;5%=O0')OTS2'1M9ZN6<0A??N?JMW)OC0)EZGT M]_1D&%+RQPD9LPF>$N\7>8HZ'];68>KZV8 ,DXTX-T+&X\I6)>$A)@>"D/=I M.F6<2T.XBXV)"#,6:1*"&/S3;OHPP74'+ XG":#\/^#VTPWU]\NOYS=77R1;BYN?WZ[NY6NOTK7/RYNSNXNV=47..W8+//NIT_F MCLL$POL7V7M*PGN&;!#<)E>$N(A=2D@NUMF /3*+Z&GVR\4($$DN+_FGJR0\E%JPZ9O3RUU^Z=DVE5PSU*YIOWQ9Z:I[7C/U M_9[ZVF!5K6O8/1PL#M94M%R/W>'5*7"@;>>M]L:M6RR39/,_C@9NYVHQ?L>V M%2I]9_=-(NF"[39.#G]/6Q?CBGWR\EKD!%.M!FF_N$J!'/V4">2 M)?HXHLS&F-$P<0Q*3",F>&&<*L+;ON&@_9='[%"1%>4#9UXU10B*FT)V^W[?5.N77-7!O$# M]>?T:QA,M_4SO'@<>7-8EK,HHNQ_SAZ92GVH76G+EKJ9$R=HB7ID1V3'BMBQ M5SL[VHP=>Y;<+ZU",;(CLJ-($R_"CFK=[,B&W!FHLF*:LJJ45=T9.1(Y4J2) M%^%(JWZ.5#E'VCW9M ].\\6N2J45#H0 M#1_<$8UN R]GQ:H55H-N&88M&\K![PP=DY/I!Z=280[K=0:V(NL*-F5&Z.VAC1X"/8L)]Y[<._QP)D*O ME=#;H;<> CWH16_UY=[A!781>ZW$W@X5]Q#L01=ZTY+5'OI+1=%S;ZG'/KR7 MI7OJTY!X_"@Z<::N[T9QR ^>2?1Q1OT(W:GUJKHII7Y+Z,3,R[,U*ETD1"K* MDZK2&9B:W#-%JI6-V#JR+EL1MJ!MB5I&"@EB2V!L[5!6*\*6UAFH/69#V0>; M[P@N@<&U0QNM"%PZ QCO/U>D:!?OZ]Y/("B.B %58K79!J6:JR M,+=!1W5+[KVY3%.$8"G*:QD0A')YAFPUQS&!$!1)QRT#@CVF7 M9'9D)-G7P(8BA(RO^!V)(@^B; M;&F(H39C:(?B?BB&(,HF&[9(>UE)KFIQ54+>JB?3!Z5WB9OZ_?Z*X=MNK'20 M8OA"7Z6KP _6+>(%?VVRD :%Y \6PMB02V#<;"B#9>!&9Z+7+"N1$G%S+-P4 M:N2V0P-\!2\%]W$(@S%=2Q_DS:MQQ&V>E9S*(G6?$0UY^SY4C#*X$??>;T3.Z[ M VI>/,8A82OJ^B1\NHSI-&(L#"\- YZ=E!EXA?FWQW8$4]85O2D]W!#*8CDX MQ8&RQ?O0]M2RZBT@E-L%Y9U^5G&@#+$CQ9;M'F(9L;R7OU<<+-N=@:W)9FD! MB+KS/9KO6;YQD=RO7; XP+4R/\,_7I'F=?=:4SZ,NZ5E9B%;IX1,12 M+H7\<"RIG8$E]P_/7D$L"8RE7!KQX5B"THH]6;$QBM%F,.5220\'DPZ;7 \= MSK7UC*&IT[D*!W.U)E^#RW 7GG][Y,H.Y9E!F654D!&0T83:>)EIOL?1/RIO@"-%?@ M_*#A+2#L59M5>RYWLK2][-L2MEWFK M5PYOVWC+*H>W5,Y;%121 MJXBW6E^ZYXOKS6/JE&5W'NCF:K,4V3;%]LF)8K9CBKYMDD+CUF-9!WL:Y.I% M'A!I;M7;>*_P@,ZMO!8V!T >:#L/%+/%7N$!@VN,+:S_A#S0=AXH9C.]P@-0 M?+M;6I871N-RT/OO_ ]F&!$V)')/I2$/SW'+*)*">1S%Q(>IX.&C\G@I6=V" M*909IGBVT:C!JS(')AL*>9)18^5;RAE-E^14RC )8 MQ(VO5 8;_L13-V9S'KT.) W&#C6[IUA45VQ#+_(4=3ZLK5K4K"0XR3@Z0L7^^7US=W4K77Z7SZ^\_;BY^O[BZO?SO"^GB[.;J M\NJWVQ<8[]@<].ZG3^:.R^3#^Q>Y?4K">P9T2"0T^0;-)>Y28/(T0S9@C\PB M>IK]\C%K]N?Z_+7\2Q_39Z52%GCFN9< $)-<7K)35TE8*G52I&].+W?YI6?[ M3G+-4+NF_?)EI:ON>7>!6>^/6 M+3IVH@L<1\FV=XEE+C'NV"Y#I>_LODDD7;#-Q\GAX&OK8ERQ3UY>BYQ@JC75 MIE]<0TXZMESZ4CP)YNRA3K31#^4PUBERMEMP? 0/%*Q&23-E25,@O7BW,SS/ M[-_H*O;X*FH(-X1;77#;-Q-MW_41+NORX*J&Y9T+?%NE:0K/OZ'.VB-7-31+ MJVJX!ZEII4BH^HUW/ M.-+APP73K 2*TT>

G)S8?9!U,]M,/*1OV?ZB3\=8]<7V) M">,I"?^@:3R;CN:A&[LTDB6?QI!N\.="K=XW[/X7.G1SEC]?Y?A$J"]'^7O@ MP4+^Q@8)DO[:OUV,[2QT(W;I"_O3O__!EB-P[LCC-G$/!UHVF\'+!2>U86/5 M.RDX/['I^H!9E:C/'F9RT*92FDT8R.(#'/>WJ6UX/GH/)*N:,**X#'V0-Q/9"=7X/PEJ%@ M!2S.O^91#"F&3&6]'K\ %*TSV (3/&C7"H =NG&4 3!H*+9Y ,1)BS"CK") MEX$K@^'JX$1X!)?(XNM0G:H,F)F=@;&EZD$M\NO8OIB&F97_!L!S$DV^>L&OWZES3S.E_@S.,]S0D4>BR!VS MM8<1O(# 7F>PY<1/06MK1YBNT@E [9 MD87CV(NES :18A@).XQF6+^Z1Z4 M[9?5+:V$%Y9C:B\N+&Z%QYV%1AA1]DO7D:8 MVAG82EF=O\1&6,N!=)1M^V4@:9U!04%5'5K:#0J!%:$,'L5T(4OO#'395C,/X'JEN9N=E\K9IA-SO[T)6:2A]0?/4EQR)[F<:))9&&?5Y(UCHZ6<@,1 M*2W/4U+> 2635P/[+>FZ=+M\IHPAZ0N"VV""6]D294377BL05T9DXB#$%=P+ M3+"+-7M3)45 "@O((ZFI)0N^'M,Z#"RSVS2P'5W]/:;T P^NO V5;R(,(FA* M:MUE4@_+C6\X!Y>A,6=AQQ]!R!DUCD-W..>)D'?!#\+8.M[&C/W.P- .442* MTD\\GQEBLBJ=>D],VA E/R3+!S'9&$P>2:W>#XE]A2%1WPQ?[AC M*]ZY@%E,P>ZKG4%/MK3\KN;Z('OLLRUU8.HNB(GW3/L6H())6K%Q2R=I/*=: MV@*)+>U*S!+9(MZ6B9 %Y9?&*Z*81EF->\JC9S,.F"-G(V>7EYU3)F?KO 2+ MUB^Y,@1R-G(VJZ972J\;L#+!7#?:JJ:Q7S=GM M[]+7;]=_Q_XTQ^A/8RE=S3";TYBD45U4#-O&+BK8. 0;AV GAX:MHJB='([1 MP7W[VES/*&AES%XX@[/>O(9&I0=SREK90UY0SR"/E.%Z#"Q5U!)D1T+,P:>W M&^R$VS;%]KC1JBR#WB^M#+IX)\^1(]K*$576*^^75J^\1(XX4@9:?;OC\L@. M]\J&E!%\Y'J4EZ[*MDVX G^/2#219F'PX#*C4!H^2<%"3R,+/6V_\N4EZD!" M/Z,D=2OWF?OZD/6%SAB:W/2 O>](9 I9K/_A']1]H*B!R<S0] MRG>V0J'"XKO?&>BJK HEOA%91]8 *D&6S9%E;SF(UGC%H %R_'9"0GHR)!%U M>)HZ]:/]1?C;/KA=H@CG5/D,1#E?H4E1UK(5. S2,\K*WA HLPJAE%=FEP0E MM3,P9;NW>:ZH/BB])65[3,.026B7V]]0/75/CSFJ0J4IV0E)$H_('7F\2*K9 M?DYJV1;F+RTI"X2U4-N,J9WJ=;F8TI-B*P?+[.,IUED6#QLL?1V&XMWY=FR& MW])V:[ *040\R(\C442QO&+5I\YW;$HKG;Z8++@>_PC!A1L__?"('U_\>^[. MIMN+'=@&4^\$*K0XF04U"J(]MRE4SQ@V4@['?O"VBGU&*G<+9< MTNIZ_#I;%F9"*&@I][94F$!#IAVX>DW<5X@KZ&5FR^:6_MXBFC(MTO>O I]G MI7F41#1K&(?:>YV!C\7AC6] DQMXR?7X9T3/P &XF@B2.J\+,INF*)U!7[:, MLBIOHMXN(LAV>*0J!YD*(+.U@S,C4%O?MR0]=\V@'GY<4?Y:D=ITKTV"CPN^ MVF0=B%1C5Y$VPZ90;>/ML"DHCG4PW"Q%)%BU_N3D^83X]^QQ$,M='O3@85R> MT.^Y9.AZ!QSZR*L--?T9;V?COJ$CZCY :16,]-<;Z6?B-@35^ M-_KWT5VBS M3<+R&HV;V67H&&L'7';84SO@4G"W-CL#TY0M^Y F ^+MU V0OY?^ _7C(-RW M7@;Z)\JVG#89:X5&A1D+J@;(FHE)P$V#5K6R^A!(67!NHZ]M>E,+]X-!'UX9PZ6?80JN(B2V^@U+=EX*DPEVF= M@24KZB%-S5']%MC0*ZQ]EX I'3"E];'T1:U^E)5P-.K?=2: YK-P,X9[*LQN M!K!;3Q>I'!ABK'8Y7B[&S,Y @X0CD9*,WXY&SC# IL';^O#*H:F"?G!QH[>M M1AU)25\4IZ&9*_5(H[.+UKR#IFM!S] M*, B\S0YXI5I^4^HXXNZ :R?S=E?!^MW!K:L'13-0A5?9(CM+^O+@I@-$%-[ M?3$@]G84_!\AG1%WZ7+G:GX IT6DT3P,H4P#IL4(G1;#C_8LV/"DV+$QEFU23&EX4N%&J?6EH.\C5?<=4MD$7^5MV%0W8I\[I:9 M#>'+S.69@MX9"PQM1[LRP/:Y'.ITTQ -XR M-'?WFJL*FGIG8*JRJC8&F2WJ4K>]'S"<;XBP'_ Q!MG^4^V)*IF8GHX;S\/Z M59 &BO(RSRK_($^\ ^5=<#;Z]]P-Z5I]Z3/?V;?$M*893/OOR?:6$W/H1&P' MMG;H"15BR^057575%@-;+=("\M3VCA@Y(BCF.DL)*DLS("EW)=*,J.@_K--^ M7"VPO*5SP#KW;3)8#Y)P#FZ0CHY!@0&T2WH7 5!!\0<%%N'S M<#0A42*XI[P +\_RBNAH'@KA#6P@OU6JBG]?$.EV0:-MW 3!^IX@FA#"YMAB M.A]J\C;GT#1;Q.8P88>-/C 2I10K5TBC4E215LVTH.\)S9ZNQVUPA,'5>#\P^J/_I48#9(L-G>W[!5]\T\>9B=6L@#13G%5G,W]B+HNMQTO.ML,PVH$B3*??-@XM]H+]3 M8#P5L(H/PY/9&1BZ(O>M3=2C0^)*Y2R*B-IS M[5ZZEWGJ6^#? TL=IO;TP2=G'LA;J$&+C*D" HVWG$4.804W5M.25B"NJT&[*^Y<@'&@A5 MP.&+"SD3O@-]D5P'[0$A9#13X3*R',)+$ @UY9XH6A[BJ4:3H P\F;S KB%* M8Y;6J]:\OIHL^12=ZX*DP*XF%:PH/YQ0BP2U_=,-C5YGH,O6EBXUJ%"W VAY M4UJK!IH%%1=M4Y##H&46U6W848CQ(JWUP*,0)6I-;2MI=\S3$&4P)S2A5A39 M,$KH9"!,R47$IQ"'(LK I\V++YIV"1U>Q*N[V#0C(2O+++USTL+,[R77YYN, MG&PU4&CI@=$0PL")BSZ*0W<4LPT(KM=M6[2-FTOT!P$#P_\OEA2\61 /+ISY MSOH'*W?^8,,/G.=5NR\>1]XFWYILE%$Y1[SMKFGQBH2&$%NF*66ED)&6)SCMO9NA MQ[ET\RBAT_5XE?^N_8,X?1MO:DP5/8@Q,;XAL'JT([QQ)(SIG8%NBE1AI_4V MS7ENXT4BL32D]Z[O@PN-[0I/E(1U6S0MYTJC0J.EL'(&Q<-5V;#*,D(::F>T M'')]D2!GLOT &AR+!+G6Z_WG7-C[SI9=(98H="8<2S-N"E9A 53KD=ZVTK6R MYI\K<^,6P+7H,DD7229!&79=-I2R*K$+XXM#QD3&+,B8MDB,"8D6IFSTRNJ= M*IX'45SCL4%1G-'.".11R+J5+6;VC? ,ZZ6:; M,HB]DM&(32N&E/HG*+U;AT;Z!O:VEFY?.V/"''07*YB[]'E#=N?S/+X*XG_0 M^ =QG<([%60=R9I^<-$T\3SJR"MMY94= 8+*>,4&7C%-D?I>\=WV ^\"P?YU MW(?!)_8C>W6ZPJ;!2# +(A<&>QI2CS =B'[\Y3KQ)%O^E6\E;SA5EE\A0Z9Q MSN/-KU2&%?[$4R"C.WH=/1KOCT$IWW^G;#1/$!/P X@.QP$@AVO+!&(':=HM MV[RCF'W \ZN["[)EJY=,:O!I&'X8;%S,YKI"IA%[# V/SS=\YM;Z"%=_PF@! MNNYX.-3LGF)17;$-S;%)WQP27>OIFD4/E )I.,P@S]J,A MW,7&1(09BS0)0:3]:3>)F$5YQWN]!&/I'*2A#W5_>-UICOB;+:SW+N?/IFSC84Z[U\V5 M^>9PSKVR-.E>=71FAPUEVXG!/QBU_.8J=H^3.!HJ_(J8(ZIPA==,CB> M#X'M'R24_IMX<_I,N7N+<#ICHP6EF=EL8+.?,$9+[?LWS64W-";L0T>Z("$D MP>4Y/=K>U3@;C>;3N<=M?'Y8FIE(TUE()]2/W /P^([1O$*1*GK&N/[^5:J,_$XP53F3C^2H?A MG(1/DF;*DJ9 IT0\J5WJ8K_H_(VX%E$P%351/58TCZ*.WAX<<=-D3=L,WV>D MKWB9MFN9@N8.8%+/7J!O7U;/P>R^+2ZJ[&!V4)K3K2S9R IS.]3$E8TM72B1 MV9'9D=F/R>P[LB!*8':H7FOTY+[:0W9'=D=VKY7=M:O*7+EK%YDA/9 M'=D=V?W F1>K(K!Q>.:%,@(E,+[1&>B0K+6YS8M7K0JY#KFNLDUVE[/L<%:# MD[%V#RUHL8[:' NA+U<\I?E#4V_FE'Q^[/+67EC- .F$=$(ZO1DZ%3(G=J@V M; ]*(OX0_2^LU21GZTUKTX! $ D.(F3V9M"I$+.;53*[)2"S'^D@=;T02+*U M1FO96BZG(^^ Z==8O)8=\)-$YEK/R$HWC%>I!/2">F$=$(ZM8M.A92_WNO* M']XC*(Y MS\MGA@'O+[\P$T;PL>?Q$_88_B*QY8!')1Y\L\9(N1M.Q(DO/Y MS\\DH@YP'F,[3K8M;&8IP&:;K6?1M]-4-&T3T3L*^KP )7Y$,C^2U,[ W.PO MCT!J$Y!V5 PO!TB00BQ2%7 $4@4-;_*DS1R,)+TS$*07+V(((TLMHE.9!F(Y MK&Y RRJ!-HTW$5WBY#D9 GUXC"DC$,:3T*^*=$(Z-6:+VF'7G#G_FD'P^59U SUU(C>FMS1\<$ MXR9":-^ Z$[\I'OZ)GSZG<&6>AB(GK:@)T\4='_TV)U!7\.P57OADR?TF1<^ MQ0R*OL(DDZQOJ;N)Z!(771@4;0:=BDF!4E38_:0 9&K)JKV98U.+%'@3D=+D M'%Z4&HM QVG280H#I8(8BPYE)'&NPW/B>3GMQ+YVH**/[F)QP+._F?@R8A'C4LA@LSDDTD1SWP76H[V#8$!UC2">D$]() MZ71U50C\6W+?MI#+ MD M,U1D-F0V4;?4G0ZPPUG,Z P,59$U-(\Q?4:X#JB'=7X6D/G3L&"3.*LH*1H4 ML$1X(;P07@@OA)<0FDQ.7=:U3;L3X=<"^*%T0WB)+=VJ;!IL M]YHFW5J6@(8=A9N0BXOG^9!.2">D$]()Z2209EA-1V';Z@QZ6\*LB)TV8:>: MCL)V7S3LO(DX'784KN%0V/9S*KL8JYR6PK;-['8Q3H0ACLH_7*@=H9FPKD!; M:L10@S!4"$)':".L*VIG4);G$'$DJ"PZ0A=A78%^U+8@9YP115C6H$5T*L;M M1V@DK"M0FK4O2/N%-Q%0PB;"=$O+:CJ.":D ?.CRH MMB:&9Q,QAG$,I!/226B9?4B\J129;7.9W1>D7?/;B49)X:+Q+K9H%24Q<6_P*)M: MC*Y\'5TK09<._5D,]9#<1417,VQ)I)/84J 4#7<_*6!T!CVYIPG2W/E-Q/Z2 M(AE1:DL"'7E &"-_PMB2+S=0?MF,-#L#01*#$3NU&9$[.V]OXJ:'!R+;C)M\ MYN,>N+$Z \,0Q/F+R*G---P#.="8TSBD&P$BIQEF'])); X_5!E]D<-MIHO: M@NP-;R(P" V2)2?KG(Q1071L(9V03D@GI--1;8(OV0YT'DRG@<\5"-B:BGJ% M-05B0YIV2#XH0@E9'NE4N9%0&LNK0K%\RP)!VYLU?"8>+WY(8NEL?C^/V%+U M9$E3-+WN6- !/1H%;(I1-$BTJV$A_];U/(YBXL-B%.8U: &LR8JUR6QM:MPA MDN.I0L"+)U?R-R4M-ONFLOF6;557*FY*JFMZ9V#)NKGI:$<>1QY''C\"CZN5 M\[C1&:B&)1OJ9@@?N1RY'+G\"%RN5<[ET$E1Z?/--7[74%84(S]"VF+M$7:(FU;0]M"EL^.I)]#^JCK M6K\ST'JR;6UF"R/P6@@\%"KMI6T1H;(CJ^@PF6(W2J:T+-7HM3/GH]6^N)++ M*;SHN!J3Q[K3CIK(=7@T"^F$=$(Z(9V03B+2J5B4;4,O?"'*QO6)\U5U8JDO M,N7Q>GQ''K>HAKK2&1B:("=3$4#E ZAJ_*@"X>=-Q&6@A#4_I) UJEG8"R/X MV//(_FUKWO@YH(+'$@[J6I.WPZT.-4=%Z@:%6"K?H=P[0JMD7>\,>HBCIN&H MF+9X2/^CW$ R.@.L4=LD#.$Y9*03TDG(N$XY$MED.J) 6_N;".!PZISPMK \ MC)/1!T,VZ+I$.B&=FK)![;(91.N0K4,?7UGM';SA(2Q1?""=D$[-I5.)=HAP M4MX23\KO,&L<-YIYY D&2U\',M[9]CL1*GAG.5!I1]"ZS Y+;]SY6+3#4F4- MEG0XJ8)QH%9 9]^@]#[-$'1[F[<:<=,6W%35F,N ON H<-H+G*KZ*QEJ9] [ M)$41@=,,#Q3226@&KZJ[DJ%U!M8A[=,P]'WTYDIOW'.+'G:D$]()Z?36Z%2J M05!6IQ5#/[S3"D()61[I5+6)4!K'&T)Q?,M"0#M[*UT%#W0ZI*&DF0=T5RJ_ M[%"R0*36K:-+4H42F]ES:J/)?<>LDPD]9+_*#TVI$?E5>\- M"]I%V;+9\*9P*#]0?J#\>"X_C,I;2AK]SD#7;-G6-RMKH/Q ^8'R0S3Y4<@; M:6STJZRLQ95A,TFBRNI!I=20C9&-WP8;%S(CJM8"3*BA:9JRI6^F-:,64#P2 M\B$F['7L7\=]&'QB/[(AIY,SM*YEL@68!1$_8'@:4BAZ^$ __G*=>))!9.6+ MZ5R4Y5?(D(U\'F]^I612J4I&*?[$4SA'Z8Y>IYW&RXM0*I$1%!8A_A-;5LD/ M8O:^. !T\U4G,76DL>L3?^02CXV8?'7F_?41KOZG@Q#2OXX(6,VUE/B_2)/4>?#VI2F MKG_R##2YZ3T>5S;'A"F80 E"?H3VE#$A#>$N-B8BS%BD20@2]$_N>#C4[)YB M45VQ#,PJ! M+#&S;=AEK_?C4YNK ]7";V-KX? [O[ZZO?YV^>7L[N*+='O'_OE^<75W*UU_ ME6Y_/[NY^/WZVY>+F]N_2!=_^WEY]X_7V>F(L]G.3.]^^F3NN$Q4O']QI-O( ML"H'U@BCZEUS,9L\$N7Y][AP7PIFOINPU?#(+**GV2\?LY.2KL_GQ+_T,1UH M*LUAK,\V$_["Y'+*Z+;9M2P;>#V-KZG%?-SR3]3$J27Z25[)>CK9SKB6X33LMZ.! 5W3ABCI25WWC27W="8L \=Z2)_&^KVKL;9 M:#2?SCUN]2?E--:Z=4COH%/'>RGIVO&F5^HN8)R3".?4K\>,->[96UN6?;-N MGO2[:ZTN4.3;DVU M,]!TV5+:Y+#>C99F!+7V1+UX$F;?R%6.!6@JNV\+,FN5QZ?@?+QL([,CLR.S MU\SLU0>C]22EU5)U9'=D=V3W6MD]3TFKP]C=8)J\:;OMEL#X<&ZV)VN&4EK"*'*=8-A[NUQ7A.DJ/V-J]CH#O=^35=O&/19K MX"5K?T5CB>:/2V%9&"S?@W1".B&=WCB="ID3.TKPLSTH"?=#Z+^P5F/QPCO; M#JT@B 0'$3)[,^A4B-EW]$TXC-G[ C)[R\K>O=;Y:+26JN4Q"LJ2SRR(8"S% MY+'N=)LFLA9V"$ Z(9V03D@GI).(="H6-]KP8;\0-^+:Q%K>]U(G9 KB]?B. M/!;6#6UHM=OOE1!(0GP)BJ\-V^*(^.HI0N'K340G+J-HSK/[F8$100!L86Z, MX&//XV?],7!1IDV_/95_EUG/PY- KFU=5_G/S\\[KF_C,;4S8,,3R+A'-)7O M(,$$A- Q+&%I!.2" MQ;P.Z5VP+&P#=6TN_;2J#9>%P^=;U0W]]]R-W)C>TO#!'=%D;[NAH^#>YT]) M^W\7]#Z:G8$JF_9F@P^$I>"P1/&!=$(ZB6F)""?F>^*)^1UV35;BE@V6OHYD MO+/M=[Z)H"27!U)(9_-P-&%B <./I<;]#X@_WBQHXISY3!;';K@M'%E8*%M< M*%N;2<>UM-E&A%6069(G)KD37NF6OPF@?F=@'M02">$C-'QR12+SPJ>@<+(A M94+6S4/RDA!>0L-KUP&Z"N%E*9U!3Y<-O8_P:A"\,*K:##H=F/YZ/#&@=@:6 M(>OJ9H/Z6L3 FXBU)F?NHM3$\_;;FEN"T%C@Y;<@]@&,PX-B'Z.^('*&1D],\W(F< M@BHASTA0-11)30(6!KF;0:N:(#O+FX@]GI-H(CGN@^M0W\' M(WK&D$Y()Z03TNFX%L67; =*VJ%R_0*VIL(JA-49&+)E;YZOQ."2N%!"EF\& MG4JU(4IC^;Y0+-^R0-+.'JG?R9.D]05OCRHXMY72&]54*VZ.:MF\5JJVI9Q* MF[H]B.24JA#PX@F5\KJZK,^^J6R^+:13>4_4O@(]40WD<>1QY/%Z>%ROG,>A M*)JAR%:_W;T1DX],^U!6T MY6W53LMK?(K,ALPF[):ZRP%V.(L9G8&N6;)FHWF,Z3.B=3M=(:?.:.8$\Z%' MF^#^KB HF',M&A0O1.HB=9&Z2%T!J%M(*:NR56O?9/J8)>O]S?[S"+U60@\% M2YNI6TBP5-D6MM]KEF!I6=(1=HP57Z;B"2ZD$]()Z81T0CH)E'5NUMDQMF\Q MM9%IC8>DHB.^Q,97G1UC^WVA\/4F(CS8,;8&QGOAA,-16L;VH?XIEM9M!Y"V M2?!C=(NUE,/K&VVAGT-BO$XR%9P8&$AYF13D@G,8-" MY0AF#?O$8I_8)GL\T/.)=$(ZB6D[B-9 T(8JT;(E5 -!A"6*#Z03TDE@,;_+ M$A%.S!OBB?DW$5^Z>*3AR(V6\24IF&%$J6P.K2*@!!>O$UIE1'2V<18DJ8OD M+D LE2_M#XDIY<415$??[):%.!(<1X6"DP=%EO("R>H,;!,CW$T"$08KD$Y( M)V%R_BH0RGTFE(UF-,-TW&CFD2<8)WT==WAGV^]\$[%'[)LJ=L[G7GU3;&?1,;'R*C4^;PSGHZT0Z(9V03F^-3J7: M!"5U0304 [H@]I7-@F48UA472LCRS:!3J49":2QO"L7R+8L$[6Q\>C:_GT=L MJ2SL?5I[[]->Q;U/#:67]C[=9#9L_(#M7;"]2_7M77I5]SXU%"OI?;H9%$8> M1QY''C\"C^N5\W@?JGNILFEA5T3DJ[GUJJ"IC,;,G6UORT'!+?8L9 M-(+V/FV4][O:+FG># +Z81T0CHAG9!. N6:]\IM1[FI M&,*Q$DN0YW!YID$/%#6 M5"AM$]$;+[-S AYH%Q=%>*"]&70J,?!4"J]KT"_]X-Y#)>+H3828L*=JW9(/O6-( M)Z13U9:-8,WV#$UE1I)L]D1JMH>P1/&!=$(ZB2SF&R;E-?&D/';VP3MSWHE0 MP3O+@4H[ NME-H%ZX]['HDV@#NVK\5(/*$/3#VOE@XYK<:"S;^1\GW8-FM$9 MJ(B;UN*FJM9A&O2"1X'37N!4U0%*@^;O6TYG(7+$10[&PIM!I\/RIN.\6?>Q()Z03TNFMT:E4DZ"L;C!:GW>#P8[FC8(2LGPS MZ%2FC5 :Q]M"<7S+@D [^S]=!0]T.J2AI/4.Z !5HNV=UMQ)%NA49V1T@OG0 MHTG=G:863BJE/]0N?^ZA[:%T)6D/I6[Z=IM4&[=$(-7LLZJ-5\036?FK9Y>Y M-DV5'UNV1'(6^DI1^M#9=N\#9<=J^$ MW$AD8V3CEK-Q$2[.DY%Z&.]":JIER3T=K8@R(B$?8L)>Q_YUW(?!)_8C&_+* MLT:4D3A,X3?X- P_+)9ZXVOIFAA:US+9NLV"B)],/ TI5'1\H!]_N4X\R9"U M\L5T"93E5\B037@>;WZE9 JK2D9@_L13.(#ICEXGN<;KDE JD1%4)"'^$Z.& MY U\< %-P8I&8.M+8]8D_X$],O3<)L!C-R3T^& M(25_G) QF^ I\7Z1IZCS86T=IJY_\@QIN4$R'E>V, D#,N$5A/S [BEC>!K" M76Q,1)BQ2),0I/6?=I/(Z@SN0#Y 7=9S$/3\)!D9;"-_E8SYTO[$P7AU?7=Q M*]U=2^?75[?7WRZ_G-U=?)&^7EZ=79U?GGV3;N_8!]\OKNYN7V"Z8W//NY\^ MF3LNDPWOI8)R("=G&9TMPB/=,TY [3I5^YDNYC)<^/'I"7Q2N3C93D&U6\G6 MG>OM']>71>F:L Q2JO1^^Q_.:.<+V<_^./.='R&- MV +S/Z_'7[/-X':Q%WQQHY$71/.0WK%7?/:8BK14=WJ)AN7Z<^JEG, #* M5*,9; GAG$F7V_ET2L(GX--;MCNX8[;K^[%TQG:G.7S[7OK!QC1R:91I3>G, M-C'V,@#9%].Q\,DLQWBB=E[:IJ#6@3M^J@E8GTGD1K HLQ4BY-E=CS7L[0+B M;D)WJQ PK;-9<,^4D M0!6:A&]%(EB[]45=Z]XO*TIS]%,ZZDHP!]=/E'L.%G_DS9WL=D:5K^R2I"HG?Y.B23#W M'#8BB>W[_ 8V^7_-_<3* DEZL-;OM)A. >. MT$R>]J)WI;]3MB*4WQ@Q[EV;8,H<\.YD3>#3?[,'L(6%N?H.^S_#O;==FY/. M/$\BR\(>DD]'-(K@_3 V(HV)&ZZ!$*BW_GP^>*8[ L6E8$9AVV:#8-^9>^R) MR7GNL4='L,H3&E*@&8PKY-LS8=HG6VM/9G>-YB&?@$]B)E426F3/8;>F#V< M6ZQL*?YP,6O9CKO8K:,$]@*.DSV@*K/ MFS^MO)G-C9&8/LZ2*62O'L_9VL'D-W7BG8R97UVN5P[=T)%'HHB+Y?6Z]@(, M>;L,.F>F(V$0"Y\/G8-M"IP3 :(?W& >,;HSK@E"#LV%=)D2AP+5@\"M*D)K;W$IO FG$?V7\P3Y.6.XY5\(6 M!QX%BE7PS@,#U&:[AZ/W>3 MC93QS]GM3YYV>:(8LE2QFEO0?_%MB3N)[ZKJ1^EV/IMY+A/RB:)*I1]A%("XF)&8;6IQ,F_\%6D&4 M36><3F>6SEMRDFFO:S-D&,QC3NMDC^5\/ O 0 ;),R50D8NI.]D>.%NL(O@J M']SX27+X<-E[ M^&0Y*EAP)EK]$_9(]@A&BR%7[-D2< ]IJEK,B.M(3*3SZ;*9^&OO8\LSA1TK M@+3VKG2].KE4IY0> H^))%#;N+H:I>+*]1\"=Y2HAZOC?&%-)R2"C6!($S4R MV#(..=D4TVWT%XS]28;- >[T7(95AV&$ZZQ\/V6/8U/W@RFS15W0]BDC.BB MB[$LU&+PG?.! VH(^'_=&:B4+X\]!6>"/S86)^!:7;I4[-,GQD>$S2^FR1JP MD3"5;ZF=NS'3@/D.O:$CRM*?B\0/-H* S^('Z>!3F9.*G*7$R1=-Z"W-:ZLS ML+J;D83$F<]DDI,FMQ:8JDHBNUDV#@^72U7Q.F##)M)_:H\TS!^?#, MIW"8RI/3.V8URSNF+=:LD$_JACY0?TZ_LGWD/%5I_\[P=!3;7$RB6BY4,=1%*Y6%CMF@>F47T-/OE8U84T?7YU/F7/J:/ M3^.O\(9G46/^PN3R,LK659)(6WJ2+GUS>KG++SV+@2?7=+O;U\T7+RM==<]K MIO[R2U_[YFN#5;6NC8/%P;+!&OD>N^-TZ<[SDP5NM3=NW9)BE60)'">?J)\K MF^@./,W2=_ O1](%.)9S'$AMZV)7HN<8*HWLZZX[RG)#>6.M&#.'NI$ M&UF7A['.BVE36S*G!,?'8>L"#B7V/^>./!;-7#>4Y/RKK1[<=G@/ MV5!GU25D2&3(#88TZV=(%8I5]V73/KBC/#(D,F33&7)'.;AC,*36&1B&+?>W M5)A!AD2&?&,,:=7/D'IG8"J&;)B-45D;7=ZQN"D=/$"J$WMXW54=1:K.6 4S M[FC1= QFA&9.ML%VQ\WJC=B\HT50VW&&_AA0,P%JMJR9"+4V0ZV_HV3D,:#6 MZPQZBBEK]L']AQ%J(D-M1WW!8T#-8MJLK5WL7S]!HD)&2&R8IJRJFC(],CTR/25.U?K M9WJ5,[W=DTW[8#^$,$R_I9;H\].5;:IELG+@5*3!;C_4N'HZ=NW4=U(^8DNU MG)"F17&2"A5+M8_X$?5V3<9,_&S[%!GZ,&EOY("&+PM M-A3ER@[")]6#7(9U?E[]GOV45Z;(+CIN5H,&IN;081R$O&06S#8KT3!Q&;^' M3_*B4! <(&:3HB,2Q, _;$D#W*HP]0>V_,6#H(V91^SM@+AU!+ M $;#!Y4>%UV0A2W/-&!B*X!:;% 4Q\O6ECT]6=QDAG!G-D4H+)2.CY^P=_E5 MJ"$ I0'N0PK/@G>O59YX_K1?H1O'%%9DO/H8A\+=O,P!+VW BQ? :6JXZ >, M//X]#1>C9+-X=K*_T&'BVQ%#Q=RCU^.T8F$$9V>C;P&#_9GO?,U*52RAO'G$ MV-1>.V+ M<%H+V6G5FM:JZK*B;S;<$ MS01%ID.FJXKI=I2I*XOI(./34&1++]D[C.G7AR %"OPS S.!258M>+\-'_/' M9.B6HU)9%L$T1@#@0>27'H)T=FE%XS$/@6%/5O M-(I.7PM+HLY>J^S/"/,U"+\$\V$\GGN;W%B8$6VV%+Z>91_L D5MONAY]TR/ER$;!4\2B>L'QG3#@ZR?*QH7EDJ04&CW93H0&6RCY+Y)\2_W(=(Z!7-O-^75JO5TSOTEWX(H>J&S3T]O;&>? MB#=-9P^)TA:U:6?&-#7^M7SVK'GQ1K/DI%?R&VGFTS>ZJJXW*;4W=]+T%O4S M6W#&6K3XG9@N_ 929/=)%ZX45NU/NUTVQ$T;76+F+28!BF &5N."-DIR0=>; MA7MDF=? V.69DQTM'$V83I<_WOHQO1Z/"Z< M4]"#,IRR9HH4;Q*"GQL8P_I"G21CF-F.83!=&I<\HI6UCV4C=NM/5FL@4[\[ M.E??+,BUC7-[G8'6W\SZW+"-"D*\N2S;P"V8D9_]Z:>'[$=/$B,(Q4S_FO?< M'V'PX$;L(5NXF[L-J&.U?,)\#I(46H[Q<3UR3V55WTD) 2_ M< 3Q//HXHE$$MZ:%F%9+-LU]^! :T_(J5Y$4/\T B=Z3=$]]&O+24[PV4IC4 MA^.V6MJ!!YY,G32"F%3)2I\6!_S#45H\KBM)-]DPI>3DZ)9CI,O:6]%B.%#2 M:4(]7OXJF(>+)T;P&"C$= *UFJ19&/P+]-.T@!2\._V(/92,)E!-2_+8##Q8 MAU$PG7F4OYQ-+:2+MT'%+2ABQ4MTL3G,4XMU?2X+8JQ :)4BBV5>6_PMQ%F2 MP:%C&D)5JVR55]>%K5YQA(K'FB\'IZ&)4Q9#'M+X%Z5^@CGV&9?^$(@.AFRT M)"TY%M*,B)2O8E;F"ZIWL=7C=;J8+&;3<\<,SG[L4%%45+K:X'N)26R-E,R0.H^A%L7%$["ZFP(:=&Q$UYT+$I+>L$K'H@W MIU&WW00<38A_3SG@1UM$[6@;P_P"QILR%.TP)Q&?,N\A+2TFZK M!*,IR8(9%U,2SU=9D0DK_/,V4A)TN]MO5K4Q'"P.MFL;^1[;A"R2W?HH9^UK MONEG NJ$9W&RS9_)D)$71/,PEQ]\IS_-;F8BR=V$[:32=T@LBZ0+2"E[PXMQ MQ3YY>2V:P!(B)E;MFP$D(#[VR+K*-?LWNHH]OHH:P@WA5A?\?(MQYYR6GF]-'X5R)T+I"^;FN==:/0Q':[D=AE-25^5 MG'9#G+:G45U13BMVK]C56@^FVNF>O<219$3)B!5GQ#UA2F=F1+WU *Q> MD9(3JP5(R8FG]W0[,R<:V+95M4VM+IQX"Z&[NT_/_(P<.;$;C06^\+HU_YY= M1OM6[>3X^Y)0GQ=T>B)JNFSTT?\=6\0%2?0[!5/D\:S9>NB>SK"R0&"%<77$ M.:DHK@HJBD[KH:/:'0F[)L/NB%/!F6%GM1XL,$]D.=0FP^X($_C,L+-;#WW5 MZE4I=34GWKM),8A/0-4TGG,93CQQ7C Z=-EH=Y3PTE;X4]'$-9Y@["9=&JD4 M9+@UYA36RG@B#H\(I47"I?VO+F*X<(1RTP$PU7'2%EE2PCC M,N@Z#6:DJ>3$,L(D)^YPLBM.M:U03&T(^RG8!XS^(49 1U$P='E$-PZ?^%&* M^>V1MK&R<>=+ZRE6:&MQUL2 3]C#7 Y,^Q]_H3#0S^.GS"EE2P6N;I>+ Q<& M'SW&XC-\_VI=KK7FS8MUJQ2?2N'=01BR:!9P$J>;RG^^/$JI*?&S%;66/9HS M@> M7;IZX)::OF*JP1*&]Z#R7V&#(^8O=4:O]1#XC'3^;ADMO??2>W_.HTMOCZ?F M(+8H?#SIMQXZEJWV>M)M7S7I^:-(?D/QA(;I;C':O:H8[6FMA_@U(#$:E2A' MI>?C8/&QQ_5Q%O'1@^.)J5NJ?7IU]AJW@KFBA)@'>P5#[[J"P3B/8+CM*E^% M!$/O&H(!;Q8M5>^695;4T7*X!C*HX>LYKNKW/2>K EUN@YHCG/94!3J/;.JT M'GJ=KMK5RS):KE\6:$L)G]46,CN;RASB6=YU"X2;N[\E2$=KY5P=B1VX0R:_ MUWOIZUU_Q/SX_@X_N5*M('-1J^/R;W^WNBU:V\)M^.@#2\1!F%>I:&>;E,/O M9YY$Q9+/X_1E\_=4^C'>%7KAXS4^+G/>_&!#<+$">H5 M4,=H=_$5LR"B%NCW5+K)?6'+$(_O5].#!3FTY2/. '8^B;<_LFW^E\[:U_6U M:/#,?PO$EYF+^+))N+P&?V9W@Y Y7^^<,:SPWO%>G7G4>KM*5R#JVL:O[]G6 MG1F/S[8S'&# V0$O5W!/G8WP5S GIS)S428A"K%_["=1%\QMBH0*QM0\#3N\ M_?.MLYX,4)\8P/41VKK-^7T%;1=%] '12[FE4;@>Y"S,\96\7;=KI-+)X'GS>^"5Y]A\9(H":E"2)0,(G?D.N%<57X/W6BJ/$;B M.U7Y-1ZUE3?T\0^J\GIL(.KCB^-ZN'D?@O#)R;(,5JP$O'FNLZ,R2-_.P8J= M4QE$@26.UBIZ..F[[\#FNHO@[FE0J)_$"+6[,7-*/.=;&NO,VBC*IIT]+;5/RYL]"K! MJ$ /.5DY64LS9$RRC$GF&_$X#6 N6"GX?1#%-[P1OX1!%"G_\N'@Z-%^_.*X M!Y5!OID-^37 JG4WO",_+XJ]T;1<:$)4A#\ZD5O\0K_;>M U5;?+NM"OS 699$;)C"4SXQKS MK;'FHS_ZO\P;?0E^$SZ5]\DTX=5#RX/EY$(\% M>3S8;SU8?=FH2W*AY,)B9NF2(U?YLZ Y:FD:-2/HGIP/(-.[2DP6V)GW+O-P MRF:^OG;5,Z&EZ70FM$]O62G3O6H,LQ)/.UG\\7OG?[,PR(.>@=>W/4,WWDGL M2>R=P\JW- H:-R2^;AA?9[-?.VB_]CLG%P%/Z%;:24 M&1I$O(T6!HD]\\Y7BI=V%E:5UR#\RL*(-$_W'6!I.F/4;0J>PL+V3@+[&<"O MV?(I!=[R-5*P-18V8%I&FSG/(6,42(7]F*:,P;DC!D&%@?'PP[\3-^1?\\Y7 MV4>'3ABZ+$Q_%8EH-1P&]&@,_]\1MH50I<"P61+.@HC"5V=A\.)2BR@*0HII MX?@[&EBL-UIIH441LS1._J+:Q0%P<*'*Q&=:/\[197N)XJ2;X M"=:8'V)G:;GE&2N'7L2$LXAP&((13Q!<=NT:XQWN"][A1DABWKTMBX.\)FBJ M,I@OVK+!?BDI@E1JCQ9-@E=?&3 O>&TK:67U]#<@!^&OHBZVA&:<(T(9>P9$[)G#5B3E3 I'\+,V:7&%,KJ]934^Y,KVLV4![WPFH LYMG*8[=%Y:V M&I.7J-5GT47_01?25$ M?%^NYF;JG(/)LMV K=XOY=*J,^'2EE96$=CKV2C'MV$LY[QT1%VF&SI-G;P[ M-ZM&RPZ&T[7S)$B=2N%Z>$4DETLN/[^Q?'R\CJZ?)=[\6LQ]0,7!>@;ZY%>L M^@D>>Z&P/XSVV2CE58%YYX=X_,F4A&(VX&3'HE@)G9@IT:LSBU3$+_S45]BW MX<3QG]DBT@*^&P;3:3#"L!_Z,<6%P.]?G7"$03_P0)3Y/0\;\IUG)D*51."3 M-U><* J&+MW[4:>-491*\*E$R MG*Q\B7$LSG (7$E1,D&HTDBYOW6G,]@B"@=;OBDM24F/S9:-G#?#3ZK*)OEP M^XA18RCZ,!)(4W$7Z2*::J0!2&!&FU!$]$S8"+ A*.&M_@)TBV-?W-]9>A$ M !XB+T4%+8:9.7.^T1AVAYOL!4!<__F.Q@_92^"]4%0:3,(%C#A#&K.M/!(: MPRS0KDR(H?H $A)52?!0.]5VAL%%]10U9FV')*4H_B1>!@0EX M.TSMV$NU8[0>3*VM;6@=!BU N.LLP M@QV< .P[8=Y(6GE!YC$NQ#PFG,@Z M[4WG^0KS%)NZ>:&I=UH/6GOS))G.7 71&&'P);S)VQ'V6"/+;6N0*S#+*-=^ M(T6.61Q@*8\6X3>@1(!F9"\3_PX\,CNC N)1=BV MBZQ*9;(PSM2C\E ;8B$-J=TR)1++&",.S IO 48!LX-GH,"W8@KP=<@FS(_X MZN#?K$0973E3_,,B*%F9,@?-A9K8XLMJP/EH(=(/%T'GJ &H^.IRO1,7Y#QH MICE@,D( \%^ 582FBL> E>&I61)S>]B-E B6#:,-'9\"HM?&R^S?O?(K/:XK M;Q+?&>%.P0O^3@+\0^@H5%LD,$3-5YX'X&+1:52EZ;(0[E\\9[Q.OE6U[G.ZVT*P-.$'GP), MN.3_)/_ZEN0;?3/Y9GO=]"878+:LMM:I40'F;J\G)WN>R?8[,B-%9J3PC?@O MLJ^X2^=W,K+XWUV?#@"/W,+C+1HB^NA-:GC=\*Y])@/U\])N_,@-3;$WQBWO M#05X&Y/_OY@L6S)W M*RB9&YP>4XF4FQWY9Q4W>X%QANX,+RTIIC*A:H65A^]DM( )*8JC*D])DG)D.I7#U*WXUCZ M( )?>23@<*X$,X)'&O]Z5E__+DX[]%Q3/4YKRI&SX60JI&3M?578T_C<3!Q0 MCJPSM/)ZETFD5!(IW9*0HE<+*?*(+H_HNXZ,K6!E&ZT%7+6LS?U(BK$$(V].#\*P(,ZN'L :5I,J/4='&Z:9Z5A!@GZ7"RU5WCR/R\)3;I0&%<-#;?L%L/ M/54[/32_>L=4R21U8I*F>-(DZNJ$NB*B^;+IK$:W>H)9NH3.>Z54VXCN\G.F M;COZ4X9SUX),Q0S[BV:X&)0TU>]8%8KGE:"ZL$E2,J3ZU8.4M$ADD(L,$:^H M/5*]PWG#R53,'MFK/,X7P6MBWT:UIWP];>F&]7N@>>UK 6H;._M6'';CUL-HL5^+A#L^9> M[Z4,Z_K8Y/3^#C^YO#>*VF=:BQ[-A1HM_A($HU?7\Q[]T4<_=OQG%^C LPV6 MEZ>;311-F_,[4(B-'F/Q&0Z_UEKQ\EOQ;I5&6MM"FJ3KI)@=WJQKN5Z%+W@! ME36PG8""/ SF=YL4VY>SJ6L]*"O3:#G=TDIW5M:MS$R5D,U"%E$?;6QUS+X- ML=U],*9_#8,H5H(7ZC/,1 =D^,IGL;( "J*'-S06+9B7WXBFO]B"^^_$#;&1 M.&4VH2[@,D/&^.;;W%G,9N&&'SX3E^ M@)W'QR[J0'@R">.)\G?BA#$+5>PU/ U"^'W(_DY@+!C$'<,;::GPY7 "\^0M MFH=N.$RF48P]R_&#$2@RF!1U1*9M$(&@)F"^]WGJE_=OK@4Q [KXZ0 M0__7":<@ )8X 8MJ)/#W& XG;LR&<1+"N$\L?*%^UQ%[IN&PPWQ(OPV48%$$$Y^X MPPG0-DJ\>-EA?!A,!Z[/A=6.90!S!6 6P>O0+D1HP=S22:U]N\(0HR7"8!@' MMQ6L03(-L9&Y&V&S[X"6BJ^+DD'$4L^ MC$9]S*=LV?Q\!_A?@2M]A@+#">=M;'?,O>NQ\NH"*^+34V )?&:Q.^,0MGJ3 MFF"D3O$E3_,H9M,E4<4D]I >[%3&FW *C@5>#N.E@-B%S)75 &P\T.I$ ?%J MA\:&?Z]O(*X1X, 8". ,:0L$2]N29WO'.S. %?X:A5D2(VL1H!Z?WBNF MI:D+H7$FMJ81#VK_2HR^- 8BY4[9M!;./-N=I, MX8P=KXA1)XY#=Y#PIT#JD$194F2IWU!6I]#(&8=D^+H4.XN\Y5(.?[A3SHV6 M2-XE@^^5C=/ X:>UI^&$C1*/?1ZG$BKG:-;=.(0UM8.]J;7UGEV7/NMZNZ\? M.R$Y63G9*TW6.&S8/5[/@E%=YW%S=XL;AR28WGS$@U"0P*"CZ)8[N>]4JW)? MQ+[\XCF1W(UU>^J&-^17=+W'E%9GXGVD2]!O+;^8X-0A'V*!BU> MV$6!!Z=$G'_10.(+W:SF[\>/CH?^6#RH+BN0V52!S+A&(_*MN[J^L4VKZE!X M_0VZL=?WU()-SYR%+^DQ/==4]9Y>TBW]P=2Y([M%ZJ\',UDF,ZJ MJ99U.[]WLR!R<6KW:8S#.^3C.[.=WN@_K$8SR.33@P'QIIBIM5' )H(5P-]2?>#,@N>%,LB"K;!BP/Q45>OT M-M3"QLUG00Z5F40] M6:OCXF>-?)>3(-)[0:,O2Q+]XKC^KT&45_ZF@\$ _(8\!QL+5IZ M:=:B1%>59=.9P+7?*V(9O.!110RH"]W=5"\V^Q+=H0\XV)\6$% ])BPFXL]T M-6Z9<$31U#SKX+@C?V7"3R3R2D+>GMIV1R.O0S&\IG9RI+Q$7C.19YPI1\.R M6@^FJID2>!)X^< [4]J"99<5ZRF1UTCD'>B,+HR[+N#.Z*N:458I=AG_*']Y MAOC'ZDU8_O(L8:WRCE;Z'P\WQP[,;SON;J0'Q]!3XC^E\[K"!I5N;*1MG>.* MUL(KVKZ\!JD9D@J*H7.&BMA:ZV$SF5U*HXY#+)99M<=F"456$N$[?L]LE%?"2722ZK/9>=*8K*YA$%IQO(DLDD MD]6>RM<=J9J='8:*6*9=6$RX0A*)R)VU"8.RF? (PK- M'_#3S$)-6,HH2+"ST/I*Y3L;_,Y\G^3FVZ]4R3+:O0/+9)4ZZ?5> M"_DB5/ECM>MMF*U$MM*:+:)>CMC\D_I\HA.<5DM-7L[:TW+9\7;1S')?([7U M#GM+M&TV$U_IYKS17/RB2)MS^RT1#D\BJ=>DGIYAKA,O^=A$NY\,SN!H#5KW?.&"9[[WBOSCQJO5UM M9^?Z=VM[N+[\K8LC2X?VZ4[#WF4W-[? MO*J=S'D_^(UFWI7HQ$DC'M;'%EN=?P3BCETPDMF=!_(CIT5Y)5:U[JV.!YR*AS];+-.NBI$2-;G_=YIG]/G?!K)/I9.R&#@P'(D"DU(0:- M)(9/MTI)(C9./ 5WC/=JCUD49WZP;2^W=W 7G9EA4LJ4.5$2\B[@(VK4'2UT MKGJ-+N\N_"_B(WGN5P:CP,<^M=9==(&G]>'/^.JPH6V=6O5F*-7\9KV'BPB2 M=C_564#0"GX-_&\&' 'Z.6#QOSP GR_[!FTP;)0/L=T_]Y*<(KW^+JKR MK5D8 "SB.?T#N,R=\5;G*$-"]N*R5VPSO,KUKQ/F Q.&Q3DQO^5\/ FBQ62G M(!60DP;X_F$ KT$]3$(*I!:PQ0A8#[LCP[R&3C11QE[P&N':%B(/)\@U7(85 MOKE1S.6ED$_$=IE?>$$4B=['![R"Q-BR*S*LPELG4EE<=F3'Y \$^E]Q0LMF M[X\T,S)MOK#U3LIV;UFV.V:O/NU[-;/3R,F>([&G5AM0@ M?[CL'%W"QE6O(>POJ,!(<;P72HS^\4B*3.[;UGU[7.KN=,,6^ON ;3M',N2M MDD+$D',0BT!R^L>70GF1M[I]G]@JGY?>$+HRRN3 2/=RPML/S1DI:V=/>4&5 M)GD.R5B+A5=LDA?M#G4--M_GCKL_1U9+P\>X#//6=W^*C5%2)0N*9.KR2]IJ MZ-W\,]O[)(*7LY#[Q\!HBR;N+#J'\BVR@4V+4\Q;8G-"$75S3YV^'=YH.@H7 M#E+LMQYZMMKMG]PNJ7IYS9)-ZL0FQ0I(G, G&=='UNM1E'.Z6NO!,E28295+ M353B."(9L<&,>&C)A!T<>505A2XV>[>JS'N23QK-)Y?25Y]87%@W&:T'LZ/: MIV>>5*_*2%V.@^O!H<>=! \]H\MFCKJYI[1AV4>GK@E,UBNQ'$"%TB0;CJN" M)L[QP"KKK-$!J%EJ5SNE?<_9458M[VDSD5L,N'LR6TLWR;'U]J9)+J5ADS!U MO# \QI"UL9F[W2VKKM55[-@=-K1NM(T##-GK%>O^$L2.=^VJW+?,1698UW&L]]+IJSRRAF>65T%D)M_PM(_ZD MHL!GMJ+[6)M)2E^)Q5*%[Q'6=T]K/9A=U32-NJ"Q\5%_^_/T9=R?C/N[M;B_ M*YZ/%T4CKGU(;KCBT\T]+6.6DC%7_?W\323V'UO.KZ>W'@Q;[5DGM[JM7N!! MPW$F.K=4C4RU.P36D/0%;_HV>@MM"6;:(VR..O?UC-;#II^[SO%,#<=6*>K+ MF07/&3AY!^DN.,L%XTS;3&>$)3&P_$IAAV_/Y&JM4]89KT+'N!I=L>PHIU2B M:;_ON:WG\T:''A9;?'-DTAY?4NY]TNEF= ?#=@U5.W^OHBJ%$$C.:SKGE7&' M)HR!L]R:]:P2;LVNR'*5\-%)-FXZ&Y^+B[QX'VUTS\Y[:QZ MUZ>23>K$)@4C#8[GD[+\P?W60P:C2^FS(Q)3^CI/3.F?[*VM:-!2#8Z+LK[1I5FL=]FC M51^+B.4;B+*B1[5Q5= $.AY8)9U%^B;5-S*,4^*?SXZR:GE7)7(!N?U*&N\8 MXJAJG5.*DTJ1V5!5?(RU:X%TS"TT+8L@72Y"_]KYG;=<]6!/ZF?IEB^&WQD] MM=<_.49=EN&H#2 +F1['([(LD[G;>NAU5-O<+/$LBR!)Q)_!V.YLE#"OA+'= M0^.HFY.^6!9K)5TLZ0O>!S<: 1PN5I)MH;% MV+J;)1RDRI,BXA,A8.U 7KBM54'Q8K8<.6 B;86:-D1Z2TR6GU^\( M4$)]*UNS6P]V5S6[9;5GO3Z+D]OC;>S 2^'/D?ORD"[M4S(%(@X?_@D?I@O) MC(W>'W<\%T!Y^.<@?/NP6#Z-<\AS%P28@0#+6H8*^S9C?L04^.N^.V[EU8F4 M[X[O=V:MPS,[D<_C=; >!DQ["%K>B/F 51>9(P<2+OS/1XE"@%$B!G/UGU7EF?DL M=#R:@3.: JZB.'3PE>DKHK;RSQ4FV\3.ZG8_#2=LE'@L&.\*"TOB)&39)?W, M7_<%%_ %AO_1"X9?E[O>YT1W_02.3+'X#%_.@$(S9-LP :O_,=[<7I7(P8"5 MIWC@4L;T;L7)VT\DWB'\=;\A>5;$"7PG9LN'7ZP"9KPB;*9.^.SZ)#/7G+!+ MV4,";R&>N9 %&>0YLXC=IW]YEYY^7)\D"3WT3@PO9#:^8=VMBR_D7[][=4?Q M!)5;6^,*3GB8Q9O%UVWZ:DUI\.^,;MNPC:U?:VW]R.\L<_M+=SVY:[*ZT>[T M;3E9.=E:3=;2.@<-N^>*J!)E0;NI&40#WKLQO&QXR!G[HP\B/4A@T%&T<53= ML=H#@KEV;,P0-"P++[,UO8/B'?]@4\<%FR)$.P!47>>&]P*6;]WV\NW;7G[W MMI??6UG^L5&F1<[PU0T9^'EAZ^<9^=H:U2GP#HY)*!F^5.2.R5WGI4[/\&X7UZ9]\)^0X=?X2A# M7<>;.*-S27UZ P/QK$C\9F7(WD1\F/DA]/X\=)R%AA MCC21(\U^66'XDB,E1U9IX5?ER ]!4OPLV<$R'/V]J\3^B' MN\)&<#_<\6!@]&VMRTRMWS%&?:=G#1S3L$VCZXR<7O]_._U63JR)6-<=\N&] MWDN9$P_Z?GQ_AY]TH/GZE?_QY,P#TY:@ ;X].9MFM"H7MZ3C[?]CA-=1 M.6$8KTR9."/%@<5,IVZ,_MF0O03>"^R9,@S9R(V5L3-T/3>>*Z]N/%'^9)X7 M*1^<\#E0?G3\KZKRJ?W85IQH/5C%>88=5BF,A!AK$T;*FW^UG]KK@__ M1Y\ZW]QI,E5 ](3!*TR")I[,E#@H%H!D[@Y ^A6VZ//X/FJ*''Y!E HG#:=-O*YR2. M0%<@?+/[D=#M(L;/[* 4"UG!>+-.@1TKO"-8)\TJ-96KMG' ^ M1]%"-IIFKL>-%0]TK$& ) F:/X'OO2A0T#,>P_^5^#50WCN^,W)A,@LAHV[% MK@MS(4F $?Y@MN,'KR0.1Y( 0Q(@(<*8L6ZHC0 *\/8B?U_/?VDO%GLT7(? M?F@K7V 3-\?XP11TJC)(8F4(OQ^@A/#9*\ATY@PGRAS, M2C3B (**$RM@8"HCL M")C8P=KU4!G$!!&\/&:R6"3T!0GWH.5'DCEV\Q_,\ M&&,IHIPIF)!Q1CYA[-YRRL P7@"*.&;A%(@QB(G,,'&]Y6\47MHRL_'[59!-QF=KR$6< MT$SB[8]LA"%<*3A=[ZQM;.:_DW!I$#^SNP%(TZ]WSA@F>^]XK\X\:KU=#8)U M_;NU/5Q?_M9%CL=G6R0WW@&)04A8N2?&QE_!G)S*S$69A,AV_]A_!@7#B,*K M4V'D:H>.SXGX4Y%C\M)C02R&)A/DG_LXI\N*/PA"'[X M.ZB5> (Z*V1_)ZCXD@@/!"#IYZ#EO."5S&E^2YM$[QC@9'*VJ\DVYI<=1Q^R-- 3:$%TW.& !HNS)4)61F@@RA> ME2D,]BO XZ7]GZCS'SX'7B#KDQ.DO"X<0!),Q"%[;?C91GD*(QV17PX'== M:ZGO8$"TP)@'2@^1ZOHP37P6!]J)5/@Q:'Z+WNV(+!7$WC@UD]@PH>/UF$). M4M!%*AG7#& >[(PH%=_A #BZW'P(P](2(9;9LG!<)B$@!Z H3(%RX^O#?DS M^ZN6V,:H1Y)P!XV(.-B&G(M24H4S0](S9S M0CP1Y\\0Y]9@;/^8=\[?A/@ 3?FQ%P!D8'L6L@IVE[GD:^&G)P#<'^1<")4O M2)*GSQ_^4)69!^(3!28FHJ#DX9()'_D5^"$$ P$? S"^ :.=4F]XBA+^@EN( MRB-@GU'U)CBE*!_@!UN5>"=7A0Z_C-,?1P&4T5KZX;U/8)= [!_+X98 MS/&0(?3%$#H.P='ECVU%,D:X6RUG M".;+B!+59V'P DP6^$"-?PGL@9!;?+R0:JB$$6VDD;,LCB?.5-+!,6Z.9[YI M@N(F4KXS,(DIE9#PBD=_#G"C]TQ!C7-12:E>0UP1$A8$0>P.W1F"2L!/O)OP M*$2JF 0?BRHG=M]%=,[-'&^;26V>D[K-9N".77*9(.H+GA?W9'#^"F=YY"]T MQA<^+QKH7MOE$L$<2O\Y0.'FL9B4 WPDX$QG.$ Z=41['V(ID^(JCQ!Z>./ M2!OZ\$7"5XIKPW=$)"4 ^TE()A1EZL64;4E@%FX5P)I03>0RP30&>A!>GPPS M\@VX@?N$#O')@G&WS0F/SW'OB>*\.*Y'!P(T ):#97P9A5.)]]Q-YCF_>&@K MO.YD]Y=AMAZ,TGV_UE67U($EZ>W-0*3%BI9PR!?#L. <+]2:F^36)!;Y!!<9 MT04!T3NCM+*P$=$>:;5-$'&Y0E<]ZW(E@G6;-OP@#)+G"?RC8S;]U#9VW%!Y M<;R$9\G#H2&//]3,A<'FX8X$^);-=F9@K7P3>29#)PSI],!?Z.2"#H=[#1)O MA+9+UKD=D2WL*4;JIHY7YS]Q06W @7 .N ,CPQUP$_E3 +9*!\"*F1W_TGC;Y&9U +-H5\F/T-J-7C%Z%0WXRZ^1B(EUI MK/P*PE6(B+U!084#??BFY&S5]3WN^3CZ$?2@N&:?\KN$"JL%@S<((M@@? M[W*'8!9P=_L@B>#7$=C%,U &P12]W#&_[$;3X1&TKQN#S$GP_/;$PA=W* R$ MU:] WDW1#GB:1S&;1DK$GFEOZ)",'GQQJT G2G)WC)B"C .F.@C&&0M)W/K# M%9N.;_)2F<&SY**%S0RF>& E#ZX_5P")=YDQMCGYRXQN0C/WX\*J@!,0EO6! MX^5ABJ._E!-]O-C-41R#I>7+;9AX/F-TO.4[1+HZOXE?<]5S&.JD((\@$ M@"NP_8_.\*L7//_!W0)?@B=81>$:4B9>N?=[[/8E6QL+0$1JG$X,7_W@U<>#BCL%^>4@IWD>!:/AU>(,0\DY6\*6"-?I M:/%SE$BP0Z,$P/*:W;:0O0;A5]BM*%:7%P(3P%$08O#VXBE/*-NY&)/"/I?7 MIQ%R7EMYC]_1:/R&=(1^,RKSA8Y[\G8-AV$"X[Y.@ %F8-*V%9!2\+:%<,4C M&7$*^O2!T=$YG!Z8Q-/$CBAAG\'J]-.[,N%!X.>UP//(U7.O#"?\[@ > 3(E M<*Z(^7T573/AH3/SBW2Y4_>;N+:"MV A6#@<#F'7LK^E-2LO@0>R=IW/CBK2 M]GG\.W]]BNS4PIEO*<1F;MIM32UG9O?;MGU<$:>KE(;J]GHUFFS_L$)Q=:AC MM5ZC95N?K;RTF&.*U/3K6:3F$Q[X>7Z\\C,>^(M4K*D$H:M8L.S8BCT5Q,?Z M.>600CV'K/Y&=U&XRV1=J,7>_"B"O<'H&S"P)/"&#DU);LW)NE R?;<"Q>!_ M_A:3.WS-,'_DYY"B:;HFAC]TU5Y?EK*0G'?KG->[*.=A!S93[=>GB$Q);26K MJ_\?89[4#]1;N'7.T49R,<:NOJXY>]?$OJZG<)SXI\NBCU&4L .OHC,3G:*EWJ5\>>X"M MC8YZS^\Z\)[B' ?2@^1&?7N.%^MH?XK@^%U2,PZMY>5K"Q9><'*_8NR P-#=&W@MPJK%F,H0Z(T%.#") M.TKGLCLP.QNP^B<3J^=9M6[T=1ELO(R(3)/GTNDJ/GL.8I?60E,/',I)V;&C MBU1@7OE@(U96EJ5UY9,,T8H#)Q2)5RZ#Q!Y$;P@TMZJQ10ECX5 DBC*Y.C:3=#%8?YS0F_8A/W+\ZWM+[4FT^_?7G_@P)& MG1_Q3:H!@-/D+JQMEBU$BVM1Z+3'3<\H%6S,H\+F:(P'(1CL,\9U-8/$ROSR[RK;RKYDH788UYUS?2?.?Z*','%6Q1;-T,U^!Y7B)Y&'P M[ .523? #'RJLH-__\;3?!;I\?3B,6_MO%R6V)21&^+J^:EB68.,9T'!)[C? M] I>EFA1+ _SF;);N=1V(P;OPH%+RJ,A07@XPI&*3H_43/NYI MBBB6RT3@A=Q\Y*( M0!WENTZ[N[ !!LQG8S>FYY'CPA6.?P- "J;LA[0NK:KX+&Z$?9!/!!2M/#V1 M%_H5^?FX?U$RG6+% )3VBVQ9L7M1MDH<\MJ&/E[1E6_<;#;0_=9MJ5XR9;_? M[EGF,;F48%;V3?LLZ8F'Y1$V=K)ZIVW9R>1J/_L':A M-XM&^G2,UH.M:M;),7N%J%?77&')?TWD/TO;'5N7 MFH'OT0I\SSWBC_[H4^ +]WAAIL-48=76-G-")--)IKL-IMNI]';K.'$PA4-) M8<;KM!XZ:J>SV4ZRBHQWH:2:JV+FB.>./*:E4:),8P#SW\R??=,6],@P7A% M>[O7>NBKAK69&G"2TZ/2:?F2KR5?5Z'"1OFG@CZ:.K:Y6?=',K-D9LG,9U/2 MYSJ[6!I>P-MZ$Q@ZI]+&M@:9_=P(]]66F?WR.V;N;=U">0%O]!]$%\C$R28D M+<*"]!Z/\Q=Y-9C(L<1"$_(EMN2TN['(3JW27+?G=O N?G-,R'*H5L@<,S:P M9W*01(K'GGGW,;2[15[>T!WQU#KX'29Z^,C+7IH\"72FDA^4AM56/O(").XP M\9Q053SW*^.)-(L\J)6$M$Q9E"BM:R*Z3<\I@S [7V!M>!^CPBB8?,[3=-*I M8X)'$HN&E&FWM-"-J+]%0KE;J[EP/#\M4H'CIRRF?>;CXA/9YF/3P&%]V[^@%(ZJV0UA(_(AY]#+\!I'JN9. Y\=F!UNO6*/REGGQ MQ!5+Y"F=>3E]\#J&S55!";%%0[UT^?]?E.FXNLQ&Q,0WE\^=)ZSQ8CYIJC*A MCS(FQU[P&JUN*,[(BX(LQ+R%?%KG!D E9LPAS3!=;CKS JJ["4! CAY25F4 MZAUX%U"%V6]B'-BR9U#N6%)HB5Q8-%:5:"N/'F9V/4] 6."$8 > <]SQ&&4" M30GHER#V@&C8:-;%B4ZH?2EFVO%FBG,^L8PD4K'"!&Q&/L5Y"BJGC!^DD^&4 M$VZCX*=UM*$/$=RMFWZQXS(:DFKIJU(NT6R-Z7!/Z-FAL\ M)'>\<>NJ:$1]0+VI4TW-Y2H3=@G6#T@_$14,,$5\M,Q\%GG.6)HAK1L@!ITZ MT$IE?':$A2M3LL*H"U"QRLY8!&"-5_ MP&\8=GW%;:&I.VX(J\&#(UAO7L+6Q.1__*-GZ-UWD5B1$Z]4I^ J-_$]T)LK M7RP-"%>TYQW!CN&GGYQHY/RM_.(% RJ@Y\&VGR5K13<.@IMRGIOPA\26//X$(QR/SJK MNA7/W61A05L6%JS&7"Y:6%#H[V(]MA5S6JOEQOF&&/:(,_\R5TR^H M9**/_N]4N>A/VA0P*/A!C+[\">3*!Q!%_XTB:$O#;HQ3VMZPNPI62&[I#2HO M!#)/5 /R$SJ08_6F/>9'JIHS9H6/;YL&U'B8BB+GE35TO !^OB@_]"JV&PY: MM-_"^"%)3M*?Q/[VXAVE^O9DRW39,KVTENG5#G8_+/^_>=MF$5[ N] MD*!R\PIO7JI\%:%]E9_3\\'O>#ZH:(OMJU5'^&-9WTX<8Y='ZG#].SICRSH* M1[?3.JV1<8TNZ.G &VU&&*^$W'S\]*$T._SGOQ,WGG^D>S/RD7[&L_B7B>/G M6NB'W?1K2\LD0?.W4W]L*PVET;V[@&>*ZZO+SWA-W'D]C0K'9 M1B]1/3CZTH>%J]DD0%,2S[RF+CKQR?!0WK1^?_I7U/JAAA:(<8H%^.,@9L,@:LLIKFE:COUZ[P M*'RBO!J6U?IIKHFC6R>7I2W?E+':O=/L!7V?R^(\M^_K3MMM7J$9J%:\&<\T M_A.Q8L)!Q",L1'R=-UD%';^/6XFMB9WPF<69N\+9NLT?*?SB M4$1K\', #_%PXLP57QI]1)]@7"E>2::=64C*XCM%BQS YHMHSI&]IZ3WJU1-:(% MQDI?G*WAL10"7JQ#WNY^8/EF3M&>8%:W]6"W-WT3BW8@*<27-^9IWZ3M]^9^ MPSH!EK32'JYT1_.SPU=JTTJ-)C>?R6_TB/8P*X[D/9WM?A9QF:*5;SZY M/Z4AF?RNDE@S^SW&,'\*XO]A\-*TD]1R)/[0NCU?&$+8\UK?Q2TH34EH)'ZF MH=6*U!CR>,!%CLI&K"F/BUWY##=7J#MUV4%JT=('1EGMH"7LHXV(E67',VV4>&< M#;XJ[,;)EB$IV_(T"B=C\*7G;$A5DS'^Q"0(2NJB;<'&C]S87Z20_JO]U%;& M;$09:'^!$(LPB8Q2YM)L4/H)-?8C_0( 6?LIZ)7WC@_99+N5B>'$V3E6!8T;A/'N/_5U"!?*&,47;ATX",_K? U M\\ZXL)XAJ(Z5TB[B>#[%8@N1DD1+AQ^>[Y-X\>,!;B0)G1'?RF5;;R0W'^=- M^MW/OS\=W/&U3HD?':NM]6N32Z&W;;TO)RLG:QM6F?U=R[C,[E>M(^1A&1)? M\%96^8T[T7Y&)UH9[3%KNAF?T*&X=2_JT"RXFZZ3!KS'JT5W>, U[IN/V=[F MY79(/39!IH+X6#_C')*,=!8+FK=VEL-2>BSTM:$BR*5M&UL0.(KO;TDV-O:Y9:)_%Y,#[M:^*SQ_'9+;D)@\1G<_"Y MI?KX9?#9Y_CL2?DI\;D%G]TKXK.+(6"&JG5JDSI_A43;&IX!_EPW\=-:Q..- M,,DT-A]KC$=1,J4(#%&5):T3EM;YE'FRE3#Y/_K#D$(;*384CFY<&#S&<>@. M$KJW^A)L!CTN0R*C/%&@8QF-3H5R["2T+F^MGP=:1NNAHS6P+[&$5@%#^SS0 M,L& T:34:CBT]MC(YX$6UJ YO:94C7O?UM/V_6E[_-"!'G"TA6+GYYLK/2<1>F;_>&D(M0FA1O=D\ULBM*D(/&D)[A-".)%$8[EZGCI5P:KBC/ 6L:?.&=Y/BM7&>0^90(\H) M]KX41P_1Q4ATO\ID342'EZ4L(F&6T%MK8GP;DF3/>>$1J)<2[XD-DY!ZTOXL MX/$!T/%^F;>RF0[T2(DN>2*DWWHPNP7%Q\&D*E>123259=N?"TT]#?,"B\84 M7 E.I;@^;QQG>RSTL^$,JY84-7HDS&H+LSUF]ME@9E12G&TIW+=:(Z+,4GX' M)K!W:I; KA^7P/[$GO%JY@\V"X!(_O.N>CT]PP>M\2[J6^56R&A 5GR?R.^=3M5I;8.JM0U\,=B'$&! M:+-@FI],7T'(1,S/*4K= RXGQGV0B!??@IKM:\ZG)FP,,%EYK3!W[0MC^%PXL8,&WP[G@) F"+Q MG^91S*;GZP,0+HXL;CO'+N^&TWP'UX" M\T^FRBL@+GA5L?@3=B%_=3Q/Q7# D(U#>#4]!8.'O"PP7^VB'B@@EE%5*2SM MD+@>4BUJ*Y(1;H<1?O&87?%82+2J[7 CG-: %R MK-7U')(\APE.?#S6I!T" .VS,* *@_!"A\<\J4+N,P_Q'L6 ;FX\I@]AM2^N M.9:*(Z,W5%$BC)Y<<(#@(OPJHSA2MFE+[F@P=_R*Q?COGM!45K"&+B+PS:]/ MG\_3$*$H@\!(R=A!UH7!MPA_RH(8AG,/CJ? ,:-DR-NGI]I@S(T[59F"FDBF MHHSE@MWX(/Q&9T,5G*6^I%AJQVAWL3;59L^*14FJ[U>/?**@E;9\Q!E$ =Z7 M;GUDHZS E;A/[ZYM;.:_DW I4 "+@Y Y7^^<,4SVWO%>G7G4>KM:*LSU[];V M<'WY6Q8.1?SJ5F8LR"?'0_8_]3JLN2"Q6;'SD$?)[DY67I.EIZ3I>)A14N$I_!_!TOTT+F'.'N997S.^4%X\ MBLN DV^5V?.@"^8R0^.*[*+L"'_MM15KI[W7K0S;YJ]:P*)==+UI&LLX=U]D3[7X)U MNL ZME5&PKED'K T M7=6[1H58IZ1J2'4\ JZ$5EZK)$&3TJ%R&:]_=<;K:ZV'OJ;V[9,+W.W ?@VJ M7S0=:K9V?:CIK8>>#M:1+J'6:*CM226^!-2,UH/1,U3#/MFNVH]NEBOGH.%PFU#-0ZUX>: MA14D#%4S3S9?)=8JC;7K7U_VL:)JUU#UCBP[WVRL7?^^K]]M/9@Z8,VJDER[ M*<]K3E*C]+R>F?&N?UO8QY*OMJH5KDHE713U@MKU;]?Z?8*:;9?5PU1"K9I0 MN_I]4E?36@]HN>H2:HV&6O?J]TE=30>HV6J_)_VN5T+,1TR_28M?,,^=NKZS MVL53GAL/W= MVE7P5J8KUK!X :S*6K2?SIF>7$J.:A/CZPNOO]JRIXCHN?IE8U>S4;_UU:Y> M5@AP7;KC27Z4_%BPW=(E^!$O9.VNVNL4;>8E^5'R8]/X\>JQY%VMUWK05$!U4YO%X']8!8QS6S.V4-\A9UGZ6-Q5V6'[-KQ.MB1LP&!IJ M$^C=/7ZLSZE2^$@ZX5?0"$6UOHX=B3'SQ*97"&WGHP#%7K M-3"26')&8SG#V).[709G&*T'JPLZHVB'<*,FPJ>+:O>UFW'^12SQ?;X+LO@JPZ<4BQ5/[V>E@P9JS24]F1UE0$E"^-< M.W:5\G(EDLHW@_>442D#27;KH=-7=?WD Z*$4I6AI%_ "X?EP?NJUCLY.*6B M(:HULQM/*G8E\QT/U_=[4FO+8*U>Z\%2C4JE,THDE8ZDWI[,V3*0U(?#O:J9 MLOAEHY%DG-]-9&BMAYYJZ V\+X(R6()RS\3^EM/'-! MBMZA!5#*8#$;O46]G!BIP^M-R.-]M>%T:'V3,N#413.R;VX>2"2:4N[\*GLIT05:^O-+GM=S0<_@? M#TP+Y%3(RPR\V:3V\C>HVD*JQ#I-)0@F4VL]F%W5/KWL2^ETO+++17*TY.B+ M5WHJ@Z-UX.B.VBTM@E=RM.1HR=''UHHJ@Z.IU+FN]FVII"5+2Y:^=K&I,EC: MQ+Z>FJJ='IA4&9;>XU,8N=',<^:X5+9;"LA?'OM+(L';V &ZPY\C]^4A1=>G M9 I\,WSX)WR8CI A[U])%+OC^>5YTT#>_,^P%4QY<<(YNKE *@W2ICBTHRY(M^>0/E"",?P3%N*.$L=3 M7N'OP:L*DPY"-@[A;?3 ,*$]?X4]52)>FTE5W%AQ(\6=SDA2@1C ]X8,B!(K MLS 8)<,8_DF%^"+EF?DH)8$:@[DRQ#QC?+/XF:H,V#R ]^"L4T(M'H67A_"! M-Q>#L]$:^1#3*+%=/Z$UG490%,GN># P^K;69:;6[QBCOM.S!HYIV*;1=49. MK_^_=K>5@P(A-^_0$+CO++R@L*FP@/L[_.3LL.CFPN(CT$PQ%AMW^2F\6]D; MW6IK!F[&;X[O/#,D^'_\HV?HW7>1\I,;#9,H0G B]AY]QYM'+N'E \#8'[H MM?< %S=.?_,'BQ(OII\(;8Q0W\JL&V0J!1)=+0N)ZY#Y0Q"^.N'HS@N"K\CZ M40P\A[L;55IRZ0;,_TP_T-^!%(TGH*%PBE/F^/@C&!/_^7OHOJ#* M>F(@U>#-L'N_PA_/7!:#O8E+?03!";_7^WVKK7R9L(AEW@%"<.PQ_$42IJ)1 M>7'9:T2OA:^C&7X-LGB7"QQP#P7 M'E/3!8F/4=&"M%[[U ').W1G,,'U;U#/^*.-40!DTYQ?PWS8T(DVQ@I+:4E- %KT8HC%Y#JA&@CP,Y$7 7"IO"I@3J"?7)1.@/N MKT/@1]"IZ=(YE<2"::[T%H#M*!@FI!9Q\GOGN=@5' Z?&#@1K!5F,-WDE!1$ MG+I"=@:A0B 81VT%R^@J0#-N6,"?JO(*"W?F8&-% 4X7K <&CP"N\(6OL'#8 M767[_'!9W*Q#((0 R B'#)G'8**I_3*# XL[!&,D&4X4)U*(@NF/@#'QWS": MF#$\%"TWW2%^CVDAKO_"T*"!1^!?_+U@$TWAS#<4#X-1@F]\'TQ!\,V!*/X< M?XOV#A *66WW8HA&PO;A%A;\,1&&+%QL $F_DCL>,2#'& M'0>K"DVRD$NE9IJLNH7)Q$.PY5&H>W-"UJL;39"<0R7DVLI'GWL&2.<,@B3.>TEF% >&%<(^?=O0P67!%B0<:+@P M(1'^<*.OR@<^8"H"A)),WZ_W!3:; Y0X%)TO$#&X2@D>>*8:F* MH1EFBF[8O8C]G1!872#ILU _^/R_VD_MK #$1W[^-IPX_C.18.J2(%[5YOMT M?S/Q3T;;GXP+TCVX7\7D% =(R2\T/4IBDIX #SB7P1:";B991"A*S2;!!0L% M$"[MGF!A][1I=>G; +XA$&^\K@G>B5,@'KAG 9 574R(HZ6>P9^"I!ZY0SJ3 M(Y#O^&V@IWO4Z M<5%=H)"@)TCH.]E#,(Z[F "JL8),'4^"B*5F(5L(^^TRJ:T B8%;4^$ M$H!>$#8!RI_9"&T&KBT\$EUP^G5Q3CO'!6DY880*T(Z.F#FNS@?2N4M)HZZ9 M@JD6!,"Q1O#5QF&(#A2? O_NE\?'WY7?P&" Y=?@# 0XF3@O+/5VC=9MBZE8 M"4$XSYA?]8&-V)@0"NH0-X)P*&Q[_L.83A>+45-3#MAAG'A9")&=O+2CN!:@ M.:Z/L3#MUDRL[ !ME.NPY M2PGR.IGCM);;F?,2L9_181M*ELF('TAQ]4+L@%P(0;;"*"A8N7A#39X1L?#Y MCP'(")S73[06%-H)]XENSBL]5:Y_'BG\4(7Z X^40K:)*<&,^3P16? YK#N! M%ZKTBBT;!Y;T"#D*1O(9'#&FD,X\]])N/3Z/;.[0S(G\%=0W:&Z0QW8\(YPXYZ( 5 M\S6XNM >"V,4:ZP M;W >HY>B6&-^) Q#4H-+'P[S)S@'^"R$O0$9!9ITGOICN+HBD21T>SPOT7P\ MT,MN7M_+_OD%"YZQUTK;DXNC)1H[BL><$=VB_S M,$=OSBDAHKSY]>GS#^WM6K%&9YE\0J*+/@;ARI2O# P.3SB[ MA%.'E.\L=.FF *]9G[F/:\0O0=#V 2*_WA]V(V;:JV%-8N6K=YEZ[P)WF5O4 M?76N,;4VW1[^R*C)&#DB0"P'4W>8X3BD4(R@19,P_,HRSMQK;!\> O&R1'%B M8, 9.4W@)"9.,2XYPX54X">M$6,S[KZ(8F! <=NQN2INU2-DZ"?P?>JE8<([ M./30M?@"/\ 78P!$,%+ZI A:8F>9(?K78?KV]@5NC>B%2&ZPA.X$AB&78?CLBFB;D &Q_>OS/+_RI'NRB3N.5QA4F;K?X!OT,Z9+6)Y) M^6*6++6!0KY"9>&R9GA/,G/C]7MFF 2Z4+C 0;[PR.,M9(X(V!*G8!AWR&7" M0R-KM<@_"I0 MQ1F-_$8XW^514,6(8H:=:3UXPRC+;,&(P=FB"&R D'QIZ%XF9R%CHRC] M=;"S?KK\SA!Y7W/*XC@ 5^7*I<53A$A8,85HJ7D4KK<18\@[&<\:+Q M\T8+?:6MQ]^>6BOB:+D![M+, -L@@ V 3QTT$;+^/'C_,YQCN,5#2W3C]+(+ M]'L 4WB&&88^]\D'L.UTI.="CSZDPQ?IC C> >8">4.R\K*YIYGTFH/NZO$H MZHZ!*])]I5M KHN$\27,R=QC#FPC]S]1K.O2I<)M4X'([$&__0Z##_VX[C#Q'+RWAJ=R3K-MKGV'(>,PI_.R ML#3S]*4A0X_$*]L;]]T+\ MX6E_L=ZEY"1X< <*GP>>;=#%#_IA(C FI%;6P8./\7,I4&2&3CY^2A'B++V7 M0>T18#;]'\RD5QUF=2?;.?S4&U@]B#K6#G^3L M%#+7OZ"&D<_)Y^1S\KF:/7>3M^G][;?I!>[I[,4]G;R";\05_'7N6G.3$]!T8!9+ZG>-!8B<"8CW9/H6L<\FD?(SNC,.**!9YKY=_:<'$6YG+:!+6OV'4?5[-!,^@9GPA&;"F@58@#&. MV(ESK9<&O,=;:'=X0$6@-^0[![,,S*M(Q9AN-HLS=E3T0\ZNG RVK65XUFOP M5%LH?,(K@0$8JZE#\Y"BNGN7?HO[9]/^&>7*U*-VJ682[#OE/1V$*L.E-=N_ M[ZNV?U7F4BGERI=RQS8T*HTYKU>2_E/JGSE'3Z.C]V]]"YM6\[+P^JM=TM(T M^VI7[QS7R+8R%5XEF"68$KO MJ572Y\+TZ9KMHNY>2:-+T\AN6]>CT;%W:GGOUOM5MFU_H1Q%7@NELB?&.@*X MKZFF5A3"1:]F:^^]K"-E>[9J:SU)V>91UE3M?MEW9XTC;$UIVVF;U7/>2>*6 MY+JPV[:D;F.I:Q8^"UR*NHWW?3\QJ@REBDZ4GBAU@N61J980%F)*&XE*UWCA M[;4,U;:*VI+2&7%I*NE'!%5)*EWZ7*;KDD35)I%>V$R3)+HTB:QK.EXEC0ZB M4:=]15%W.\[QSXO*K*Z/E>JE@[Q,9UM7M4N/5&_D@;RYQ=;VPQ2BI6QOJ]@O',TG_>$E;_Q&+!; H3IW@ M*A8-E([PX@)*[5@R**_B1#)4JU\T!482Z>+1QZIN%LBME 2Z-($Z9KLOZ5-9 M^F@R.KSZ)+KB;6Q)_N_#;-H+%!#?XOO&9B?Y5NV^"F=G/;O5$*V]PD;3CAN3 M&ARO:T@BRS(DB:I-(M,\,N9>DNA2)++UMF2CBM-(.];-+TET.1)=D8M*\MC6 M(+KC9R?$+HZ1,F#C@)J 8HR'$CO?KA_*W*A;8]-23:VHU"FT$34Z;3>+LKIJ MZT=6#)&4K31E5;MWI!OL=@A;4]KJ^K'NL\H$ TBVW5:D[ECG]>UP;1WIVCLV M<>*\9+VH*_PZX1WIF2!UA5\[!KR.X%5-HZB1*)T.%R925^T5#L"11+HPD3K= M(Q/A)8DNY@,_MDBP)-&E2&0<6TY"DNAR)#HR7%VZP(LVT&+"#7X.E_<9SV@U M;M-2;/$59U1;[7>;['*0$&X\A$VU:Q]9\T!"6$*X JLV5>/8_@JU0/!-W]84 MKWYW@=N::^S$<2V-)+2V^_S:90L-B2R)+.X%DS*KC%99=;LO^WD\9D,J"HI7 M9J$37_V^+ ,H$R S"I*!QTYDK:D[&GGL:L>5$FH=[]F*PYGKJEM1I1Z'#0%7 MIWUZ9P,)KOW@.F",[3M:RO#GG:*;$V]B!'Z9IF?"?]$T9[OHKB6)W M/!><]/#/0?CV836=<]]S])+%&OA48?Z>,XO8??J7=R,WFGG._-[UB9_HH7=3 M)WQV_3MNAMU;LTUS!5_(OW[WZH[BR3WU6B4N3*TE\6;Q=9N^6A--_#N08-UN M=^O76EL_\CNSUSGJR5V3U;6VU;?.,%G+W/Y2.=F;@4&M)GLF&-B:?="P>\YF M!43\WI_V-WZ:8QP.&9:6NLQAMK=F$77S;XOA$^4W^-DD4G[V1VQT@(54YK9= M_:<'T6WGE4B^FN6DO@Y1O\?.UA@'\+32W7I9X^% OCAB)\ZU7AKPWHWAC<,# M#/TWKJ_$DR"!04>1JK!O0P;VUXR%2!;GF44_Y.S*R6 [^-ZEXC(A>&'3 0L5 MPU(50S/,0TY->Y=^B_MGT_X9Y5WCT)_"ZZ_V':.N:I:EZMJ1 M54,JD]0KX2SAS.'9BJ_&=:MX'48QW/<>[&TJ,=ZXAYW2[MMKI MR/8G%2=3S^RK'5.2J>)D>F,;:K^OR38HU:50MVU)\E26/-WB:0"21I>FT=%I M4!4JSE>#,B:_A$$4*;,P&+O']5Z4_9ZWI(-T>ZIMEWVOU#CO92U):W55779I M;R1I==72)&6;Z<#K5;;7LR1N"=6T)'4;3-WBE5QDG_:2]OZ)>?#ALZH\,Y^% MCJS")8HEB2XN[@I7,Y$TNC2-.H4;DDH?^3']W&<,S5S_ M6?2YE'[R4CNJZ6K?+MI4[>9<;K4DK::I6N?(]D62M)4F+3"M?GJYLX93MK;$ M+5S<5KI2ZT-=K80BF)*Z%:5N_]CN/])/?GK#RYB%+(I39[BJ^.RXF)K;/M9: M:M>00(DZDA7>-5)I%TS$EF2J/(DNFAGBO)K M/Q[J!(\G+%3>< _X#_DV[K[J9V<]R=40MF],,'6-PE40:GK4KB&!#%4S9TZ\<9-^LR5^NK?5LVP6T@:?N&:AWK3)>4K3)E M]:[:*1Q;(RE;!\KV2N\M+.E:!;IJA3,4)5UK0-?B:<47(>MMN*4_+@X%J4M: M>J./SJ!6M?X53[:22@=)&]66+NFJ$PF-<^O(G 9)I8L)/,VXIB=/$ND@(AU; M^$&2Z'+^\",S0:0_O&C#*R9\XN?P?Y_QT%;CEBK%%E]M1NV9:J];U"RIDP]" M0O@6(-P[,MA/0EA"N *K?E.@[U&=D%N* [BF/N#_^$?/T(UW)JS-K&6;[]*I&>[:BELPEP55&F8>BE=\DMLZ4D+%]1TO-]SC/%.4L M+S!+LB;>Q@[\, U+@?^D;\IPUU])%+OC^=DYJ;O.209RTC\'X=N'E)O.- $: M\=Z-8;W#W@H<;#U M2W,U'BBS\8)6=VB9W9OVJL@7I. ?N?Z(^?']G=XCHAZX-^]AI$'H;ML3?1]1 M=$,X%@S[W9G)LHT(,(5W*]ND&VW+Q$UX'_AD\X/E.,(<8-X;51FQ85'L]"= I6]N1*RL8=VJ?^L>,$K MT/$E\!)8"OP&Z.HZ'OPF&(\C>-]@KKC361B\P+NF[C'9MK*5YEN9 M;17]$BME8N673(\QS.(1".FT38$0,XL&).0S/0&@>';]S!. '<,F7 U),(B/ MS+;U?1L$ $L1,04*P&.KP[PZ409IHQ ./SZB: +3!Z0)[*A+5,$?HV08([I4 M <=H$H3Q'0B8*%?";9K M>&+ABSMD45MR196XHDA;C0P/?*>U>RFS(/IU"]"/ %@(X57NT#MM_?NLC!TE M##\7L((G0+,H*4Q=5"W7HM:Y"1\+8>B&*NF4%M MKXKB8/' ACC6NYHR<"(7Y&K@^@ ;A)N^#K>%H%T(UH@]DX3.&7I-=/WB.2#K M0'"_ K/@GR@<\WZ2#HD0!'L1QW12B L!B8\.LU9+R*+$VP/S@V?Z(002PO=/ M\RAFTS/(6D':CM'N6D#^61"YR&?WI%-@B]^]NJ-X(@[%V0?YZ?Q>6S[B#& 3 MDGC[(QLU!2Y_MC=X@.9:,'_FOY-P*0^>V=T ,/GUSAG#9.\=[]691ZVW*VL" MZMRM[>'Z\KR2X#EX) 0 WZB?[YU'O(H M*85Z.4(]M_(H&;S?Z6UK*<^S=L%W1E;29PY>CI!]S@O(O&<&1[I!##;G"_/R M):60LNG/W70N>*D0M16I_RL&E?5\*8X3L "VX*3;[J??G,&8NZ3WZW#G$Y%P MU?GTP0T!U)_@5\IO\.@DXA^N^*#V_$:ZHJ[CBC+;/>%HZ*R(0T0WF*O*X'!' MU%[#3]UR^"9;^E( >0YKEJ@W^)3Z[4[J==U'>K8('>7HR#C1EMUOV5\:GM\:/R)'"8A M**FIZV$YW11_B&-RLV5 6MCCMIS85B;=Y)>4/P]RV.'NP&F7=D%Z[FZ6]X[U MW/67%K?PW/7V>.[,U*\M!D&(+$9>8\9UWLKW[.$_T N2>*3S ](F->$ 0V/7 MAZWZ-U=;("X@0%&28AX0QD3 M,9 R(^5O$6P"0XV7C@"I"*N%H&T>+S@/Z5MD36]IJ''["Q0.G*GFS D54&AN M,%K!GIZ)7Z#WP.<)1\\8'G.45["A)F3\1W$P_ K21YS=4W". #XAB_DL4UOM M#$"ZR4LD??LE$D[7'?V?U@'7&OV6O'EJU,W3=8(LGX05^PBJ: [V="478/U \<;%',_Y)\LP A+[?GT1+HPVN,@=KR" M)CN?UD)848@N;)#GS")VG_[E'8C9F>?,[UV?EDD/O>,SNA,2#KES/4L'7\B_ M7C)N6^/,*Y*$Q)O%UVWZ:BTDGW^'\6O=[M:OM;9^Y'>6N?VENY[<-5DX+=IZ M7TZV_,EV 07'SF?7=V:O-Z*F2+>]>?P7X8'9 9U-C=R%Y";V[&@7"Z:@V1;O%K>UY> MXR->9@8)##H"LX1]&[)9C,\0U8J!B6NAJL M<,K2;W'_;-H_X^K[5[LM_%YY/W'\YT-2T6\97Y(_F\&?]=J_7.8\MD[&L3*K M6D4T4E_.P@E2H53T[=M:H01J.4DYR9I.LM2RPT;;L*HLZ':&F%ZC%/$-E+JL M44%+W>RKUK%%62M4P%*BKE:HLRU5TXN60:H>ZA9C'%!^L(:5JM[H5I%FQN70 MYQH+/4MM2BF2ZB22.K:A6IVBS3"J)Y(DZNJ$.DO35;U;M)%1]5#7=$78;7=O M3P^65$FWCN=D2ENX=N73&C)*7U/[=M&6JK+IUX6IU-/!U-$EE:I-)0R*DS2J M-HV,GJ$:MFQ$674RF9:J6U?L="C)=%A3U[;6D&Z4]3)WTV(%UV[14D/,]CNJ M75@!R /\I6TIS5 ULZC)*\ET>3^+<6D_BR3/X?JY:ZAZI^CQ7I+IPF0R=2"3 M)85=QH265 M#A+\1I&H&DF>"Y,'C5Q=,E'5J62K_9[TZ%:<2F_LMGD547=3SEPJRI?69&&> M.W5]*L4C_;G'G,ITU=)LZ86J+H6ZJMF_SL%9$NB@H$:K7?^$DH;3Z(UIJGU; M.MLK3"&CI_:Z4LY5ET)ZMW" 5D6=N(;%:UM6UL+]=,XT_7W/'5SQH&GY%(77 M7VU^-8; ;/=57N=;K/!W'3O&!@0E_:.73^M2 HZ M*>B*6-FJ9EFJKAT99%\742?A?#-P[MNJU3\R_:HN<&ZZYC:+A&XU17.7=*E6 M73=#6A5P2S^$LUZG'3!&AOE-P,\H2+!S0BD%V6YNEE49HQZ[58]9YHYQ4\&N MY5?[.]%LO0'+M$[&)P9-U3_Q7X*N3J S#%7KR=#QJI]H#+.MW]Z11DJD&Y1( M5A?48/UKJTC0U0ETMJT:=OU!UW0UB+V';T\-WE2X?%FE_FX\^LU2]<*E_F2, MXJ73I-2.+2L!5)Q(NF:V90FABA.ITU=UO:@;0U+ITJS45[5>T:@X2:6+VP[= M]A6[?]SPE=!)E?YN^VAHJ89,.*\ZD6Q5,V4YWHH3"9TLURD+(.ES4'UXU=#K M?TO<<"+I';73D=>J%:?2FXY9I*2IK(!RW2)_MWTLZZKPISP[5Y](T@U5<2*] MT8H$TTCR7-IVZAYQEI=4NKPOU^I+*E6<2F]T79:Q/O\VOP_"61 Z,5,"Q/*-8+FC=H\-W*X+EAON&.M=*<3Q^ME$4M9)65?$SZ_K M:M^6BEN"N0E@UC15*QR753,P-UQSZWK[.A$6UU?=)=VI5=?AL%GB;^J$SZY_ MUKNT \8X8X6UFYME5<:HQV[58Y:Y8]Q4C&OYM?VNKN6OMYE([4NJ^.NM]"Q' M\T9#PVQ?M*Q%4Z%1E3&:"%'CLAT6FPK1)D+CPJ5$F@H-66ZZL$EZ?"6MJT>; M7)%?[?:13;Q.X5=)G<.HTV]?- _ZC,2IRA@-!(G>+7Q@J"I*&DB=WLVS\ U[ MR4XJ=W3#IPCKLIVMCV":FR;.16\GSTBY637,JHS10(3JVF5+]C05H@V$QE5BN)J'C'*=*OV3S/_+I;OW M#K7_E8_^"&83PY@PIV'B@2D:^(H?Q,J4.3XL9)QX[2*YMB,WFGG._-X/?+:; M(/*73?^EA(K\91&HO(V=@3YUU5T7FL;A M^:SI'-/9\6S]M$1&5BG\E42Q.YZ?3_G2B/=N#*\;[E8*!G>P3V=.Z$:@!8*Q M\F7BAB/EOQ(GC%FH?' CT!**H1D=)0ZV?FENW0:A'.]0$]Z;=NY.\(]_1[G@IUAN(C>Z-CPS1:]86EZVRB@-_*UP#8=0)R784IW".-)Q5!E\.0K M!JNWJ1BLG8K!MMOFNF+84"5+N(U"D,0^8JE\O7":_%<:K "V(M3:DS5=H37( MXTY#),]2;0%KALR)@ N_Z[<[JU)$;]O?YPN._[^]+VU.',D6_2L9GNH8.P++ M2.RNF8YP;?,\M[NJVG;?>>_31((2T"TA,5KL\OOU]YR3F9(08C48@34Q46U MRNWL:R:$KTE>R9M:7NL,(\PG&SD#8 ?.,$)0B\ETS'$'\)*8./&DQL:P7@;, M<.@'L-^!T#KE D-HAE'MFV6HPVQ:,M=AZH<.,J]K8EYP'N^?'#L:*Z]O]D7I M?;ZNIZ_P?@AKCA:_DEDC,DP1O'[8@ C7LF:/(_OO.$@I<"0N^X ]/R[Y$!9[ MS=TG_AR>7&G6PL9 M4'\_^XLS[/>M7KO>$8UZKVG9/=YM]7G#:C>L#K=YM_?OSMFO#Z01 JO]"!," M_H ,X;\60;)BHWM2X%)N2HZB5E;?1X[:-CI+-;E.UGB %WJ&.?L\ZF6"^"5P MP'S#4LV6J9LIZ6PK=;[%C+R(\2[6%^G=@0\6J.,-9:!K,6<^0NUM?SZD8=%*$"]2>AEL6^6>D24Q2K#?N\EB0[$/\UW$!?NBS2 MERI[O\S8MD)<-'MY_VYGWK\[&XG(O]$MEA=;"8H\DA,>$T(7B89U>?^;,N3G M>HV4:!L;2+1690?8I%'H.++QX5F"Y/@9SU3V!!N M5,#[Q8X^TJQ"62E#UHH"C\Q;TM*$33!C=*PVX,1(>J(.(&X"C M7)>9P)M<(EKDD/^U[Q#.H_]V0&6Q3V-G, ;#X)GU!6'A()+(W$>K8>"//-B- MC8,& O2^6&B38AA'<2 ,IG?@A-2'@S/R^-IBZ.""*>^6_6G<&^P?-S??94F5 M?G("I !C2+>SW!@N; @\M>^X3O1LL'\)]NC 4??5++ .GWSCU <$#@'>E2O1 MZ]-T@MU! C@.513L^MY(!$#K''8'$%RL;;[)]/2<,*G2TT\V/;TTK$^7YF/< MZ]9C*(Q)%"+OD=0.W$FP,0>V!?")^V'$/91_&;:8Q++( TD1)Y:0.+)2#D+2 M]P%?/?L2>(I+#RH.%O()<@V0]B1DP9QV?%M&O8"=((L"<>W&MB WBEK3$C-U M5I_HOD"LEE.-/!IUGE@T";*S((%P8:N8S >I4LN;[;61,1!LD MYS/%F_D3AT7RF=X&G(2_ Z+;GDO6)DH%?4$/"ZND$1*Z)PH'M<=_8D,X0W(Q M\8A4"51W)-Z==AGLAFFGQY-/N]2* M >JG,N]F'CI!MW@Q9P(ED*Q9Q&B*'-NH^/5%A A-&C)J@&2^*LI)HP\#$40< M8\ZHAC!?2J:94\>3G@$.D1XJT$J*#'T2(U(AE(1 )$9&W[*IEDU#4HG(4XE5 M9>;#KWT!TQGLIA!'%N(%JJ;H&8+#0>+76 (\P^/> +5C956':"NC9!63J70) M ?G??_[([L1(-\[\A\&^P/JTZ@TO.QY50-&O@1@!6Y !?0],/V2KZ+4S.^]# M5 *<4*GK:D]25!>L*#,H\FHW<"JGT-'^4;UC& /*6L"G[DC9P@]HH)F<( &36&^WXR\(EF*I@U^ M1%?LJ.KR:2BN]1_O=*[)37@(TB_--;7%"^7-J,1MU:36KOI1J M9O6S03_E6NW*WQJFT6YV%_Y<-\PM?VMTFUN]N6RQ9MUH-GO58G>_V([1[FR[ MGNI@3V6Q@ 7=]=:SH@?N!@VL5S[:FWNTH FU](H>I@WUG+I'G/AA'(@D(/<9 MM!)[C8[@NSRWTS_B;,CSM4YX3<0O1Y_T]4U^.L_S6S3L_!@&M<.+W1ZFTH&4 M,<%"WW5LAGM=$D@F3<2/NXJV9GYUAXK5'93O/=IO<9K;_] ME9<<'7+?P%UZG2WOH]N$DM:\[RDYB@J3*TS>$),;M4Y[RTO7CP63DS'6N%EN M/3UH_3OG#@E;LV'L&K(O!>L!3F$O5])5S/$M,,=NH];M=$Z;.5:8_%8PN5N) M^9,4\Q3[M]Y7DOZ7EWDZ7GCGZ[+$_;UZ-'Y_^,A"$46N;*\ZXHZWE[*QEM%M MK;&B@I(0Q*[+AF$69'7T>2ADE<&YFJ:$0LY-Z M(4RBU87EMA,. A%A[O1/UA>>&#I1>)3JF/42=6R'IMI;80W%9'$L!G4%I8-# MJ2QC5-AR#-ARDE Z-QNU3MU:7VLN,8"V'>.U_5X' /.M[.B'*I8N/ ,MK.]C M*P2J"IO(;@];Q/TJF^:4;)H*2L< I;*,<9+88M;,9O=T<.4D8511](%\20> M=6%!>ZE2E-YR5L<1I73L)0>Y3)90A< GCL#[2#TN$P*?MJ]E^^SB8\\LJOA; MQ=_6R;FLUQJ-34VO8^)O%0*?-@)WZC6SVSAA!#YQ =U\JP):N1'T&M23+8+] M:W:@R1!! X[1]F-LC[9I:7Z9)SR1;93CW,J"MM6C1_]HU:@LE1A5H[*J4=FK MR:OERF[)X54U'ZJ:#U5=OBI".Y[SJPAMIUV^CJTFXU/:^GU_Q0I;N[K>N*?S MN)R=IF'MVM59,F]GA<=O X_K)]ZQ9A.O_2GU^3!;1KUDP9B#>_HKUEBQQK7W MW3"ZNR:@DK'&"H_?!AZ?>N_9-ROBC78EX:LV7E4;KZH,Z"V7 9WJ&">)M>=U MPS*K/E5E!4_%5-Y83*3J4U4E"%<];2HHE19*91FCPI9CP):3A!+HS.T-=.82 M@Z?J4E5UJ3H*%E=BBZ:"TC% J2QCG"2VU(WZIK6*)4:5DP111=!OS)&4=*JR M2YUE^Y;S%HXH:6$/^;5E,H@J]#UU]-UY6FV9T/>TW2W;9\X>>_9,Q=TJ[K96 M1F&[ZB19H>_QHJ]YRKKEB0OGMK$E\(Y=.!?W^S&M)0U_2N^^W$TGI;>^Q+*, M<01'=01++(47\1"9:/1!V(S#HOA()([$<,P#F,6/HS#B'FYG'T;+:8M-RZK5 MM]5Z*MWF]8!D=;9L 5Q&()5EC%-%EGJOHNC2 ZG9VK)(KXQ >E'^UE7$0=G2 MT4#X1X^5V1/&$)WA,UHT^' RFU3;8":73T-QK?]X;SOAU.7/UXY'AT\OO9_P M8.1XE_(HK@ORP6E"^?/[)\>.QM>]GM%JF[^<)4J6FEC^:AH(S#SD]&^];F/A MKW7#7/+FXE&MAF%:O6I8L['XY^RP:S9R7+M'%Q@(N^88^09=B^XDG4OT3/9C M6NML2)'08;J.%6_J3L :_C^GLA)_R#@-^SL/?HB(/?"?[&,@;"=BYUC5>J'K M2Y@=![!%%HV!#8B![]GL/S$/ %@XQM )86_8SJU98T]C9S!F3SQD 3P(K,)F M#LP$;P;LW*'$R@LF?DZ%%XH:7J5E;%(T?$3(,W^7[8;(LRJU9"G+/L".-RQ? MC_@3=UW6CT.8&F8!M$HQKY%@G@C$ M#.IEYE%HQ\[5A!=&05;,'UI=DD%6?-L/L)(_D06\+PS&*F#O ]B91I,DFPDY![6M\S9U0 W0= "Z\!1>(+! _A:[Q= M[1=)N>L1M<&*\C6S([9 ,5>(4H@[QF+:72B@?OU;/[CZ=>%[QRKGOC@!\+QL M_WKZV1#41P;_?]=M&#U- M.FSH!PQTXC$#*>CX=C@O'Y,1^P(>)H$GPAI ?!C"?/ <3YZLA.+!A"(V^,LQ M-NR5E@C%'0H_M;JF9730'37?O$ Y0\BFR;ZH?%CU]!7>#WUTW+ M[O%NJ\\;5KMA=;C-N[U_=\Y^?2"_*PBGCS"A+#GEOQ9!LI)195'^FEKYZ]:- MQ@+EKU,WK/65O[;1^$4QQ'9SCD>"MOEB'6Z1*NC8?S];C:?=UEGFI7W#:@Y= MB+_]YOPG=FPG>B9+Z2.?(J*Q.Q'Z<3 0X3HGU'IE+7(TD^]EW@E[ 16(S' MHG'@QZ,QT >> 3R3C)B\ (]. =)CH)APGA[6,GA*8>$48_>WQ,5S@_HIZ!ZP M2W8@WD@K0E5]$6+",GFR3.7RL'HI,R2L18_ND,PP#\VP26*&S<029GA=RS3, M9 QXTM-KB,,E\SL>S06X";,^ \=6ED(-OP+RA[/)V Q#_@@B&X5NGECD52WA MS))F!P9C8?=F>#FQDD3TK?<(Y%T2K*05?@=D3<+V.<[O:PK;4.^^U@.W&\ M+X['0;K-8OLA63";P_9ALL0Y_ENO&\T7HOL5=KCE#MVHC"% #_$ M4K)%T+T.%3FF&P M>O:GK,9G,ZO3J_7,MG8#D;5-NB:/H[$?P-'-ZXFHNHP"/JD1NG%Y1+#&D"+. M[TPSZZ"_7>M8&G,+,VNMCEDS&[W9I5$:Q6;KZ313@25I9_Y59OLPA>=';,RQ M596'GEPE#F&;-ZK1K M+;.C]EI#;^W%+<$"[F=:A' 22 MCI7$6>Q0.0;)L*%>3.I$^0C0 LFAW R'57-0F)&(P"PHD/KBD;LQ\#*B M&#=9\BP.DRY!_@V9]B#1P7'Q20 UX4"@O4-,>_Z1AOD QI'N?39U.6)M"'!S MAC"]%R4DHWY*$;K0N7*B2@;I_Y)SH^! EXSZ,Z)$HH6I@9*G<^5 0E]G((!E M/=+!R;Q#8 P23$II^-.X-R1-3_A/9Q)/6-\/ O^)_*XP03R5CM!N*W6V2A: M7K&8!(9-Z#)D-_$(CHQ)&=.1T(N>?/:1>\ ^X0B3==46+@S5T%2;LEJIVO/G M_:<+$&C1$FF6=7UEMI'*EC460 C\KMO*IA;@1C!>EKI',A.E*L>&^R1F*]DK MT1;I>A/^(R7(S9U\?'$SP$T"@\,N$Q*>4D;[$!C[Q8RD=%QPE MCCZ%/0&]RZG5#&@_AVD6*V@F$1##<7/ZI>3Y+0Z6XK#23PC_4<6*A!2H60'_ MB-\!5.B\%!* A89H &?_#(!R_2B,DQ$2+@D(FBN.XSXKXU0J M]0QBF7:*6:@L\%U"BR&@Z*7F4H!@3KB$<"D3P2&B 0V'#HGFH+2#HN,ZEXFH MN$ TORA]%P? Y-5H# J@Q-^E\+DX>F_B4NR4]LMB["1%7:,H+"\KE$0U\4E(UI1[&&TI"0[R0J2F#:C-#"P$T,4<%2(&))1#7R0O!Z$8M+FS#Z$ M>*30"[]R 8321Y)NV1\,X@"]@U^!LBGC!?>&=)Y]ZDP=8WA&VZ27LEG^R'^U M5->21S)OX 4N'$1$0^:VP"8H8$.!=C[(W.(5AJ>-VQ_R@IU\'W,HWD?GQ]#U M=>ZNXGEPNL(AC1)?^X (=T?J2\ >$"3WW[[AP,S[ (@<@J#,9A@O)H\+^G/%_R*\3=H92'-%,JD 9VD:M*XU+8%H<$C/P MF7<62-YZZK%A-V#L_R9H$K3$)8/TT<$QP'T@.('\0>HY4TYE'C2/FIBP4#%2 MM0(Y%O6H[;P/L9&/T$4B..'.8?PF\[]:5?Y7.=:R]_RO,K"PG&<)U7*^S"[. MN)$Q0%'/AOE];^2CA'1%1!H&.F:E -,59:2DSU,)3V*,Y#87F0(SBE3 DENJE,V.!QDAB4X?8*/ M1%.!3\Q[H0V_Q/&=,7-3+R:JDNE@&4YJ6@WDS)52A8*9:)OZ%B#2N*T2HZM38HP!MWQ5AQM68_&JP+]*1DOA/$$]H<#V3^*G=Z_(;:5]"!$_A56GT)I#,172O-)B6G [I-!HHQ]@45OV(6 M_5K@ +TS%(6+R 3>)>.E$!I_RB0?9M("$5L+DUM(QX=%8I0RNU!USX[R#"9^ M_1J2B62'H!J._=BU45/%^EXP<_!5160#@#7L-&!]AWP\!6F )X-9_](P3ARR M)-B$I&(,D,O-0U_>A<2\(54^>\P/PG1*AM_.>&C7QVOAH$?=2),+L^P1YZ3@ M- ]]_ 06%FQXHDPI"15%);KF*25IZ>]?,(L$9NS*T5PR^>2UY:>>#9,-8M2T M18JVL\>#9R">.) "7(>\:V3$RM16D*=@B3XC^L-Y Q@GI#*2>BFU1]%.Y$!%/CIZG$JWDS"2?,T&0C(QXU^AU M,_DX3JA3$+!/D.N/-)>7 ]E^FC$"@R$[SF6-2/2D!SQT+@'>"*\@**3W+W72 M9<=&.@.0BN9AN#CQTY&IFAH(XF3#IRV)E1*TR&5#9%]6:7//Q0D1E $4AC&]!IA3G/4RESA16YXY48.'2-8C&YHJAR2> M"HE]CQ/7PM06( 924\$:\T*>-@FAYP$)XR2XK)4(F<82:J<11N]HW:1)I]L^ M3=%#&/-)8@HE"JE4!O@HLW4B/+; )U,T'$OO:J9.A&P'9 S%JL:I"#ZO"PV M0Z*N+UQ'/ K)__#5##:D.1DZFLMMU""DQC@10KTQ!MR^I#"#[&[@C>0G=Z:6 MIT")U+D5MUZ"GO.+TKEJ9$ZKG:HT4)E8[??)5J,HWL*U4*)(=M5I6JK,+DER M:7V4_$(:ZR2=I4Q'IVU^7*8.U0F](99'ASB'HBXCCY#NC9&\^+J<0. M113*IB\@XIE9O_RO3'YYZCM#'[\MBR6^B'X0H]ZE-9Y71\6>6594)'!^#!R9 M,W S&*#ABV3]W7>=@5-0R7BP\%2@&"PI@UX!!FHU6.^&I[N9JMWH?E]^F.!F MFC"[#8:Q-9!K)QC4+,*@F9+A9G%!Z6RM-3YT("R[C<2$-5XIM[-H";D*ZY91 MI^L3_@"=-**4X4>I-OZ!203J\Z>$@87LI@_FC^Y<>.>$/TY3]9/":8AB7%8< M4K\;[SD)F.Z&3E2V"E)A'(:9LH#\="J?/( #)T-R)1\ ?P67H.%,5F-+Q!%B[3!"[7K#!S6Z6I:;=Z M_UEFD 22JYSC(YF9/@&17ZBDDB!PR"<<4<%1\DPM6^L4P_ R$X56DR2WI8DB M:OUP1GPD9.@K+0TA/C1VQ)!]_JF3Y[X-A\Y !(G;0/[^)(9FT//7,4Q<7!B5IV=J[@K'JS(FO.J<%9X3[PZ.F M< J/: UJN3F8U]8]&=F^*VVHY0.NT0NT9L$@V=.8<_^Q(FR$?&9\W6P5<6%M$!T=]B:7'$8XI]A/,'P%CK-98P? MYQ$25]7TG)RA(R&?*7X*8AVMQ3VJA/=S1\\-6G \43G)NV21AV*( MZ*+Q)Y/8@^VK4)[L2%)$Q_C+%OA)[GCN8K(Y@@!+?^'L0S), S'B038"96?0 MK)"D'C#M5(3,1L%%$1%E#H9-:=>YM^6 M'JPTS5[295+%D7@X[&SY\$S&=,;U4)ANPS'X$29Z*V 7)[Z%3 'X"@G!)!;G M.C^$]!_./5][V7[6:N-4W+]K)^JP6:^O\(J\4@9CL?;[_>;N@=W>&NS;P__Y M?,=NOW[Y=O?[SL_H()^\JSZK-'4#7\.&0N'<(T/024EE0UA.E9/D.-QD-=R2UL M;T1!$*E$8UBP1OQ)!NC2YA?9#$C0Q*>NC*Q@HH(S()Y-R9//M5E]"_@>*/6P M)Y<:Z?CNH]1U]-+QNI$R!P!&P;F?5:[R&HL.J5/PDGM,I-X*FM914"\/!33#$9F(Y0Z4CJ,0G$3V*@1%/=LB0D:#8<3]5 !7TGRI@HGI#13WJ, MA"N'C: 2_\ZJS[:*T#!%.0>J*BQ32*.)WI"M"&20"O75(15$\1^J+L77GELJ M8$N/-0TI9]3YO-7&;<0QB0NQ%PHWL==(DCIC7]9&90=+LW)E)4M-5RLX:HLR M@I;VN4A]3C"=P%P.:7GHDABU_;^&F02/@D8&6 P;QFX4JF0\'3T%[)-155! MP]D#=52IVDP3B$BES.6I@:,>D>1^BLG4]2EC A !*7H@5&L&I%V,\8'%Q)/( MN.[*D&(N;!H3H@UVXT9CRH%SR,R!$P#*<5!UALW(FG: FDSYF6(X=R!CZ+ L M2@[,!N0SG*A&31K"!1"W2=^7D)%>/\K.)LC(8T2T!34WV4VLVNQ?5*;S9Z MR57201+B(K^VZFBB/>C[CV/M.4AJUGM'2 )6:2@@T7/_] (Q@K:_\>_U;DW/7X WQ_ZI M]/4[A0;6N!!]@[M=-[[P\) '\(!%2IQ=^3IH'G?/'-B*=_1C?2 MJ)6G])WZD'SGCG)03[$0'O^@0WO#IT28Q)8@$5C0F*I)VE+<=YT!V*>@:?NQ M-\ L3BII NWZN^P &;+S_EM&NM]5OQIYH!+%DE.5']%&EW_]SI_9_Q,1^R R MYYV&55>?[0J.OO"Z:J6#J?LJL!.$8S-]-AO* 7GOZR&T8DGELM4<=IFC["K0 M=^_%-%(NOD:MX)ZQ0]WDOO:I'_J:]S6/WK2L[2YYWP3]#GD#_'X!^GI*U9KP M?+<[)&@N%EKU3<54<5XM%UQI.9% M!:8*3!68WC"8MI7=.P34CHQN>=Z68;76E>.'.&^*X:T1=-NKCJG\*"I3IP%G M9_LQYOWH_9^:U\FLM3<.@.S\K YLA!P8*8XXA++[ RHWM30[1J?YQJFE8J?[ M\LM4*/(64.2%/J'#(PEII5>4V;PJX]_LKE$:;W9W7P20SW,J3D8_WU.#EG5F MGTW_[QEF T_A0=^LK.HQ':SMS-X]BV!F. -=A7IHFPKN*@T@U9,BF'3:^8HNK0[%7:B,^=5G:DW&+_ MR3TLB9)<5H9SZ]WW^)J)+\TLP6."#\:Z'% /0]66U-(:?U$N9CE>5PY7T[,P MDY+TS';Z38^^R#XB0\IP>MI;+=/]3-GTY9^Q)[3_VGHOJVR?F95;:VVCQ;+& M@D58-+Y^JJV*QK:^*'Z#:K.%I/?"^C/3.L+ZLY8AT6G^WV_4-?LV+8A:C]\M MW>**U@AEZT=)(ZY_-?FMO(2D;6\ M *R4G2+^YOR\]GSO:SR!]P?4+ :6=H=7A0TN6V?,XQ-8C1C8UU]]#_N,F?5^ MRX1MT^$(^XO+1V=,XA90U\_H>NC\%#8LU@W%&9'<\++3:&(;\4P='5Y&.X&Y MQB%3;=L+6N1XV&H@:8JF90(V@I?MF0K[H#&SS2_-\V'2^&RFCQGC\;4;0IG>)W"JH>IEQEQ5^KG[D.]R1L3VXMO3-Q$B+42(;:'>Q;U MH[#)P24<'/:1N):-[)8PLH-?PCBS7/%S[/2=Z/W!%[CWFQF+H/2^Y/I,NWSU M]"!)"&,6"_I90SQ_I+W#%']W6XUMBK^Q1+G1V7E];K=MF.WURGY+DV^T+[90 M+SO?6KY Q;?&432]OKIZ>GHR8)G&R'^\N@&K#\1S>"7L$0^NP+#C5^UNLW4% M:S7-7L.T6O5FO=-KM*PK6_QLF,8XFIS]VC#, F[V@CR#33%@L:WY^D*M0HY9 MY+@3ZI*P&X2=:F9RF_0W([_A^6VVWUD?+XPF^1[WTT6V9WAI59 M+V1E+T2$BI65'D>RC.P&.Z^3XY4XTSY9W4?95B_/Z[K(ZAQWQN/-3.G/K>^. MOU4Z6HEQ5]I5&H/5GY:)?UGU*S[U1[##1H,'_6>7/X78!Q',E<#1/*]1J6\5 MWFR,-S?JU@F,(R6L[P,]2:P17A>"?4:?'+Q#M\L#\UN?!3;T!48I&TRZI/\A M8\#NB^JE(L=+^L$V)U9,!MPMC.\:H[7MT<2]/F2EZLM(JCX)Z-.*; MYK\QH&&".J XI6F8?ZGTPS<"[8\( NPPKH.'BVXBR>:UR/@2WNC3/.<7F2Y( M*^[QV9(?58I:R9#(FF<9UDM91J5>'0NT%[",^0NT2L4R*BWCD$ADS6D95J5E MO!UH;Z5EF%WVIW%O?#201]"+9J-5EWVG M*YXU6[' \*LTD=- M#E-Q*HTD;<#[:TTD:-@*R\1;0>IKZVC-']Y47/IV[#0 MS>.SMSOHVU!"-@S\R4*7X'9N/77S24$"JDQKE7=G,>?_?KC[#9V.N%B0JY'P M0@=S>3ZHNYW47+C>WT#'COE(7%SCY:_J?@F/"JBD=Q/OZQH FH^%B$)U[>W< M L@C.GH>4WBNEW%[2B!X>=II\6[1U>B[]5D:!+)JY M:.I[]-E2#K2NP0C$&(\'U([///#H?KE=K^1Q]4+PUJ8O=&N3GOPE,ZZ>D-I: M8^63",*_ZIM6=KMONM3W$8#PU<<"#>">,^M)^7*Z,N/02MAAN&5S.VZY>J.Z M@*$T>_U(5[M^!WX#7! 8&I=W7W_B$0>$ YUGC(R8#62D]!T)%V/&Z+_S5F#_G MA=6PKYD+7Y@P7)H$^?CS M[O/].E>#]0YVJ_OWC"DFJVSI/OM$JUG#A5Q3+^KX.EWX:L>@?P]X+(MNZ3IS MTL5AFKX@EBB3C9!E]L68NT-]%QLABWH JQ=%C+?!TGAI1?!:]Y8?XL(UX )& M77*"39/NFRVCM672_;+?+*/5V7TJOV7T>KN_P N.H+'FL&M>X/6R.W4.=]?7 MHKXP1;T^DCVUM]W3X?2FF^_?_O'Y,_O\]>'SW?>[V_O/]V#-?_U8H!Q%04X; M,A5][PK^K_#H;F^=.QS4P+H0UTFBJ+Q8J+G!35<5J1T :!^>KQF["J_8PS.[ M,]B]X_9% /+4V\3@>Y-\-6.KKM,5:1V;=X>7CAVT#=4<+F%-]_= 8!,%4 71 MT; @%DE/GG\/' ^["+GS#Q0X(A8:R'-:WY("\THEM(QF8[LW#Z(2MAKK74!; M2=<2\(VW+%U1N/[.([!:G]@_#?8M!*8XJJ1K)5VW1:IY9$*)EDK*_Z:+? ND M[5R(/B]MTP?PI9O!P(\]BEYN('Q72-FJQTNQ"[N[V(5]U??M9_C/.)JXO_XO M4$L#!!0 ( !9S(UA^ZX>IBPH +1W 1 87!O9RTR,#(S,3$R-2YX MQ,'309)VA0!TJ:(,]C!OA2T1-G<2J2'I!)G M?OV2E!1?))FDG,QZ1\Y++(GG.^3Y#GEX*$KZ^.LBCL C8AQ301%2%GO>N1:[HO-GAJ!(UZGA^>=$:]X_X M??B@01?\E/LS%$,@FT;XZ8*?M69"S$_;[:>GIZ.G_A%ETW:OT^FV?_]Z.]9% M6UG9").?:Z47$Q;EY?MM=7D".0^"_(@6">>)XCWBT7DM?;ZKI2U/$Z7:_77545B!>Q53W#=GJQ!: 0#$\2 M@:XE4Y]0")-(BB3DCP1&.,0HD&X0(47T6H&5RP*R*1+?8(SX'/K(8(;S=P H M9G \ITP 4A +(9_H:G(FM%@+I"S>4A\*[9RJ),];5"C?1I'@ZLA31T<+'K3: M]EH3[DTAG#MI7I5)M6=G7&JPXI+=T6C47B@?*Z]!J>/H\I[ZZ75[7K_KH+;* M ^UURR,OEWN-.BS[EUL=^H]"O/ANA!S2H8#_>\4,I_1R#!VM.>,SA$3&/'5 M>*4!9@R%9RTU.GOYR/PC@I,C69.\2$'!>G=3E]M2!$6WRY;DLLKCSUI<$A"A MU#;[W/ Y0ZX-ER)#@K'5%Y73[.YS*VJGSO]W?E,^=M,IEX1PQQUQ6YKRC_[K 6\[./: E@1+] MV-X4V(!*. KNR+G^O>GBF7!69(O@AF]8RZT;M50L.YE;<:MM":<1#E1F<@DC M-2\9SQ 2/"$P";!0$U<;HQM1C&ST) 5C:4;T0L<2$V2@($4%[U]P_]E0KNX1 ME_D%I^&=[,*Z7O49VXIEY*V_C;<,&M 0+,$/] 4O!I-6OZ*Q;-@,$8X?T6?( M"";3^F0Z(!NI'6RC=JE(L;NF"N2Z#DRO\P'Y[#JB3Z_$;A'-R.C0@5$)#S3^ M@<6EW6DXGD'IZ#0*$..?_TBP>-Z=S>VH1E8_6+&J2%U5 U(]#67WADA*T -< M(&Y#VVIQ(Q_'&WRDPD!+-]/$#V@A$A@Y6CJ7,AK\9(O!P?L,IDG>/4[B&+)G M.:[@*<$A]B$1%[Y>=I)Q^;L<''QLY_B62$:*1BK9PMR/*$\84GREP'I46D*# M)3;(P1O$VSUZ1"216;*/\".<1(A#$LCA7##HBPO.9?(C3]QB.,$1%I84NH.: MV.QV-MG,=/P"5K0 B0IR/2!5I,^MJ&H0M^-D/D_O$,%H-4F^(>KFGZZ<78#+(K+J9(\JQJH1@X+*9%S-MI$?BTR('M: M[<&,;-9,JII(87F.Y!#LMLD;B;+.M)I(S6;Z9$]*A:21#HOTJXE$%#,JA_Y1 M)6LDPR8G:R0;5G=3/R$!\S+4WBTSDCS@0<&-Y5A8GS MDU>[EYL+'CS!AJ:L"_&EQ%LZ1;4VHW^\WN),7HD5P8.O6+$71?1)+9?(X'G% M4(#%+97%7 +%J^LT^DUA_:>^W^15 ;(N(*T,2&MS\!\;+C,;#=[$45[ C1Y1 M6&RJO\R;*06# ^]F:H9OR?O0S'MA@6IWWH<'WBVH^=%]4^8E_('[__W=';76 M1$GZ4 @FC^IY N::1>ZJQ.@'A65-R[M!>OTSTZRRT!7=C8S]93=[')C>)F[D ML+#B67&SZ$#+JEU[._+2,Q-36/O<3@SH':C1ANCO2$W?3$UA)=1 3?] C3:$ MPQ-#%BA&F@H+GP::&OA,D(5 ?61.>HL*99XY9X Z-8#2ZL,HQ:N$:2 M"PN3]4D&W0/-6^FPFL34PC727%A'W('F1DU\:M#A$'5W0#=2OOOS-8V.U.J1 M&(<(O%K<2$WI\S>-#)86>[Y<8J0+G)&EVIO(&AD/[4UO%09=X(Q,%M9<7)EL M5,BS-[U#I','-;):6+!Q9;6!4:U\MZ;+*O=6 "-GQ3UME?L]&Q@-MQK7H;-9 MX1BY*NYC,W'5Q!ZUN=5V\]BA;]E"&9@;=@HK-R7;>,MV]C:QRQ6VYQ;/U.B M[JA&4HNO&RG9#ERZ1;C!O;/2[/58M.Z!Q>?VMA#S-R7D8WO]?>3I\=H[R]4; MR[,O/FBZE/U_W*IO/(QE;='=7&#Y_RN*)XBU )QPO;GAK!7"2+UG6;UM_:Q5 M69ZHE96)>L.R8(EZ+;/Z',:I'.\P#1[TBY.#A&6/5?-$@F.1J*,OC";SLU9: M' L4MT#ZGN7E]S%. QI#3&[D186T?"=[H37?&?41"O@UH_$W]/05LI_ZL;1% MN@7O@4$917VE]AL2=^$G%"+&5.#FZJ4L%4W>#=3%+NFU2;JU0%Y $RPLK96> MB2F17LZ>+4RUN>)UX?M)K#P6!1$JN$DD>\9\UK9&;#;9![*L9)!+G]BY>:0MGG'WM&,6-Y^KMI+*.?KJK M*-WSQ8OC9-J,U!J.('LQ>.9+UO<(1E'VK8QJNDL+[RNG8S07VM2]3F^XG;G2 MHGO!SP7S9Q+#%U)5-$;L$?N(9U,=@S=:2.Y%$Q\0BS%)9W\RDGS2# ]RFJ.^1?/\;]GB:^BK MQ?_G2TH"TZAGE-N+UJGE5T@PXI?0_QG1Z3W2:*[,)M-Q-J=2+:KPR]5FF>7V MPB^WCW:7B,AP*F24K/10>X!]G=BO39NN&93>.'6?$I<+_K4E\7,>Z7U$E.V4Z<=943NVSGG+-/K ;0L+BA M.#I#4K;VUV^#HNZ238D8>:(JERR-J)FOT=_T!6@T_O;WSP>SO2/L%]-N_N,3 M\3U_LH?SU.7I_../3_[X\)+Y)W__Z;OO_O8?C/WK^;O7>S]W:76 \^7>BQYA MB7GOTW2YO[?SN#9>GZ \9^6O_9B^[PN)]^W%_N22[UZ<=. M?]O_(%5ZSDJ)D&G)A/J;((&E5. K,+OS7QQ]XH:LF%%:\+K^[=E'%].;/DBW%4__]=OK]VD?#X!- MYXLES%-]P&+ZPV)]\7678+D>]:_BVKOU$_4G=OHQ5B\Q(9D2WW]>Y"<_?;>W M=S(V^^Q_/BDWI&P2"6$-!7)?VYQUZ?G M:!/,TFJV'IS7]//FWA5>0^#X>8GSC">C=/KD69:&*)MC@$KO MP*"DPA)*A[R@#MI>'KXJXH)D7&NZP"*NU;UYX-,ZKD]QMER<7EF/]'J4M\5T M,M9-9'ZQZGNR!A.3;?"%.\:30J9%% S *@;!FE1,-E[HX:3O3 M7M?3 )"%>[+W":LUVAB[$TC0IVOTNORB;3[Q=+$Z.%C?DQ&E#D[_OO3=P8"\ M6'9-%7"B9Y)H9R)T\X\?L#_X&>/R]VZ>-E@<9)NMUBQ:KYB.A3-?2,B"'JR/ M*F5;6I/A1B3;$$(^"D+LKHAFI'ASB#T-R/SC:R2?="KV\058T:G %6H2L@BF M?2)7;EUA2F9AK42E?6M^?!74-E11CX$J;=73C#7O<59>S1>KOCKN=[C _@@O M8+(R0E(Q,R,J)ITS"U869I3*,L2D@A&-*?-E1-OP13\&OC143#L30_E&?T'J M"WA"5-)B(<'98D$IX,1$ MX1UXST10ANE"0L4@@%DH.0< QV-HK/R3)^^*_]>NRY^FL]E$QJB-\13?%^U( M@N!9"!3403+9IV!3B;*Q!*?/'E-:=0]]7J7FO89TH.CX71VR-^6/!:X%FW@K ML_-:,$R)Y/(RL9#)KR;#$24$R%H-&AE? 32F!*J!ZML-?C,^O)HO8?YQ&FM3#.@M/$">%4QPE/&="!WUW:5YT\V4/:?G/Z7+_Q6JQ[ XVXTQV\U1&+8L 51QS=8Y1>XJU2&6<%6&X M3$$XJUO;KBU@C2_=N0\GKA*]M3Z:T?X=+I;]-"TQOX#%/GG85_,CNE1=[)G@ M!;A%Y,BX-IP$=Y:2-,>9*B)K(PWXYB'.%K#&EQRU($IK?30CR@9._:\&84

+5] WQ]3B/X/F*UP@B8:*0E0D:5R.)++1LKIB,"6AZ)"U+RU3=D&V/AR MI296I;E.&MJ5A 2(LKG%!1-G9 1%"F24J FF05D6C.:,+%MP8++TQC6W)#< M&5^6U,9V[#KF0T31ISC0^E"<1X9!6*8%!A;1%@+C47B@D-&GX4+HT>9++12_ MXV@WG$T[HF=W_7'-SKTG-Z2B9L(DI.S-1,H+K&0J*YZ=<9[;UN_ZQ>>/+U-J MH>E[C_"0:WN:B\)UL2S*'(AK) L4" R0>QN+052M"TK:5]4]RWE:50FSMS"E MJ.L%'$Z7,)LHB"0 1>76YTC"2N;H8RILQH1Q9+DC9F?'5K%4B1'JHLA MERJQ5GMZ(R *3Z/0/'C]&JHQ)3:-B=%8)>UF"L]QK ,O(O!AC_LX7TR/\-4\ M=0?XNEO4$/Q-^0"?)Q CQU(B,U%2NHZ9HC"7@87L%20E4HRFM0>Y&\0QI4.M M/[TIW6J^ M7+R%XYJ5G@? QD=3"N.AD&P!(@->7V(7*#W5(;C2?'+]1B1CBJAVY, -O-]U MZ)O1^Y>#PUEWC/@.U^_A#9(ZPZT,/#,7,EGOK)%!!LJ0H'SRXC&%&,B#%*V[S,\V8H8YJ.;DV(!H-_ MA0E_>WIUF%[3S[MNLWZ'BQ7IKBL;"M.OFFVV_N*]6VZYWEZ(1ANOSU.GE\2D MZB*F\Q6]_N?/?XZEZSQ[@^DMX@,J")/FT,,*"@K;CW;?@7"'=,F-JC9&@L1;RAGOK?:FGE MDJL[=(WL=QI@2L;&2:5?M-:/1 MKST]^FW?E>ER(J/FBGM*'K$N^W!=;:/A+'H3(!L?%#;?8G?^^-W7CXYPOL)3 M/5_-E\]VLM12 /J7ZURS+B(9YPV]N<8S;20)*R5E1CG%9+C4X&/S!:4[PQS3 M).E]^7)]:6E8;36<$ELLWY2Z_6F]2QC[HVG"Q?MNEB<"A?("/7-8J^2!7MV8 M@:(*[6Q(]"TTKZ6['I*G8W,4%BTI",-13GEN4?9.A1Y ML SRVUK@^W/P>H(T#OTWK'[< -U$YL]QCM4$V9QU5JXPGWSML.@T\T)7Q\%] MEB;'F(Y* MCDJ4UCM]MD,V*B/7FAT#*.=!%EG>+^GK>A-;5RZ58)T6]S5;4M9V5M%EGI$0N6-(V$-\ */M)DH'SY&M%Q)!:QQ]?@-,V"<*@;2$Z M,TKQR,6[3&)E"B!DL9"+#QB;-[[]0A+T;3U1*PYM%[>;4K'MB#T[@NFL M/NQEU[^'&;['M.I/FB+F_UV=['L_XYI KJ*K"5RTF6FN2NUJ28EB=NAX1FU% MZZ2C%?8Q^8F'9/!=7OG!N/ @[SZ!)N7-3\JJ[.(T]ZB@]53N0**,R6V-E>8SM=O'+12A2,)@N5198H:"T^N[NZK MZ]8DB]-9Z?KMA(,] 4Q?6[#S8M\15!&DU% MU-8C]*2W?7I7^OICW^!OV?N'X#SR.;B4X\YQ@$ M*S*00=?%T&#PP"B@D5H9+E)HG0YL!6Q4-9X#4>I:L]'F&FO9@C8AYO52:8V- MWY1;.Z-.O!<)N$DL@:A+GA0>^&B1.<+K,070OG6:= =X8XH0'XI7 REO,'81 MHM]@60E__*;":2F!!8S ,"8'PJ30?EWSGE#'%+9](]8- MH=1V#+QJ>F]_0S"B02!43JE0"U7I#?'6,R5L4"$KNM"\X?;6Z.ZXP^]QNLTV MNFM9-G?3,)PMS5X8!DIZ-(^<4B"7+ U#+"RF(I@1(G.MLY>NM>O<'MW."_O[ ME/8]![I]S=LH:5MS:)*#M-98P3C'39=M %>8K>?,^)C0\=9&_&8D8YHC'8@S MUY;S=U=)L]?D9Z1 MI6(=?A1A8H@%3[3FR:>HF.+T19QS )6B2GHF"QU/,RA3$L ME!28]8$KA<8&UWIYZ@[P[MC4^)$2JHWVVBZ/UHTH-!B7MV9;JY060 FUH>A= M4]!5V:Z9U#)K'610S&77::&9 .W1A;].F4=]ZW?;"Y7/C.2D4 ML!=K@-EUWW";$XM6TT@D<*9$;4"W;_RQ"^)M*._@TF(H?YDS4B^GDV:@4$;AHF?>T!N4C8_9<1 B#+:=:4N,VU O/"[J#:K& 6W@LY3ZU:4F ME)-DHD=K)!R81R-YI9;)U7K[MO;(=N*3=^ZQ*(UG090 MV@.GB><3(,(5;[,LS"CT3.=$(#4EM#8%Q*(PN?AM4L4[S5^)1S8O/J06=Z9: M+=2;O,?EW:03FZZ)I M-C8BMRDC7#EYY'KEX1V?N15GU",Q2T/JH^'"7,&^KV+?W.8@4DO#1ML7SP68F.#)FR(%;*96 M,P*/E 28NDP(]1@,2:/1>@/M5T%M19^':HO\+>/L>VMJT"FKDQ/HJL#*(@3E M Y/*UDX&03'OG&1.> !=?+$X/'DN -J*.(]_?OR^*AIR];?.Q)Y)OCG>K9YA M&%W!D@Q91,T#L=HJ&@,?Z^$!!74H.C8O5MX>W59\>FR3Y@,IKTWL?+&H]14MHJF=T&Q%:<>R:SX MPZJLZ5'G5\[4OG8L^^4+%S[Y%OMIEZ^^1&<=1>F;?9A_Q'>PQ%]*P;2<"($\ M:A%H/'F-#+.L;CM]0SC:$^H>N+[^IS#YG$Z6C&,RIO%YRX2S$ ME)E)P1&Q?,CQ@>CYU0V/W[CES%^>GKNJ?VAZOIS.89XNXU/&.%J?-<^+"R=C3VK+XD3:9H8(2_E61!8H?V?H MK0D4FHL@6R]C?AG17V&#^*XDNFVG6P,=-3RX_/ ,U>MN_O$#]@>OIW.D'T\2 MK(G,2:+(@05+8FN0E@%2(I5+ DP*HE.MJRF^"FI435H?B#UM-=5\ZVU-O>/R MU6*Q(JGQ)/VFD%E;!^1N@I0UZ=!2D::6= M07H%G()[V?7K.<*;A/$>)?8)=/ M[/Z:&<0D77:HGCN.=5.:LWE=1T9P8N:,YY!,=MIDU;Q7Q&U@[KAW MYS'PI(UBFD\NP%OBD70W@+VBO*J%E$(K$NA;Y36C"571 6I7 Y M#13PW([JK[!U9ZBXIY&N!NL:N#E)[L(>1YCGTXK#=>E]O7"A6/JTK./\+W[& M)4QGB\M0M^LJV/#INW8='&H@&G4EO/ZTNH"=K8&0G&)*Q7KJD'4,BA&,BZBL M=CS$W'I6Y48@NUJVZS=='R,S 2TPRA*9L?4 =XZR'E=86+* &)&7R%MW%[P% MRIC6OG;GPE5KU6+\F[FY9[-9]ZEFB60[?^Y6<5E6L^L )T68')RM98A YI,+ M7D^+X4QGK;FE+^A:SZ9NAVQ4@;S;N]7AXPZSBOK]/M;V M(J7K3\:O-B[JYB<=9J?GA6<[.+7='[JK+VLL=B,7=EK6=UP9B%))E\"RX'2J M<\VU];T*3-)WT6;'G6Z]5'?Q^;M7"&[N]<^N__/5?)TH;)I6O\,%]D<4/H8B M@A;",Z5KKX@D#/,"+>,E% 7>('>MD[!9>Z-Y.@8IB@I%S6:>0."8?; ";-.L76TLP6L,=4TM*=) M(W4,%MULYBQ@]FJ^6/:K]7S#QH'+^P0N7[S?KC')]F!;9K;8MMYU3JB\_9M%.FG^K6TNG\S1S_ M!Z%_"=/^'S!;X41XKZVC0:%DK\;P'AG$ LS((J5V)CC3>C9Q-\1C"FX&X=^U M9.SA%-PNO]\2\_K$%8+\8;_O5A_W7TZ/UN@7Y_!K39ESF,D]4R!733OSZ U3 M5@892LXYM5Z;;09^3!'6J*C:5NV#L?;RR&SZTYQL^W@.B^EBDL#S#"(SESVA MK%\@062N&&UL$L*4UMLB[HKQ6[_)EQ!-1%()=:E'X@6*V:">PBE-;9IAO5+* M1M /ZX?O*,"8G4]3MK9^L^]/@P?W29?\Z!7<65A5]VX 91@G9P-$I)2#"\%- M=C'%P=_WNZ,>LQ<:!6<;*7S+''!SO7Z)L,"?OOM_4$L#!!0 ( !9S(UBQ M 5;;N"@ +>Z 0 5 87!O9RTR,#(S,3$R-5]D968N>&UL[7U9O(IM9-A,_[Y*?V)/'V2QJ&)P_')ST__ M^?$UF*?_\?>__.5O_PO@/U^\?_OD51,NSM*X>_*R3:Y+\.AN,_ M_UJ^>#=)3W!ZX\GTQY^?GG;=^5^?/?O\^?-/7WP[^JEI3YXQ0OBSQ:>?SC_^ M9>GSG_GTT]1:^VSZUZ\?G0Q7?1 ?2Y_]YV]O/X33=.9@.)YT;ARN!L#A8_?U M'UY'(Y_-_H@?G0S_.IG^^[=-<-U40?=.XI_QD_NT_W[]91CH<=\_B\.S9_#//W&B$B*=/Z"[/T\]/ M)\.S\U%:_.ZT37DM^L64"RA9X/SO\K1G.V,Z12!MN/ )\+=I7"A>$>.JI^^. M^>NS(*;L+D9=1<3+SZZ*MSESPYH"7GIT!;33!\%9.O.IK0GUQG.OX5R O(VP M/-*=-R<_A>;LV13:RV8\:4;#6!;5#QU^+:MLDS^A$7EZ@]].!D0Y0:RW8)D4 M('C9I(O!'+?)@L^)7=Q$\9,1_B61'TLS3J)HO?3$4_%?MZ%#/Q M/GQ>;\8!-^))>I5F_W\S_M UX<\;DGW?C$:OF_:S:^. "F\,=Q2$9 YP_@2, MP$D+*4Q@+A+'5KP$.TUZ2X@W)7)%N>?M0C;SM_F!KWMNF[.JW.B:_:ED1@N< MW],G38N/^_DIV95!TS=Q\NZB*R9*L?L&+A-BA33@M;4@+!/@7B 9XJ3C(Z#B.0TV$WJRSQ@N_+@]]2A )JS]+:93 9>.:8%$>"(19]+^ ">DPQ. M*9D4.F/.R\H4N '@<6O_X;)>5CS?5?'OT(5O7S9GYVB5%:O[4[K"AD#?Y8_N MRX!FHY@A&ACS"H0J/CBN3&"LR"G+Y(-EE?FP":['39/JFEEFCZBR?;R93"Y2 M?'71XG[V1VJ'39QM<].O+U!*LW^M;;,M5D3U3[EQM=I#6(<\Y&6D^ N!!0+D:"4=&#)3%* MF5T4;D],NP/E=TFT6EI;YIG:E6?/XW]=3+KB%4X^-L]CG"K#C?YPP_AF_-*= M#SLWFB+WMY&_3RBZR;!+'U+[:1C2;*KO4VA.9BJ=SGK@N6/22@56!10GCQ1L MD@X2$9XJ:G4BH3(K^Y[3X^;P43%BF?&ZWTV\_/'=>0$[^>5+:L,0YS@0P5&6 MF8=L!.X%W!'T6@T!JG2,2FH==6T.;X_R<;.R9ZTM\\STNH.O!)R9HSH8#C$3 M"\*)#)Y:#\1$)[FR,K'ZD=HM07Z7+*NDLV62V2HD>Y_.+]IP6I;CYV-<;[MA MN^HM&;# 4T!(8*/+Z#TQ SXK"SY%IX6PU+O:<8YM\'T'U.I#4RO"I+L'RS<" M.]O.L\XY2JM!11-1*)F!4UGCGAZ2XAS=)UT[6K(%O!^D>HB>5G"J3NS]?8HI MG:7XKGWI1J.5W+>>LK)J@J8IE165@HO4@!0R*Z;16;_5YDWSF+MM?."A+M MG =X-?PTC&D<)^B_GC4S>;QTD].!XC$$D1/PE,HJ&7'3%=2#Y)+SQ*SWO/;J MLP[+XR9*%0VLH,;N0?ZEI+4A-%.'TTQ1!1 LD%*3:7$CM21S-/+16MMOH4"5 MS'?V)'))!-"D4-#!4#"!.U#$6RI^=RAX^NC\* V4U@Z],=12S$A+ M)HL[ABM,9$XJ-'DX\_5CX-<15'QIK]6:]E[,LX,85Y5I/)E5#OXUC!JT2G]^ MVK47Z>J7S;A+7[I?1M,!?WXZ22?EFVI,F!&K!":;<8EB/O\RG R4)(:):'"O MP6T&A4/ 96D!UQB9D[0ITOI>RAV *O+DCOK?.WCS $6OX\S. N^ATN<6IE?3 M#7 C4(-;%WOSWJQY15/ 7.4_70S\;@'@,_^M'$VB+AOSV[)2OTE/]\R)&U]^E3 M&E_@AT,:?BI>T\2-XTMT8EL7NN>32>K*+]X.G1^.<* TF?^#5^5]&$T>_3D-(:3,#6[7!"15.+G$.90C@!"=UUE'HG2J MO1IM .M0P==Z%&CZ544/'M@]$!?VY08@>PK0;@3P, ';ZNK=CCX[Z.9@1"+! M".=P?9:L%!AH8L!H)D#:Z?8:E,.]Q\&<;E?3!FSFX-L7GW1\- M2O/-&($O?,ZR=^N(\X]!(SJ:*1AI$QAT.KV,$5U14YLP=R+:OXG<@QIO$Z6> M#GHPB:^A>_ A2Q)",*AA4Y+5RXF9_6X,EI+=/0LJ=IQPK5@'CDO=I#\ MVD7C<*&@YR$T%^-N: ;*!F8D#8FYZN63J_Q M8I3>Y1LRF H !?%Z.$8RH[5X!7H6W4++W7I-41"FY/]C$ A;*- Y$A>C4NA^ MUJZ_?!C4?06;]\*A?:CK6.+1F\[PQ>6UV>*SI^$/&2CUQGEPI1^!L#F#8]P M;LO1F^"$#;7/QNZ"]V#EP_O@TYIUL'>]]E)W=!W1W%/>!%-/0>Y5> X3T]Z? M5I=RM954LB^ZY,B=H-H""Z)7!\72[;1 M1#\1[)B6K<)YI(P3+D-2#!=6ZW")-0F\% RHYS%K9XRJ?@[_3D#[M\IWU]ER M6+*2P"LZ]"42M\(W* W(T.N.P''SBO@JH*]4]7@WDD&TV49="K"BPLW=60E>H8,ADB0Y6"D# MK^VP;03L$*O>07BWI@:RHMIZB(+O+*M9$PLZ<-)3HH,'J[G Y1Z_\XRCJ6FD M9-F8Z$7]DR-UL/]@Z#Z5WXN7N.,\9C&9Z$2V^-*!2V)JOZ)[5$(TUN;HGU>S$0 MT G?9Z:M1Y?@V!A_8P:'"OL>@H*UWX*'4^&(W;4!W:O#-J '<]ENS_2'T_;# M:?OAM/UPVGXX;3\8^L-I^^&T/3;:'MIIJV;;SK.U;O1FFCR97BRR0Q'\78_; MT3;=&&FMRWJOBFD^X2!%X:^;]H,;I0\I7+13\_>*C5DYX[U3$$+(N/5Z#I88 M 899[7-@+*?J#8VW ;AS^=:M(5XEWUT-\_RL:;OA_Y0+9R;="S=!%RY[EGU@ M* OJ\8N3%!POIHFUU. ?692Z=LG6EA@/<,EO;YQ:*LOJ4U]]-#RXB>\6^N?C M^(\TBA^;WUQ7/G+Y.9@RB$G82@#RR.! MK"5.42M&9>U*BVK@'S,C#Z/A'FS%*A.97K=JF6!1A02$XFP$.FQ@O>:0\$6T M(7EA?>V(9S7P/ZA:6\-]M%=;*ZB;4QR@I4IT(AJX=J+<^(QF-?4*6*92!./* M^]7S;KT.VV,F6B_ZZ>%BYKM?B)DS%!15VF8#61B)JW)RX#+^Z"3CFN@<8_76 M5AO VEO']R-9G+;7Q;%D$U?X=[,Z8262TBP!-;I8IUJ!"<*"9]$YIIU*K+8C ML0;*P1H3U=9X4U_R/;8$*47ELV8&TS#,JCA *2B=K/[3X@C!!G/IJW51Q7D< MYC1(%8*L:2IQ,.T>.V.%=M*)H"%;7GIK:)R.EZHPK94A, 9HGNK0/-N % M#PC.1\>RT>EV 7ZC+.:WY"87I5W2^'VQV\K]>OB!WYL2'IC]. VZ7G,(&"5! M,=2TEQ&$4A2<#@JXDJ10*NM4^Q*SJA/8=>?\K1FGR]]<^V?J7E_@^_"\>^G: M]A+'F=U(J$J?NT0D>KW,@+",@@W"@S94JJ"MQK]7EL\]D/:_AAV.<;>WQ)K: MZB&7\&;\*4VZZ1+P56:OAI/BS**(!H$B($MQYL'BS+5$OYL*!\9E3TDFQ*;: ML:Z[$7W/5*JHJQX,^C?C+K6([SWNTZ]2._PTC?)>[YS6?44]T#&6GM/(=59N MV4R)H/=M"'@;@B%&6)IKM^7>!M_WS;*>]-A#S'XEOH&U"J<&5RK03R/;-H=\WT$)JO(9Y9"#$KF9(RZ!H;4^YU21$\M0)] M&T&-#UZ@V([0!MUKF/]XR'@8O1]-LF Q^Q>77[_]QS"UB.ST\FWZE$;3N(\@ M5%HT%,#R)$I!M"UW) 90G+K@ ^.F^@4'FR$[5"KA0*Q9Q]UZVNO!^/L*;2Z7 MFT;J5[R+H- &8'M*,&P%]$ 9A!XTOHY4O:GKX!SC@N.&(3/DDMH3MMR\YG(& MPX).$?\B0^T3$D? K?MB_L=&K6VTU">EWHS/+[K)5 )T'E^6+$OJ'04O4NFY MA0:K#5X#=3;(2+A0OK?]&P5-#:'YJ6G4;($U@2T M2'/@"$UGH#XYYP.^(Z1V1>(=<+XW@CQ$"[T4N"[\W*MDROOAY,_I.DIL="(9 M"5)%CW,N=E_IW<<4%TQK]%I"_3*O]7B^;T.ZFJ9ZC6,M#I!?:_NV";:>K.6[ M;%1BC=LE1%8 Q@T:;" $\$PYL2;J+;!%^[>:J^Z?' M/?;M8=BQC>3[,&*;-@U/QK]\":=N?%)*'3^[-LZWQVB,XE9%,+X<52J-09Q@ M#G2YXUH0J72HG6BY"\\!;LNMIKG;1DDML?=@MKYLSLZ:..PNWYT7Z2XN)8M4 MF\#+B;52&$^%PMD: LRYI#+5G%3O#+\2R",BP>Z"[CD3^^&S.Y^C$CY9S7&> M.B:.G*0&45D%3L;(I(^*Y]IIL=5('I'^*XAZK3FYC]JTC^E+=^%&-['L7*&V M>&I_=6HK<5>J5KLBRY4W>Y6'XDDF2E@&F5QIPAP-N(1?A$R1V\RHL]4O%+\+ M4#V;\O>FJ,>-GI^59M$#R_%5$$'A'"7Z6L)D\(IPB,(;D:2F,=*)^BOOTH3 MM(O<5>L/JY7 =3"#7\,/!)-'TMZ M?'DN4V^1*Y6T-!0M>(56 2_]E031P+1,+ M6KK&K3-K52 X>M3LP39KJZNK! MY%Y&M0A[;X"KI^#=.DR'"=S5T-N]5-A!Z/LD1<;-W3NI0 6-[D'"+\Y["EQF MZH(AFI':Q]7V2X9[PG3[Y,(VLNXE9#L#E.+SR1SCE3>SN'XGAZ2"+"?P0I 2F7#@E:00-6/4NDAHCTCDI[CG?=:6K?1-P6AWE83&I MV6$)Q*Z+R.*![YO1:+ZZ#8BAN'11 B1&G!>U$;P+&9(RGC&2NK8"QOX7 MD-TT?'O5V%6R/1@1"T@#XIU0&M= 5\HKA P,K#81$@L\>*9\,+7MQL78AU/K M@Q6Q1K%;2;&'_7^!8VZCO+QHVS0.E]-^4:-I0*6TG)[V\O4L<4>=!=SLRAW2 M02%2*X F0VTB23->^VS$YN@>#R,J:Z)B$&K:P^OKM),;C>;QN<$T.^W1D9$B M.A!,"RC-(L XHA2W5J%,[K,*UC[]VU5M'8'UT#3AZ^IC34 +TU&@I66#4"J# M]S9!9);D2(E3HG8L:/4:OOT*+BPD*9S+Y,'ON9!KG"PDGI+*% MR#.ZWA[);VWYD>BHO>"&^=IE?W<".E0>IHK&;[.HFN1[,'KF6.9>_29@>DJ; MW !RF#Q)147=IL#.4NY=]3*D3(2P@&9(*>HWTX.F ;=A;8@W-'M>NQYV#RJ_ M)_>Q+XUO(]S:O7Y1@*?#+H7NHG6CUZTK-]C-T2W.KH>F-R%6#$4LH_MUY":+)L*&YRRR-:"5*U )&$@(\"1N)D8QDMKUFKXWP.!3Z4)'U^JK.>E.GR4V:::H4+7>^9%N*R+QD MX$O#"!V,X7J,KQWHY(^!(=6YGDWQ/\O,J(*,95+ M8"3W$1UAZ\$J=$!S$BS3Y*.F="/5KAG@F]5G#8&MC1P<,F-T"UUO*2-Z@)S1 MK;G5:K5>H*>WPT\IWA[WRN4GR>9L,@=.G 5!:(:2K03GB:^ML[;#')K@J MW(JT;HS?4_?<3Z8YV@%5Q%(G..A,:;G"4X)+.8*VFA/K,I.V>M^>C9 =H(5/ M;;:LN"ZIMDKZJ'59C_+7M@31"6$Z<6J ECU0H*<#EE,)*FL2N4M6T]KWI-Z' MZ:C(\F!=;DZ7[1711ZN-]?B>AS"[VC+%^8W!L^@]>C5"$6<@1ED,*8?[>:8! MF$+?.0?ELJP=-=\>Y?=&IAK*ZJ%B^P[$&V3ZB+1,\>31,3,)1#+3K),#CZ:\ ML2BHX/:XKQUC&O:PI*NLPC[ZH]\IGX&DSF>.[F#TI;=)0J??:?PN![00B$_1 M5;^U]&Y$WQN#ME7",D7$[G7ALL2YURA*ED'4YJ:[S M]'*(!)PGHVB*Q/O:M5W;8CPJ&M6QNWM54R_'#>[$N\'220.^%=HYH,E-&R]I ML(P(0%D)Z8IY:,5^>?:-[8![(5YE1=:./%ZA'VWTVN""W.3N:A(N_M?%_(:F M@4[:,Y0D9)H8+M0!]W+C(N#;E V12L5X:^%;$ZVL".H1$>Z@^NK!]EKI[RZO MT]8HKIQT$ 53Y520!4LE!4(=3<*2'%CMMB2;(7M$U.I1)14MLOD+L)ECR[+/ M1A.*CFTYINBL!R]Y L]C:3)E371AP\7HVPLH5%EHZLMYF0NR*A?6[[4#%EE( M/&>(.>):QP3*@:&?F7E2U)?R#6\>1(?U8SYV1E22]C(I5.V=!3?!Y47,).6Y M%@12%M/J# .&E)5,TYR"ML\%,;Q83A M%EP0#D0T#(S4Y=91&0VG0G%9.S6R.;J]7777-VEZ4LBQU%[?,:D7E[^Y_VK: MEZ4":5ITZ 4CWD0%BA@-@ON NZO,X*A&&]V6*S^J7_^].;S#UV77)M2NNV@'NA:NKY4OSG%JNGM*.A&DHC<0-26@* D M@E=H%"JOF+5>,L%KMTTX"IK==T/=T;)L1T>+XH MR"VMH:,6I:POE[LFC"@WXY:K)[CFEN9@7>VSU7? .2J+?7=5WN[,44D//10Q MH<<9TYEK_US@X5HJP8/$>7*%>)@&I\HE>H:Y0(705-?.O-W&\+C)L)/$]Y]$ M6UH_8U+"46I QQQ ,"?!4$] )9Y33);E5/M,XY80'[DUW:?">BA/N@?NRO=K M$\@]6=4/@'L8R[I7&FQ'N6HZW/_RMA(ZOITQD'*:/94N7(9G,-F4IER:&YX2 M]W3/U2='8VD?.^NV45T/;+O:W)^/X_2'@FVQTSOT%DFE MXT8ENOTNOVQ3'':O72AW^EY>1;Q5\ R7!0HYDM+0'[_SCBE<092UP28K6>U0 M[9V =ET35CW\-_=E>'9Q]J)IV^;S<'SRTIWC7[K+ ?-9)!'0!2A].M$P3. # M=>"DM((+@2ZAV\/DU^';_XI1CRNWUX;>]-*#FWX=ZR"$R ,OI2..H,/HC 2K M%*YB65&598J6UZZHOC[^8^7 5G+MP79XVXQ//J;VK*R^ \UT"I9[X*'T<79< M@"<\@)8RY4@I9]5OX+T^_J/2\4/EVHLS/.O:_8<;QH'1-'(>T-[@:(.(P$M/ M9I9!*.]S-H9H7C^21ED8 MB=.V4J&-FT(VD3#*:A_UVP[A8^))C[KIX=C,*K2S^*&)+GMA#.2<-0@I(EA; MNJN$D"TN<#JR?9B)>RV7V2\KMI?SH!00?E*NFUJR[BB 3D% M->/.=4B+"X,V +5-+/T^ JP#LM\H>45%-7U)>6\4D,2IY!(!3\L!86DU6$\T M)*.D)8H+O]E5RL>E^C61ZGUK?AOA5M1X*-=_MY>#E\\'4GB&BU:YVX67&+NQ M8&Q$GP8!H.%KM)-WE7),4OCII/GT;/[$F8;G/UPI^&J\_=F#%07?["2U/B(Z MZ)5V, MTP+6BV8<%_GJC#:.*W:KS"43+A4'P[('9U4*WBI*-^Q2>\] W[2:JTNRCQ4_ M=3C;A:GSM>^JU43CDD:CQLFB60H^*YQL5B%&_%;73^NMP/%-*[^:@/N_"K%< MUSB<=9%PXUCN@L0E"7]Z.W2^\'68%CU?;\6,-BL'V>;Q.Y:+/'@FEO\4WZ/7W^S;5_3@N+O\S8/CU$[L+T$+E!L\@1IM&KS3AY6WQD9C(P M*VPB!%UDM>&U6=L-?(C*LEHDN'FW5H\"[R&J\"KEU"*HE\VDF\RZ"G3/Q_'W M9AQF/PQXDEQHED!)1 M_BS8EA6)W%L"BFI?O.Q8:F04&!Y-5,0)7;W1^UHP^THN][<@U)'SH9/+4VJ7 M*JKA>'J$\97K9B$9ADPE/DN@QC@0)0"/O_$0G0V!!45P']QHH5CQ\$/%H2NI MK*DHNMH;P2T\4ZXK]#ESO(;C]:E3H2=*$S6.X$;C39 M@8W*@0I9R:RL('ZSO7R/VEP3'=Z7,K<16?7KJBY.+B8=2E_.XQ;>ZTBG-:N, M^7)]@0'T)C)0J8QA227T,C;2W^TG[\_FJB7JII:<:H=N/Z3S;HKB&AZE3,XT M,/".<)R92CA'C2:_]C1RIVF4;B.]K7CXMZVZ7:6U]I6K%IW[<.K:],)-BB-W M=HZKTFSN#S^>=?<#=XS ;8&V4LQM]8C/6_1T3F97?UY>?>0/=UE^];Q<C/]([;") Z)=#-XI0"'C8I@]!Q,% M"EM3)GAPSHCJ%\_N:6X'N'%OOVQ?ZN-WC*3I(7JYKWG^.PU/3DL3WD^I=2=I M^L>RK;UVP_9?;G2!?EXBDALB06F-.ULLA?_&>6"1*Z:DXYX?S=I4>_(_7J]O M@G8]I*6O&MC<*Y+).IG,XB3,A! -4T"(Q8E8QL%3JH&PY'AB-'%:.Y==#?R^ M0HZ'9OU!E'WH..9B]C/XB[HR2CTER4601!GT'''+\ZS4&S@EC0C$F.H1[QL M#M^Q:J\<:&KIHH\U\,&"N)K&./XQW]Q0R'SEMMU%M+_7/ M:#P/ UK%'[HF_#F/!4;JG9%4@.6Q7(Z#%HXGDI7#O$19HX05M8M45@(Y0E>H M=QTO54OOJJ > @7H3^6F/7/CD*;"6)3U4J\=OE@..!K :(50#]Z6< 9GSF7) M=(ZUZ^770/G!G"I*.G"@_R-Z'A=N=!--A7C_XKE]AOU78C^>Z#\3VAKA T0M M:-D(T76528&A0F0:G**;G4E^!-'_@2R=IZ*PZ#SA:R'*[;^NW--+LM""2V&8 MK;ULK49RA*M6729M9E)MI9 >MK=?<(%I+E/ZD-I/P_GJN03R]V;\"??F-%N^ M)Q^;SHVN_[T4H/[>=/\W=>4PS,EX^#^XA7]]TNP?W8Y7#G#:3D270 =5RI>E M!R,(RB'H3'5TQJK:]^$>;++?'=F_#5KUX&3T-O%97/]UT\Y_53Y'!UQ(QQ4- MP)@G)1;F ,UA!32B>8!K1Q:A=D>O_<[PQYMS/ 3JH3*\OWS8OZ;R6>3#IA*Z M2GXY%DQIPPA,*5E.^26PN!%##.AH&ND)R=7O!#S(3+^[U^<;(%0/?2 K)E>4 MEU82#BDGG @I]X9$B*'T39QYE-)28YA5, F;,! MX3D!2ZT%]*A,DK[,)E2FZV/+IF[#@3NSJ=OHXEO)1FTRIQ_9U*VRJ5O19!]I MJ8?H^%OAKW/!*-LZC8*6AMNKI<1 MF]F$;\;3[-VNQU[6/FS7W-=F*&LEO&:CO4_G35M.!%\;]LI_,(2:I'$-HH&6 M.V*\ ^\%!RY)3)1%*7/M*L)-<.V\!ZX?XX^VRZ03!!JJ 4 MY!04.E&$(9>)@L2382HYH3?K,UY'",L #[ (U>;.TD[6FX)ZR&V]3Y_2^"*5 M5CKE='V!].]A=[JX(OF7+V%T$7$2Y4(X_ \=HB\#'HGQ$M='GH4 @0LM.$]Q MU^?:2/3:HW'U-["M81X5LW95_'+/Q%ZUUH,M] X]=S>32NGF4$0Q,(Y')2,' MQH0'87.8=MT!Y@QWZ%A'8VLO3BM@/&:B["KU/M(95V&9]6) .W#VQUD 1N@L MH[0&*/5HXS&=P1O-0"-N&K6+/;AHV\/<6VRU]QVL9Q4=2YSTZ[T$+RXF*+C) M9#ZCV5VYS@0GI!.0>>"X8*9RAH(I"!:= !N$R+RZ_7@7H".(H_;#AMOLJZ:5 M/B)0,RP+WW,#,'V%/J\#.4S,LJ*B5IO0.TBY=]53S[F7S"$HBZ"2,B4[A2NM MU$G:*(A,M2^/WH/*[PGW[4OCVPBW>K^?-IP.NQ2ZB]:-7K?N#!>Z.;IY?"@8 M5JZFR:!2.>8I,BYN(0K@WEC+$O'9WJJ57=< Z+ZA#F::/D0/36]"K-T=Z :Z M7\O]YHN6U)$H1A1"23J@T:0E@L)=TGBGDE)2$N*WU^RU$1Z'0A\JLEY?U7DQ MV.0FS1SS-+EL(9M<+A&F%,W@@I;D4M9E$\MQ>XVN'.MQZ'9W,5;T&:?PWKKV M)'T(#BW0\ZY<.#7'9!+W2NGIQ2,29VED\8LY)(FN3Y N:+[9R[IF@&]6GS4$ MUD,!ULNF1;^A= @1><0U?C6AQJ<@&F"K>AKH.Q_XO0ZVAHSM5 MOH. *YII=V(SG"B):Q @R7DI" [@>&D7*Q,CY2;!Z#:*ZAZ5TN^X!G5?.M]& MKGUF>A;!@87YD:/RP1)$E"B(D GN1()!2A'W(<,S$;UE>VY"V>^5J77TM"ZQ MLX.0>T@GOQEWJ9U'YW\9#1=-:A='S05C+JIRF5LN3/<2K.89(F?&2D\,9[DR M ^X$] AX4$_@M<_VW[C,.(7X[&L-U[OQZ/+^XJ65ER*7Y\RT'N*5LF\^>:M* MIFU0[NNT_D.*/RM'FGNO3ZU43/FC3G);AFQ4 MF#0[@8;UV#EKJ*?-1M8-:I M\A[1+BM3WKG SW]=OG@$]_>__']02P,$% @ %G,C6()-?<&:P & L( M !4 !A<&]G+3(P,C,Q,3(U7VQA8BYX;6S/+9' VHO$X@:PL?>__*^?#TOPQ,LJ+U;_^@?_C]X? %_1@N6KNW_]PU^_ M?X3I'_[7O_VW__8O_Q>$_^?MU\_@?4'7#WQ5@WWX/ZGH-_+\J_ MYT\8W"YQ+8KR <)_:VY[5SP^E_G=?0T"+T";RS:_+?\4A(PCG#(H* D@PDS ME% ",46A\+C/69)=W?W)$_*G42:@2),$(L9#2'@60"I2+PN2$/$X;AI=YJN_ M_TG]07#%@31O537__-<_W-?UXY]^_?7'CQ]__$G*Y1^+\N[7P//"7S=7_Z&[ M_.?!]3_"YFH_R[)?F]]N+ZWR8Q?*9OU?_\]OG[_1>_Z 8;ZJ:KRBJH,J_U/5 M_/!S07'=L'X6%SAYA?H7W%P&U8^@'\#0_^//BOWAW_X; "T=9;'D7[D ZK]_ M_?KI9)?9K^J*7U?\3CW;6U[F!?M6X[+^C E?2O1-:_7S(__7/U3YP^.2;WYV M7W)QO-EE6>ZUJE!F"J4?*Y3__51GOUX WQ'>^A"K W"-N5]<81SB](LSN-^E M0O#Q ?>ZN1AR^T)]6+&IWMUM5Q=#'Q^QJ]>BJ/%R@M=BUTT/\E+]X+/\6]>- M:FA 3)M^.NGN0>4_:[YBO%7+O:9!SO[U#_)OBW4%[S!^7'RK"_KWZ\?'DM.\ MD>ZOZK-6?;O^^NTW_D!XN:BW[^^"K^!?OVVZ:MHS;.P/!F;5)X9GR:MB7=+= MA^UA>>QK)3]4ZM.6_KK"#[QZQ-T-$K;R EI+_JT!#/J(00L9O)&@JU_^Y=>= MJ2ZX7$Y/X_)U&02_MY#_WY-4%G0/W%*Y$$7YDIZ"FM.S&Z.5M*SA1N"*-,9U MC4FB@O!7OJRKS4^@^DDS4/7[^_7@W;@N-U;ADIYY3-T5O])">E./-=Q[8J(L M'BS-KPO+UZI]$!+6'T!1,EY*'_J(B0>O__5R6?Q0'N''HGQ?K$DMULMK2HOU MJJZ^S+,$!QQEBX.O MZ-GA8XI#:S3IN0XN1]9[SM94/:8*J)< X(U95T"Z;*"0W[6M"68Z9?R@]&1K M%-ZG4;$-3+##>06V]@ Y]5-S0Y;7X'-155>@,^+9G:C9DN=(XXR[GU3R;,EY MJ8#6[9@)(J=L<8N?_U9)'UJM&J@>W^<571;5NN32N^.?:OYP;EAIMC*C4231 M@J<*]/""'6#PNX(,&LP.G %#=HX,DXK3/]X53[_*EKH10MEN8.BV/\DX,#1V M\]J;WF;WV5?MW(A6'C]BFB_S^ODW_#-_6#^\+Y.QT@[U!?@4V5&_!@W?GJ#;^BMMPYN@+;M3U MI%]O&U)>?KFMVK#3LT\K6G)<\?>\_>^GUDAK_'RFE1UB6F]8$%$ M8Q%PF#%*(2+<@ZE("$S\./*C$),D2LS43+_S^6G9NWOY+UZ!? 6*#6B JXI+ MOQJO&%CFF*@')QVK/YFIF\$CT=.V<6@>6=DVH,&;#>Q?%-=;Y*"##G[?@'>X MZ&+.F"-=,^AX4E4S)^2EIEFT8#X/^>N*EL^>.[[/5ZQ6[EN_-%ODWOBP>1Y+F-%VT@@@YZ95#5*@H(+?6X2G/]K3 M/4G-?:I7?CYC+PH;/!KS3:P1N7.U[S4&Q&FWRD8D^6!W;_@TOUUS7X3MQ^]S44P$##3(YT52K/@UDH##K>W>GJ#KOUCE@:1(- MV[$"=HRY<=W.4&#ELYUJ >F;ADKH#-34@ZN]3.;F?9WC;6SK8KL+$.M.8IU>D;V$R-I(EF M7IRS!Z[GN;W&8QQ9Z29\@L;.GFNZ'3EXSF!-ZM2Y)O.E(^>\?=M/P&/K(U:R M]?NBK+_S\N$])_6"4,%QE' 8^GX$D4QPIO%1 M6[R@6 $F<9HJ[BE^=27T$KJFTL0-QD;C%$JH8(+W0W19R-L9*ISIU:E^)A:@ M,^8>*LJY&^PD0C6QB^?XSG_6;R7.OR]8B%+?#SW(8XX@\M6*G,\2&$24)E&: M9#&G9MN2)WJ:WQ[DX(MM1**>"C@@9F0-4 CWPK 42-"@=+B<=88'1P)PJI=) MA_\94U\._G.76Z[?U_(SJR1%*HH*Z[XOEO+FZL-_K?/Z>;L9'B?*5U"S/Y:% M4@@"*011YD$OHG',4,A]WS<[WZ'1Z]RF=EO0S3>P!_M_@A:XSG[Y!0]!;S8)NA32_&9+UP]R,IK_@S- BZJ^ G=E455@O2HY7C8_ MOL/YJ@O>E+_AU57S=U[5^4.3*$.HW:0GM>'1K##DJR?YNW;! 6\X:DY/59(E M0^?JTA= T^^:\*&.[9)UIJ@GL34&2O:A,@?L[ '[!LDI8?.<1ID8NN+7E3-W M*9QI_3Q'Y!VX@*[:-=-V_%C<+51T!%[)#MYB^O=E5+]MT"*K[:H%\EJDL M.3!(/0(1C@C$,4ZAGX4!]5$49XE6$(-&7W/S#+=H00<7='A!78 &L9Z"ZM \ M+(Z.R1M9]Z;DC76IHII!,15_>YU.P2/I>"QW/*H/>/7'R[\+!M2TDJ]N:'3< M]X.HT7*=)B:1:0-;-@ILPJO&1C5G>)FA&]^.'^'>^*59VOUFK]HCO@4ZQ.?Y*,/>P1 MGY CIWL,A)/ZX2-2_-(U'[,K\RCBWU:/N=J\^IX_<":G".K+]3>\_+C$=[J1 MQ --S$VS?_MR^ZF_5=I ;I._]$*ZST3/&G$XK,$.Z1M91TV8 [\K\(Y2@&C0 M8Q6"/-3N9&'(&L;U0Y%U+K?S*7LA<,T1AFJSD1.CT ^P@#1!$41)&D#"DPRF M@9\EB&YY88,OU-K$%_YH]HS6-UMXQLRYJ,HP"D,>(*D"# .,0DQ MC(4(8^833C*C(P:G.IJ;"G0XP1:H?1S)*6HUMS <$#;VUH0-5^9[#6>(<+6' M<*J;:?<&SAA[L.9_[GK+I)]=^KQ;_*RV"-ZMRU+VLHA\$6>AET""T@PBGR90 M>@0!S!#UXHRE@B-B(@K'NYF;)&S32#ZV, W3WS(5^WT52'6S%QUBJ;S$_X+&1IY% ^3([_J$JZCJ?T $593^F/M M33:5'S"F/X4?NLSN^_RE6&V3L7U:T>*!JZ-KJXHO1$PR/PSEO#TF#")!" MQC!F[R!_$N38]OL\WV::;TO M^&7$33/\^QA!"Q*\Z6">+I9@_"$_2X6C;_GI?B;]G)\U]^47_?P-YA_U3ZLJ MEU=^+[&JDW5;+'.:\^JV+.AG@X35&JW,Z'7NT((.+MC@;?;T%&C.ULWJU6?7 MJ:L->++ZV.FT/]G'S\#8_L?0Y#8+)W:]Y+Y'(O^ZE%T\K&IFLJMU_.[9N;(J M&E3!A#[H92("WSN_C6MFJ1C@2\.AO9BJL7W:LRPYW;(:YL/.M3W>Y'3>[:!) M>P[N\)46\:2?5HR+?)77?)D_?C#3[I<*_WX)%\3,S\($)YEV M\*E#8'/3E9UIL+$-[(P#K77**^SL QL#I5/]I2UPU MG^7H[L__GQZC06CN*SW.B>)XIWZL9K&_(W _&"CLLK_IHHI'8&DO!'F,]BV3 MF.05OKLK>9M7Z49TZ9=VDTX<(A'PT(-AZL50_CV F&0(BC"),T$SSE-JLI5T MKL.Y?6SW\:H!VB'6FY;:D:ZW9.62RI&_=1>R:)X019,:5YE1SG4W;8H43>,/ MGG<'1RVVLH9;G)NB]#=QF(0.5D4-RA;\ M^=*&EU!KMOWECM4I=\44H1(V^/J"4,>9E^S(NGCG[$PWK[*AIF?ZJ7TVS;LO M36.P\:2:D[2+4+ X"2(.DQ1+IX80!K,P(1#Q@ =(9(RE9IF9COHZ+ [I&EI3^87YMIBXXG7^4!^>'[O=[>:6S]$=-/7U$ M_OCE[FIE]F8Z).$$RZD-8P&%"*-W& M"R8YPV3K"84S"D>6BXO8-]3O&RB3$+42I)1"FD/)8RPAB"64(1)&GDA32.$QHE.C(RV,O(*UZSH$KJD;?YMMP-'X>:!U*W!6&/=W5U*5@SQI]I/CK^7M<%;!6 M&2C469]_S^O[=^NJECV7G[MJS,\+',NI1<@HY*D4$D2DJY"E,899B!(2AAX5 MZ<55K <1S$]6-G#[-:LO+5D]_!"T%6KCW5ZYEK47-^8+6>LW8KJ5LAV9WI&E[;C:2\L6%DK H8Q#A+(0$ M4Q]R(GCLI4G(<6:F:*<[FZ%XM0#MM6N 6=U5$Q=LC;YDL@6Y/8LXRK'D\VPX M6RHYV='$ZR3G##Y<)#E[AZTOU"P^-$>?/RSSS6FU3?Z2P/=C[@F(F'1Z4!B$ M$$=A !GG&<]0X/EQ9.KY#/0W/ZGHPP5\A]?8V1EB6=>U<<3T#%R MG&AQXLQ!&>IK8G=$P^Q#YT/G)CL5V99U;:/CKE>L)UB_25='SM[8S>JK2IY< MJMP**_:E6)6;?[[%55ZUVY-QP)E@C$!/.B00(1)#0DDJYUJI3WV1^(P894QR MAFQNZ[F[.L4JY6('MSF7U<=OMW?L[G'J2=NK/*219=#1\S&61.=<.I)/=[@F ME5KG=+Z49?<=6*:PVU9@?)\_Y8RO6/6N>'@H5DT-I$5 PCCQ P]2AC*(LB2! M6! *L]0/(Y$D#+-@3YF'.]0:R?N'X4<6W"U*\(ASP^K59\C54TD'A$V4 MWJY74_6F9-+1*)_!%K/*]ZM0MT71'.:[TZ+'5=J[X9'QCE M23_>S]Q\M0X6X!U<\,A+4"G AEG.3]"JIQ\.R!I9.#8(57WY-C'F%>A0.DP' M/DR#JY3>)WJ9-BWWL*D'J;7/7&Y^J."6%]^+&B]5IMWKAUKWY,"+V^8VG&\_ MW( &WW[RYNL'E45,_UC 2W*&1_&%O(S]R;>BQ"B6_X3Q5@'[+]N:+"K_A!'] MT/M3E]A]B3?!N5^+Y?)C4?[ )5N$)&"ID+X\2T@$D9\0F*$HA:D@J<]BG$4< MF:WJ'NEE?FNY_8CQNTW$.*[K,B?KNBGP5A?R$TWO 5E7^8I7%>B6R\R^TL/S6% MZF0#[XL'G*\6F8\$P32#$?$]B(3P82:R#&(:(YKB-.;<*#OUL4[F]@'?802_ MMP@-%TB/,JDWQB_E9^1!;D*-1>W@T[8[*QE\I(N)*P6?-O*P0/# M>;N=I<) M[+HLWSY_6K%V"5[3YSYV[]S&[28-72\)574%R#.0@-4BQAHO]=WOHV2=]\$O MY6GD\:M!D;L]AW-\6/GF1QN9WD45BV\?:JJ-6?OUVIM7\[# M\X(UFP/-[VX>FWWT#S]Y2?.*2T=>(!1&,84A#Q*(LHS"+",)Y&%"$D$9SK!G MD:'6&(C%8OT4F6LW^)3#7RG7/U:E=X_ZG/<]K2\_!25_KALQTD/%\(ZO?GA](L5P@ M@B,Y-0DA]J(0(I:D,$,HAG&0("*01R)/:VYRT/)<'9L6G9X\'=(U+#L7D3"1 MUW+&?FV).&GK@$J9>LO\G_73[S$=_S%XG6''R@#C%?W MSY%Z?J;AD,^1AZ];*HVF'YHD693?-#_*L-\]PQ][(,M(#>@5V\9.]0[DN(\=U2'$6.C[8 MV<2QXSJ&'P:/:]UE68*'U^UIW\]%52U"3.+(0PBFTOV'"*D8(4H"2#,?)6D: M(7TY>;Z."#*OI[)$FU3;AG'ERII2E$ 4LA*DJ M-!QF+.!9%M(D%69;NM:T3;.9ZXHXC&E* OF.A;$@$&&?0()%"$F6$!SX-,UB M9/*ILG_;IG!Y'9&F]]VQIF)L;U6RL"G-I*"YK,MTS&17M9CVVIZV_M(QLPYJ M+AV]R*)@Q1?^XS=<_IW7U7?\L\T+]5TEUL94S27>\A47>2U[6Z0B('[ 4NC% M3,@O!?=@FF048IP& 8H2AGVA78U"M]9/T?@UF#<@QC,#Q1K05G3)L543!E;+!"@G9CTY4_,+5O MK[:!\.*;##:] M0#@_2Z(PEI/1S(OD#)YE'.*,,TC"B/N<^5Q0K?R:.IW-S1W;8=VE;K*+,1RD M6&_PNR)N9!FPXLR\X(@&&:Z*C0QU-6VA$0VC#XJ,Z-QCOLOX[EX%I+%;SLL_ ME\7Z\>/*N*+(0!-STX$.*E!800/V"GPLBGI5U)J'_LYQ=GX#T1%=(X_^(:9& M* FB08K59N%0NY-M%&H8U]\DU+G<8J 7W_B2TYJS+GW!%_GTM8?XL9MG-[B+ MAT>\>@8;J*##"A18@]%]E"B-<7TI1V./:"MZS$;Q$ 5VX_=HB].-W"&#]L;L MX(6VV_F;8H>?CQ4[_ W_9U&^6^*J4GUU'FCLX9B)1$",\ M HOH FL2G84 M\_."ZKZX>BK/-_+@62(&=6L!$&H5 M0?W$<('5[1/5D]I7>TJCK^>0&NR,N0);0Z$H2JA,O0);\$"A5ZKY4?)3GXTC?W6*;5/E' MH?7E-V&<3JQS+.]]D.1BC,?)XB1)'1 MLKE>M_-SH@\+.%OJWW>#IRYY+GH.LGNV9W=-?8!;$V*9H->'*7JUFG MTZF3-AL0<21[L\G=%^_87Z]8<[;OOEC*^ZL/_[66']]ME8,,>Y0)%$,N? 01 M)1Y,.:*0Q#P3'@]CX:76]2,&NYZ?,]I#WCHL*G5:A_U_@A:]]6;_\&/04ZHQ MJ!U9JUYRV@(=N_B$%CON8P>&NWVMB (M,@;B#/3NMTPW?WJR_WE7+#AD*:$$ MPS0E J+,CR'!4JUXDM'$9UF24&:425ZCT[DY4RUF<&(I[(+2P5I/0$^>7/,Z MLC1]'%Q='*F>L E'KO*UZW0Y;2IV Q(.LJR;W'M!^I;CWVD6EI@5^#Z14K*6SQ: MY:W)W)VY.#CF+LUH3LR)M"K-:*E.Y7MBF1\PE>#)2U7A>K#+$PP##/,?4YIG")J5I]FL#^MP3EI M>9H>N$L+,?=YU5T,OY2K5RVRK,.=@W+*1S@9K7AROZ]7+I5\Q.SSA9&/W63I M9W5IWV_$R_H6JG86O5ZQKLY%D\-S%U\=^%@(HF9IH? A\F@&LXQ3&'#?0QY& M04@-HS(LD>@'2]R+*@&:IECFJ=6/[V#3=L?$?Q=@^6:^: MP;&Z.6^W3V13?:A-^PN<1M0[XM.5]V6)8EH7[#*J#ORP"YNS$U45%7$CU+9C ML]#/RZ><2K=/3I,7""(K^MPFU_<3DK T]6 D0I46,*20L Q!%@8T"QBF M8688X'2BI[D)0Y=MJ,E_L8-J5YOY-+W:4[7+21M_FF;#E\T4;9@+=].S$_U, M/34;-O?(M.S,#>:G S_\Y'3='"[&-;\KRN?KGWFE>SKPZ,US&^U;D&"#\D_Z M9P*/TS,\M)TP,_;FU@$IX'<%T=&IWD'SK7"BV,BXC2"+ @Q1()D*J]'"*,PY"2*&0F0UF%? MC;[F-K#_][J0\ZC_^[_[L??_W);*76K_GC<)KM6[O;W:H?YY'^=V?W'=U7O]53NF?.9M_^8E\UR2=8.3\H+JIB3\\UW-Y&UQV MM; 7V(]PYJNUO]B+)$U)"#,N:?)\0=,$DR"5TX;'-H2DQF4]'EDO.QF?,I7A M]BY?JG&4ILU&1VH8C#O0V]R^!MV!O!W(HIV2O]6C&GN+:/15C^1N#/D=J MZ13:I.(Z!JDOM7B4/LR7W:X9RU4X*UXB+WC:%;8.,)"(WSS] MHE-QT8*_\^MU3JD;6=>&6!LA;[4V-5:K>>=;GVQA3]O0_AJ?_DVN#A]=4UJN M.>MEO%C@@ 1>AB*8D)A#A&-U/%/X$,?""R-UGH#&AO%M9SN=G9:T" '_J4X) M7GX6Z0C->MZ4:_)&5I,3)Y,V='[6*!SDX(32:8I&.ZATI,M7/J]TFH3SQY8& M[K7P2-31V;^N6+E\OMOE+U3%XW4]D5,-S$TU)$8N0:H4=#N?W\ M[0$OEV_75;[B5;5@R.,(>0(RY <0A1F!A&8"4L%Y)(*0XC#4&>DGVI_;&&\A M@@8CV(#4&^.G&!P>W0YX&7M-V(@2[:%\QO"!02SO; >Q_,MN$)]J;Y+A>\:8 MS< ]=YGS1'-=@N#F!.R'UME5B8,_RI=CD2#B4Y%0B!GW(2)>"-,$>="+TY0% MC 38,\SW9 ?$Y%6?YN2P?*=29YGFAAZ!WB1A?%K'7UP]G8U.)5MY;"OP]*VY M:O.F*TLFR5"GP>3X.>N&0,PEBYT&409Y[71:,W=D/LLW87E[7ZSXEW5['@"G M*(ZYIW+_(JEU6$",.8><-S\V%:?"!!B!H$>K[+P?$G7=> M+J%C9-TQ8,+(;3EELI7/S= NAG MS6RLNLW,Z!W9!!'.(YP2,*4 M&T5J'>MD=I^J!J,:&K1!:9B!_AB->B[UI>2,_>':\M("'.&\V1 #KK+''^MB MVDSQ T8>9(4?NM9NG.]J5'\IVGV_=AUTP1G+TBSE,) #&R)&!$RY'T O"[%( M4D88Q7:UY_<[FMMXW^&\ ANDY]:&S9C5&_XN^!I9 FRHNJ#:_'$>G%>:?]'- M*U69/V[LZ0KS)ZZWC-=>/SXN,$+AAE3"34@Q[W MI3B$G$ L< P9I[Y',U\(8A:R?:;#N8G$!B_H (,.\17883:,X#Y'N9YJN"1R M9/6XB$/SF&Y-8ER%=9_K;MK(;DWC#X*[=>^[++Y;>C/7]6V1K^I/J^_Y ]\D MR/!]Z7&DH3H0J,Z%R+\1Y,M_>KZ79=0C(D(V$=O'NYN;Q*@YWMVJJ>N):U#= MYX\J.M,N]OH$P7J2XHZVD06E!U11UD!5H3\*[ BS$SU>' <^G^CL54*9APT_ M%9Q\YBX[);EYY"56B;4^J^BA3=#0\Q=IT+I413\6:>#A-/-BR FG]33&*9LCR\P6 M*VC 7FU#"I_5+&@#V)W.:'/C2&K.]S>IVFB;_U)P]&^TC61^XE7=')EXM\15 ME8N0L^2_?+SHV92=T&KLV#M"Z!, M',1].6F'P=T.VKPX^]/[-?]>_"TOELW,]4;\I7C@[]1:6?G\&?\PB 4W;7=N MCN#+3$F K9OJ>%L;E(XJ*T!G!I!V7!DM@5O1?WY;?4SF1Q;'<4B_)'65-GLN MDEJ=[^RUTEUITS"0"$N_#>MU,L8?)RS.L7)O=09C=/ '3C'F_Z=[1U!9F@WR88;T1[XRUD8?_#F?_ -N8DRDM M9AP)Q'!?DZJ%EMDOI4/O)CL=Z8K!5C?B/2>UJAJJ-N94"9IJD=*0HA2GT$M5 MQ X- TB83R -/!3Y#(=I$FXJ=W[7=PX&NM0:$OO%.[]/X"YL$ /I5C.)&>0= MZ&8!R5!7AAC74Y5+"9Q&4W:D":!P@@U0\&Z0-&,IT:##D9 ,]32IC&B8_%)$ M=&XQDQ#\6-QM$SI>KUCC5']BLI-@Q-E%7C3V?0+^'UC MEF9FM8L?Y+!L3?EP1M:T?ZJGP@K:^+UMN-<HHF>4M%.]?M/:3?O![@Q MZ8^7?XQ?']X.H^01=W/XDWR=7+&P^7L[:LSRSDJ_X)CC^(Z;- M=F];T8]B'V5^C&'F>1Y$42 _79P$\DLFO)![0>I'@='!E5,]S6WE3 'MG='8 M8+6KF'B:7SU'V EK(W\R; DS/]QRC@Q7)UQ.]C/M,9=SYAZ<=3E[@V4FBJ+D M^=WJPT]Z+Y\[E_]4IQR[A>$@]1"F60R13SPUA?-5\QSF[+@JUI_>^X+/&J?F[RU.'E B.$LPS',,T\'Z(X\" 1 MH50.C\1>S%/,.34ORS+#-9/16UZ*KKB@0K(Y9&'KTB@TP&MP9+5P!YJ=[(!KF%< M?Z#K7.ZJ*("*&5_)QZ+2U"/B>Q[-0IB)F$#D^W*2Y=-()0$-?)Z%S/?()JY! MS\B!N[0*0)]7/9?^->^_#G<.\OT?X62T1/_]OEXYP_\1 ML\^G]C]VDYUN;(Z0_'M>W[];5W7QP,MF8^D+K]]M#OZRV(LBG,$LQ"%$2>I! M$HH$1@&*@R#+XHP9Y3'2Z'-N7L8&_I-^K#7M,Z?6L=I$_(AO) $W.I=T)+YTLVG M524[*>4T\;98YE0V*ONE7XKZFA6/3>BW8?U'[0;GYG!UP,%F]6(#OXEP4S9P MMI;]J:2)H+-%?]E'G^;SBT"C,#SZ1,^8W!&J2!HS9[5,I-_+9(M&QH;WEY#, M;[;SQ:Y7=<[RY5IEQMPM6'WX29=K*8,?I4$J:_:Z[@[L?L"EVJ6N;GGY[1ZK M)>PF46L81YCC+(""XA0BA#!,"14PB+! \@\4$J,$=$Y0S4WKOM7R<0&LXBPJ MP#M;@'IG0'W/ <5+NMX=<>>=36J+&E3**D XQ>N*-U=S(;B:73S[NCY MDY._$2-K<]^>_C+]A[WWHF=34W)@\TY(LT!CE[M-N5&(=N2&NL$TJ6?JE,:7 MSJK;QBT_'$IF5''TZY]YM>!9%#*2<3?8CF=[5>GZ6T3OWW>7=(=IFSZ__!?Z[Q^[J49:.(7ODM7XN91 M-5']6<4;59]6MTT0W2*+,$D"&L&(9JJX*)5.(/9]Z$<1QY'GH]@C1JG.)P(^ M-WEIC (M1K4Q=VL1HSC90]>3KSD^RI&5L;$'-@;MEX7J6:V6%?O7=9:WY:2N M0&M\/]%'=S2S<><[ J[TWQ3S5/ 3/S97*>6G@CUM:OJ)'\9!BONI^S>O%/F^ M.X;[O]>XK%7A\J_\L2CK11 %(<<\AF$88(@RY$/B!SZ,/$("XN&8"U^W8.2) M/N;V$=G !%NHYJ29PBP*BUYJLW)*DR>,:I? M:/+S(KUJ7#6MTUE?RV>Y0$1R)-D( TC2.(>)9!$B(/BL 3 M7D 1$;YON%VLV_?\=HD[Z)O-2L.TSOJD:VX,CT'DV/O!'8.[C5^U@[*%W1;V M'&<'V)0M5QN_VOU.N]]K2L?!-J]Q [9QNE+V9!==%>P%EJ+CD]2#U!-J?0P3 MF"HW)/(CI X]\C0USF*_U\/\9&<#$/ 6X158<<.J/"]9U%.8"Y@9?4.VHZ2# MYC+.]JC-SB)K]UN?.);VJ&F'T;/'+[,\P_SPN"R>.?_&RZ><\N-S'RDF2D8X M:Z8YU?>BQLO^[U4.LB]%_1^\WI6HVK74WO1R+K1(:>('@C H4B^&B(0^3 /! M(4XP"L*0I#[C9DKQ:K;,3Y,:L\!Z5>Y*AM'^VDQ3-J/DRZ9@1EV U8:5=H/4 M\)SPJ[U#>CKY3_%>3+A*MUU]ZY^@VMJ_791K=MF4U]=:<]5D?6QB:)YY#78L MN-^:??4'YNKH]:O9,>VI[M=^7 <'QE\=D.7A%?R82Q3-EYWEM8I9^]26IF)O MUQV86YRS12HG_4$@9_QI0J27[7L8DD#ZVV$4"1H2ZOEQ:O;MU.UZ?I^Z#GGK M?7?0U1X!IE2I4@4>\;/^*5KC1Z'W"1J#WI&_&!M>^YC!!C0@Z]VG0 %W>*C% MD"I7)UMTNYWV>(LA&0=G7$SOM\R@AO/R;ZKB6G?@O]G]V/[P+SDO99/WS^^+ M!YRO%C@A$0V" )*$8HBB*)+JA2B,&?((CP@5F5$,C5'O<]N_4#A! Q1LD3:K M;E^N_P9^;S$;QMV8/0T] 1N-XY%5[#)ZS=.RV=#D*D^;4=_3)FZSH>4@DYM5 M(W:"]A?.[N34YSVO\KM5N_^K8M@$HGX62:EB&#.(<)#!-*($A@E.O(#Z7L*, M(G^.=S,WB>I0@AY,JWC $Z3J"=#E5(VL-!8L&@_Z&%N M W^;AOUW!;'=_3,<\X:2;T6(\R$^:[FA\'[8_Z= ^:=[+47WZ M0LM)2K[*:_XY?U+G7?>3SE^W]:0;Z>CV5;YRY4;(UF_$Q[RB>/D?')>+S*<, M<3^".&)RZA(@ 0F.* QBCT4X8$C$Q&SAQ0&J^:W);&&JPSSR!42&$Q@'3TIS M6C,M^V-/=AIK8&/.0263JV8EAS8K_#W3KL#>PVKM LHPA[,B=RR[FBLY0#3M M#,H=A0?S*H=-VV1W;,YL7Y=E,QG03NC8OVMN?M.1%(5_,DGBN,?(L)!=1L;( M>G2$!V=3HM.&6V9?W&MJPH2+QTS8S[%X] IWZ=%Z*7!OR#*_:T;[-_EG)7(E M";'N)B:[*#Q&R&3U=S.VO29S;V1M>) MM&[]U- [B\#6I.8@4F>4\Q-)[A@>,?.;(:!73PQG1Z!.WCC+ELW=I5M>7%-5 M(&WYK/;M5,""01[LXW?/33]O/]R #))B=SO89-ZKM@9ZZT<\7>2REXPBJSQ6X3:[=*ZG.2Q"R-H4?3 M "*<>A"S-(28BM3#\E<<>29>UF!O\:.BA8KCGR0X;XF=2^TS'[I.>C=9"@)C6-:QU[D<<&HL>P8<.1(?'1ZG%2"#"AX*40FMUH67BY6 M=W(\/[SGI%;Y?;I@LS#S*8IC!$6F]M&]@$$2$ ()\C)?^C9>EIE573[:S=Q$ M1Z&$"B90.*^Z-%)6L7TG>-43ELO9&EE+&J*^FQ)E7FAYD =759:/=S)MB>5! M0P_J*P]?;9ZFY,.JSNOGC_F2?UDWU7Y]ZH4\#!',1"B'?T0RF"91!BG%B1][ MH1>D5#<_R50;,&&4?.24R5991PX: MFRS=R"DS^GE&3EXS<:J\HXF,_IWG=_?J(%6;=[?YY7M<\^T%*])N1]8QGH3&NO LJX MWCK!1/GWG+Q)>F[//\W[,;(..\C4=S(7WY7FVP5^;^@!3K/OS^I!OW9N/R>V M_',D_'/YV)QE 70*RN[S?O,H>U%9?SZK\GJ?)EQ8/4K%^\NJV/5O_ MA=?[ >8D),)/3!."70+( M9$A-%2POUBO6>$7*2\>4ENLFNDBA![6"?WF-7X,GIB=D'XJH?] M$/U%&*;8\V(BGYNJ&!JQ!*:9%%@LGV. $"5!S,P$=KC#^0EH'^\F"2.0?\V9 M_/KE(F^D-=\=A[&I>7SF(>AIICMB1];$/48;O=L_2^2P<+H>)Z[*H0QW-FU] M%"W##PJFZ-UEIS1-J43.*E58Z1N6C:[8;[A659>>;\3U$\Z7:BA]+$KURUT] MID6<,)2$U(,^]5.(?,0A1FD*"?6C)$O\+,*QR832$L?<9IH*7?7K0XMS5XSN"FP- M@Z(HH;K'G<)=R*@CZ;-%,:DF7DC52[&\M#G;'>]O]WS9Y!+$J^<%"B(_X6$, MA1<+B&(604*R$/*4,S], Q$PPSWO?O-ST[QNK[>!"#J,IOO>>_3I[GS;DC+- MWK<>'Q:[W\?,OF#_>Z^YB7? CYERN =^]"KG"2'D9&Z!0YHDF9Q8)4B%X/M) M##$)?#5P<2P=FY (HVC9X>[F-I"_F.:P/\.FGO?ACJ.1Q_5@JH6J62B:)']" MCY7Q4R.HSN:2]:!GN$%"@_Y=YH?OOO*JQG6S^_>>JTBYO,TVI7;R=(_@#;4Q M-PWH805[8)M=??T3>(.\#0N#2\I&E@1+MHR.X>E08748;[#AR8[DZ9C7/YBG M=;W%.%\ON>^1R%=)%UCQ6'/V<8GOM(?X\=MG-[HE3*!P0G\O JB#;#"\3]"E M,;(O9VKL03U,$OA=X764SN0,&W;C^D2;TPWI8:/V1O.92VV3ZE?WZG^J.N>3 MG.>OZDK)1IFK5%CJ%]AXB6R\@:) 7H&F>AS?86U6WLJM)>WO<0T(O\M7 MJ^[9CV'*2"B?J9_!S!,(AB'FF"4DC@/1/=,/*S;+)[K! M->[S;)[>X2.M 9<_;Y/6&!?LONS1Z0)6Q;SN@VDO4 MJ)QW'Q>MPE%,]CCZ>)3X?IFR#/Z0D Y31_Q/(%8.^* M\K$HI?2\+5:L^HTWI[G#+(ZHB"+(?4HA2C&#)/($# 4+L)R$^HG02J&JU=O< MA&*+MYFU;!&#!K*>:.BQ/"P=SKD;64 &:0._MW@UDXGH\<<*^=F4S9B*W93>8;-M_JO]^6]*;\ M7I4?JCI_:-Z=WWA]7[#=87'-W1N=MN:FJ=]J"0K M?S]'B\WSFSNNB1Q98'4X!+\[/;=NRI+5#I!6!Y-M!YF8V]\;,KK/-C?^PT.Q M:EZ#YF1W]:FJUIPMDC )&8L$Q'X<0\1C!K,@#F @>!BS3&6\-TQX?[2?N6E* M"Q,T.*_:G!#5%6BQFJ:E/TZLYF+^Y72-O4QOPY1%1OA!'IRE>3_>R\2YVP=- M/4S(/GRY9?T_-0V\+0N1UPL2!SA)$P0]#P<0A8+ +,048I4X-0AHP&.RJ-4* MB)X$]-HV&O;;'L9[F1MHX+'!9ECJKT>8WM"VI&'DX=PR<#O,@'E5OT-;7=7S MZ[4\;26_0Y,.:O@=N<1=Y9J#G!L)SN+$"Q,81'$$413Z, U\(C_:/D-Q&&6" M&AU$T^ET?M_MKIR)=6(3+:IU/]YN"1S]2WZ\%,R8N4Y,*!JQELOKYCTQ(4&G M'HNC'"CJV$EW+NSYPT]ZK\+_OLCW9Y$P@C,0.?U#7H/7628[51.#KYQQ_L#93?D.+Y>]K.[:Y&Q- K9%%*JJ*B*1 M'D/"(^&'(M_$IWPV2DVKU;A&8\GV*7&GU/2]!U:04+7F= METWPLZ$[HJIA2\'(VK!?[L!M?8.7YCJL:K!M>O):!B^-.E;! MX. :2Z^!+^5O[_[,5[S$R^L5NV8/^2JOZK(IX-15PUX$/I/#DR/(DYA %%$5 M[25G R$."4E8&"8L-1NN>AW/;R!WN*_ 78N\36:XAWV3G,O4@=![%)H.A'-Z M1Y]D=+S^N(\9P(+@?1H8! MJB;]SVUIHQ\%7C3S'=HW "R' C&=/! ]X1J1YI$5K,]P.Z/.:\F9^U&?>[J$4# MX3K9R-PD:@.T#3'HBG"8:=)IPO34QPE7(^O,49H-$ M>CDB8E$89\37RMECT_G<]&.#'301SM4/_"A]G';3S#2SO,$3T!.6L7@=66NV ME"K<8 <<])!?J:/R&H6U+++#FW/F+!>\0=<39WXW)^4PS[M%&Q=Z,&W)W>/E MAKX4JR<)A[.FLE#5G+'K__Y=4=5?BOH_>/V5T^)NE?^#LW9=^F-1=C]2U_F+ M.,+(8TQ @I4<2OV#69@2B&).)=N8T9!9^4Z3P)^;H&YKG>&NUMECMXNSM=C2 M.YOF93!T^6;WB,=><3M6_VZ7^ZGWE#=E\925\J)9SUYVA5YOJB^I<9\_8 M$5S129^1:_]V&O"OXS1/^F!.>N+3HKB\^D W["K90[.:\#%?X17-5W?75'Z1 MVWSV*$*9\#(/9BB)(/+#"))8^.H+YU.&0M\W*R-KV/_9DW9:9J0OIQ+H. M63]+E[OC:"=[FOI(VCF3CQQ+.WN+>3CZ^RX]PG=YZT*@D-$X$Y"F7+I J2?E MPX]3&&2$QWZ:A+'>(N?+AN?FVVRP 05./^I\CZMA);B$@9&'O9[Q1L'EQRRU M"BK?:VBR8/)C\/M!Y$=_;YY5XCLFZR4N/^=5O5^>6S>5Q,D&YC:^.J! (;T" MWP=KF1K0-#SDG#$T\OCKDP-^;V "YVD@SA)AE?OA=*N3)7PX:U@_R\/YBR_; M.;S%.5LP(?R0^5P%5\?RHQDA2 (?0Q'%),5>'&>);UJ1>M>\R8L[36#F=JOJ ML9OJV.WY-=R9[>F9\C'5GIW"=:4<$49) M2B'U5+)W@CR8QB2 /F,(Q2P466!8?N](+W/[GG=5YSJ(5YN_ 46W*P,7.C3 MQ)[WIYW0-;(F6#-E4:MO@(D+2O8=:W7BRGT#AAT6\!NZV"+9YC=>U\MF7^Y& M?.$_?FOJZU9RCMWF4?U>XE6%:9/",$P034220>:) "+FAS C:K$MC@B-O90D M,3(XX6G8O=9+/_T1SYT!:OE(F@ Z&]12TB89;;TSPR##I,&C&1:3,9B>ZO"& M!KO?QV;7()/G."Q/E-/3&=MFV3W-.1O,\VG0W'09/\UMW,O]:7&[[4R/<7$Z M%?S'HN3YW:K-"D*?FWZ7S5OY9YROU%+Z(LPHY9C[T",J.7/,I<,H6 2SC#!! M/4P$,8J4NAC1W)S+G4&@*ZW Y'/-1=ZLC!RIL]"9"#8V@IZ1TN'ZSW556\U+ M+WW2NI/9"9_?Z#/@C2VGJV(,/BUE4[?EY'+RZXAA9S/F2_%,/,UV1-_AW-Q5 MPY=5V/A2U+SZ7,CFKU=LNS^_2]C_]GGW=[7D?_TSKQ9IQ'PYV8^A%\4I1(AS MB#,J(/&3!.,$IR*V*L-A V9N"KY#V.PI@=\52,W<\4X>CI[R3D7YR*)KR+9U M;8]+:')< ,0*RJM4";F$M%.E1"YJTTXJW^<571;5NN0WHA^[^94W)S)5"&>U MB_[\&$<^B1)F,^2T'!/Y$)$\]M&Z4>%]PTR MD\U+'Y2>\_>^'G]WNXR;3H3IS]D$(3NL%Q2+!(@V@%V92C;W4AQ)6H-*-!Y&? M>7' 8Z.HT$GA&WF[$P2:;J"#-ZP#_PN0LUBJ7;!ZP@+'YN^*W@=AOF_ R-\/ M5R64MT>Y=F_3AHA?KL"6BUTFV.9<<$O'3,HO6S_&.=1K-@?_SU/@V?K!.*T( M;8_"[IO:G+;X(NF5,-KHZ$TB-Q11'G _@"0B*J=>$LN_A?+S%['8CX*(QQ$W MJQ1]LB^+3=F1OU:VQ[A.TZGWA;B,HFG$O#U]U8'<'H#H<#IU<-+\0Z7_WM2C]+,P4_\'$Y^G$,41@QA1 M"@EC/,4DB3'*3%9T!WN;VY+M#FSCJ33_;++-&^Z:#5.L)Q7.B!M9+DYS-D)2 M*"U2'.G&<%^3:H>6V2_U0^\FR[R]])ZS]9+?B(&*\"_.*; TB[P8>]##,88( M!1[$641A+%B$>(H2EF2&27S-4"P@?NLXV M\ELM1'V3#[V)#+@F59/@=N&%$4X"$L.4*+.]3!R./&CJ M89#Q\.6V8O D&RO*YZ_XQV^RZ3+'R[;VP%=>\?*)5PO.1";_'T.!?95ZBZO< M.+XA (@Y3!'VADA0&4NDR%/O*VXJ#,. !%JE%86T#"!91/E.D M7M@.3IM--),GH#U5LD7(6:Q)U &TPA)ORP+,"1A$,",82]),4M" MIITJZF7CLW.X%"@U7?&#-^07L(&KGQCJ@+UAD;F4D[%7O WI,,K^=,INJZ1/ M!XU-ENOIE!G]%$\GKS'/OOII5>7RRN\ENRV6./R[QG6X6 MUK,-S6UL=H";@#7EHF]@-U%L3>YZMI;]@-(-4<'GH"6]:Y.#!_M8]ISP$-F'ISN';QXE$Q@VX--?RX*]B-?+A>^EP4T MC06,8II*B: 4IG[(H1=$@8]3G&21X4:Q&8"Y"47&>VNTW&=Y&Z:[%N'W<\IV=9)<@QS:YUNQWPB=7UW M5W\H2Y4UH2WC]Y[73?2-6N4TK&BAT];<=$QB+IM%72"1%RM>K*N]!"Y-X4YI M"MC9HC^ETB+W_*S*-:\C:Y0%I8XSM9B29C7+TNI@LHF6B;G]N9;1?99'"C:E M$K[QNR;Q2G>>D/@,L\3S8>:',43"BR!.F >YCU"<)K[TKY#1D8+C_CU&#TPXC,#O1"0@'#)L= MBC"D:O"@A&Y;TQV>,+1N[T"%Z;V6I^MKZ2Q^JJHU9^_7I?QRM%F#_H:7ZQ/5 MY1=8.GL9D2(?>DPI/<\@]CF#E KTL'5: N9]/5V7IS -,>K;7V6UNOS3%F6[%B=U6% V% M)[* 09^32*4ZDPY))#R8D@C[#$=IPHT9^3/1G(=- MP_38$[)>CK.-'5>@L>0*-+8TP9E;:T"O>LXT2<^LV76>_,P^E9.=/O$U,\-=5R=O*\'\IEDU 1E?;[&;5Q;KGO+HN\TK^ MJC_+5*=-4X:2)$PYY('(5.EQ G& 8BB8A$!PFG'/,Y[\N<4X-PU6=5IYY^B\ M(7S%15[_ HH5>&@JAC;CO]K:9#&O=/R(#2:FK_?@QI[9OOMT!=YS4H,=:.F6 M/N%\J9X7E)X/_(:7_ KL[ 6=P?V"DE> <'DM[Y4$O7)[*GG$Y^!RENT8X?33 M]'$H/CK/'ZDKNX_(!URN9'.JE$*SP/@^7Z[5_LLV%1436<0(A@'W0XA8S&"* MPP123KW,(R+.?&J6&)T]NDB.'/S.]L=07*ZS*!E\KP+'YJ> MADWW**;8K1TJ]CB"S+DA;^I*C\?!S+/0XR!QUG4>AULUSP;Q857G];/T 3\Q MV6(N+-N$EH']U!-Z M-]CY7IM36-U9ZG?=4>KO\M-4M=%:FSGF(J,XH80*Z"J./E M >)!%IH5K]/O7&L43%K-[N#P>;U#;>9)&3P"/:_),:W3B,L&]!78,+O!#7K M^ZMJ[CPE<\(<>44&'4_J 9D3\M+;L6C!Y"Y1^ :]]>S0 MY*EH;A*/P_78\SYG-)OO^YH3YFJ?UZ#G:?=US2DYV,>U:.+"1.]?>+U( ^JE M*>F;%M%R/N+:L^0.Z$-STUMF5C9+GMI;#_XC89 MZJ&YKC/2?YD^G>FA42>SS'^Q3DBZ:6JSHO6]N*;_M;G@-.%A M&*OCLFD,D4I:A$D0RCFGB (41BP-(HN4REJ=6TPRIS@^>RL;NL<5KU1DF8-H M$;T'H:<#[GB=1B V>%78<8<8["#WPCS<:8<118Y$1:_/2=7&B(:7,F1VLV6( MP\^:KQAGMV7!UK3^=ZRV9^KG:TK+-5YN$"SB*$S]-(Y@1#,.48J#$*OTVFC(8R(. B*,+O;3I6ZP& UV92SRB;S M05-R,O0RG&6$0AS$!*+8SV#&1 I]Q'PY.XP$X48)7T_T,[>YX18FV.$TJN%Y MCE<]T7' UL@J8T.4L9"'L4D<^"1#,*!)"A%.,X@S&D-* RK_ZV=!8KB)?[RCN*S MAY#-V!W6!)>UZ6-)EL7\_S,4%V_$E&(/)+%) @C02/#J,B3G)ZY2J6Z2!E_@1#F'B(PP1R?SF>!;$+"!)K"8CXI)MW=,]SW1/=X>V20I2\CHO MVY@PE2NS@=\FT+3;VAUX$GK^A"-B)][45=LE/68EE2U@\&V02NLMW?/L.-[/ M'>CP539SSQ-P:B=7XT[;-=)>6VV2U)MU7=5RF.6KNX64&I\$(8:9'X5JI32$ M)$893#Q$$XIQXO' ;*5TJ+NY^2#= F!_5'0Y8RO0@VVZ;CK(N.[JJ2L>IUE# MM:;08BU5AYD+5E0'FY]X757'U,/55:V[+,I+L?_\7MSR0IW6_+@RKRAU_/:Y M:<(N)PWX7H#;#S=[]8[4<9RB7A7UZ4S1VKR=GZ$XH&SDX:_+UAA%H8;)L:L# M=:+-Z4H_#1NU5^WIS*47AMGOSF=O3Z90@J/82S(89@2I((L4ICB1DQB>R9\C M+_(2HSV4@;[FI@I;J&"'U?HTT!#'>O,11\R-+ ZVI-G'HY^FPW5X^I&>7B=: M_;3))X/7!VZQ/'385I5Z7SS@?+7@@9\$/,8P(*F0,A'[,,W2&&:1'U!*0N03 MLV.%_=;G)@P=./!["\_T7. ><7ICWYJ.D4?[KK#;.2K,S^X=,]G5Z;R]MJ<] M?W?,K(,3=D7=(M35RK$O*?\Q7_5/.':A''B1AEF-HKE=I/<$2>P=%,5,HR\+NR M#33&F>K)Y0]84X0F?6QC*U6 IA589P0>J+*[ MEBT#X7%>-@6.WCYO__J7G)>RH?OGS_Q)\JKBM_TD8S'/&*0LY1"EU(>8B0#& ME" >!2SQP] H+EZKV[E)LH+:E@0#6[#-1M.7Z[_9AXY'5DO+Z'3 M/*C>B!U7,?9ZG4X;Z;/CR,/0Z'!2[T*?@)>>A<&=YGO. MOW'++4T?>3!WJ)S-#$Y8:K7AVV]G MLDW>(^#[&[O'?FWW@5:!('G=9F%;,>D%U'* \A7->75DZ]'/!(^BV(=Q2@1$ M),T@H:E:Y"6Q^@5TCYFY"+\!M4Y;UTXI]D:^B;%8RFU33[U2[ MY?.[@O$%RTB"O2J@(=Z'I6,$-D=6$!=$6B4)TJ#GHEQ!0^U/GC)(P]ACF8-T M;K-S/JZKBM=5EXQH._5&)"5>0E,H,NQ!1*3WAI'\0\0!"4.2>EYL6,OU:#_S M;#7G\6-PMKBE5VE')*0S/GU3.#K51*IT6JL1%K5:H'JK?>%.X+DN"0'@B M@YPE*H-8YD,_1NL8/?6_2:R\P6/+."-NYZ\VE]);[W,/R3\*XM[O;4M8JO[F]D MW)?SFT;*+5J<1-_M+=V(_@4MV,XMKQF3[UC5.)4WY6U9/.72R 7U8A&R.(2" MH$1MBW&8LA##$/&4)EP005*S2>7QCN:F\MTDJ /;F_YL )O.(4_PJSMYO)RU M:6:-%H19S!6'V;A@DGBBX8EGA\/F'4X+SUQOOJ.DPOJO:;W&R^7S+<[9WZHC MN:*,K"!KPY7OE$6@'SU"SA&^RB+;/8D.EJ! MLP PZ?*\\_YD^JFEF]?+F>/[0KB]4-1UOD_FF_KAY_J M,\N_2.G]_H,OG_AO62!; V!C25@9PIH;+D"R@"JSD'TK;H"_\%Q M"6Y6#J:9;@EU5_?H$C!3ET=R0-R1*DHN6K43U)OZGI?*CY4>JVQ>@FCK?7\N MJH/\Y[W,Z-O\+7I[!5:\29?\/]X$OURI/Y'Z M3Q V$=7_XXT?)+^H7]?X)WA#^(J+O/X%\/9=N0(2N1(5R=[RV4S:G;T8>B+_ M&H][9+F_>?=)%;D\6P3B"OQ9O0%OE*GRV6(A7T/0R\"H'K2TS)W^N^;:T9? M&:Q)OPFNR7SY=7#>OOV9HY/)CW$28Y(DS>H"@8C%#&8AY9!X-(EX%F4$:^VE MZ'0V-ST_EB+YRCS-M!;/>E+Z3Y)BVIXXJ[- %JFE;8_^O&Z::1.CCQWL<9QB M>J]IEM?/-X_*F^V"$U(/A3Q* AC[5"H'Q12F<2"_C2AAD9\Q5=_36#E>]C)+ MR5 @08O2, 9DF%$#C;B$IRG$P8@B.U$X18%+-3CH8WH9.&7FT?%_\F*[@;]) M('#+RTWNM)QNU\5#+(3'/ _&L0J_$SB!A$L!X#R)F4 B]:+,;(MBL+_Y[49L M4V$\2J^_4H !!$1A-E.#89KU5,$9=2.KPY8S";3U'*Y @W64_00M5AP)QG!? MDPJ'EMDO!43O)O.XC5M>=-\WS9",[0US^_C??KC1CYS8F3T\@*TM'GF@JLH1 M[K[<1ZVT"DG8M3)9M,$!\'X@P>$O+\@$O3=E1#A!@B$&L4K7U6;J8EC.U E& M,0H)35"ZD)^>O&#?:ES6>M_8B^:5+WL;[_5[R^_RE=(C^4%=-B=KW^2K]B-; MGBPJS$&D" Q')W]"49@GMF/VP8I/QNNEKQ*]O>RA_ M!$KUO)0Y+VJ,NHPQ]MK%*R]8:*]2C+(TT:YZW.+RIFS"35F32W7CQRRX( S% M801)+*2.2[["W82M0J";G%W:8.W[KCU MFN=)_HV7/EVP.ND*J!VAEZR%GJ/(_9+HR1Y?:V7T' 4#"Z1G;W4:YJFJ_%3[ M(56+$).,9R2&- @H1$'JP33)(AA2BGWI@DAJPD6M(E+U-$F_:R-IV@(8;R2I MT$.J0@_751MVF&\P ^PVQO/8<]#3IG'8'5FBSL1T;L'KA-*Z"N0<8&S< ,YC M'<\A<'. $,V S:$6+&>B])ZS]9+?B&U]LNZ(]W>U8;T[[4%)F(0BS:"7J.J# M/"80IYX/$4$XBFE&,]]P 5BWZ_FM!:MM_F+5Y$LL1*-A"KVQ=&ESKSG?&H'/ ML:=A'61%XQ9T+[5# QPX/51CRY:KN9MNM]-.Z0S).)CIF=YO6QU5SI^D 'Z5 MSMRW'_AQLSD=>Q%*I&M%@U0)4H9@QM((!IB*@(549'I5U(>[F=LT;X,2*)A MX;3B)G5? M^:-\0>Y5>:_K%?O*Z[SD[/VZE*[1;;.\VDSU%@FB22RH#V.D5M6],(89\A'$ M$199%$DO)O46*WZG)H??#:HFZD/0&@E9.Q(.@(R\_@G*K0FFGHO!,]!T7AQ3 M.I'_HE"#'NPF"+@##EKDH(5^U2X5.71@S!ESY<,8]#RM&V-.R8$G8]'$10FS MK^_NZ@]E$SE\_5!;Y,O>;V!N7DH_/;1$6C82!R1>.7\JUM6+@I_#26(-:!P6 M'6<,CBPO+LFSS;1]G)Q+$VV_:/4U\FP?-^Q$FNT3%[L_RZ56?3XNBQ]_X>R. MJ_,FS?D!==3D*Z=+7%6YR&GSP-69'2Y"+_$C]/]1]Z[-<>/Q+97M)U,Y\Z$+5YG/TVHJ[&[;RJ]_ 9)][R8!-$#Q5.5B MC4A@[P5A<0/86!LF448A2D@*\R*5\0V52Z&L2&*6&IUV.;-L:C0D3=I8BEA6<)C>Q[#JPI/GZ$2^Z2\$')2!E3/D@I]%& M9_%>O"\7>$%+/&^.*9MZ+;OZ++MM8);B*,"1@$$8%G(UFPI8Q"R$5)5RS&B< MA8@9L;UC Z=&^E_73T^X?E&;RU_+QT4SM*IF?"MKV"S-I,O4>-_>^ M<;A\?PCV7&N50'>E:=6*>M\]-9Q;!\'.PX-"55Z.#'P-@*OO@6OSQOTL> +W MY.O@JQ_S78 S(F3_N7S@O/ZCKM;/QNJ&FLU-C:4OBNG]I[HW(G]LS-??%-!% M=7B+P .@GGE4#TL/,H6&4%EM'^CV,=IF@J'3^UL+IJ]:5M38U0*^%!1OQ,=Q MCM,B$)"G)%/UO1#$141@1A+."2E"C N3T%*[YZFQT7Z=Z\'EJ>6!J_ZPZ 6& M7L#VS%2W]WRO%5A=5G*68A M*8H",A;)>"-#&<0)32#')"ORC!8%)2;QAEOSID8;G7+R(4,.]@_A0YWG;:/$9OS0[YO?B M8[5X_,;KIX_E@LL?[VK.RM4L8%F0QA&'<8:9REP)(:8BA'%*HC 4.0ZCV"(S M=[!CK;_Z\?-Q'SJK54J*[**Y$$,;@TW#LR'@=2,N%SB.%40];]$30%D+E;F@ ML5?]I[M^("W"(4UPG$4X0_V-'+1HNG\:A^B^:!Y:?*X67]9S'@8D"6_K^I95 MSW+JOI_C1]W XG(+4PLKI*50F0J4K3 $TEKYZ^:$$G1FZT<8/< -QQ=N,//, M#QIP@;^4S8["C&%0K(*,GF9'"S&&7=L/,#2>M@LOE%C[[BA^*YX8\CS+TT;: M22D]!06") QRF#!6,(JC.(B1R:;2^6ZFQ@:-28! M"Y2,XX)^$!P% Q_7+[.YVAA)&TS@)8WE/D[3%-$\*T+&=:;[KLFI3>T[O, ,ZTWC/6#ZIZR=NYZGY]WMY]NWM]=/ MQ5/G>KZUW;FKJ4VRUE*U3MS9"C;& M&FH17<97[S/J!C7?\;058.:J0H-8N%(1NMS1N*I!@PZ?J 0-O^%&"WX;#?) M\D2B5,P"SB$*<:0*ATFN2"(6AT4:9+G6-W>HHZF1Q*F2N76A\FXJ\.ZJKBLNZ^;R^_+M[N+DFU9A^.MWSE(T!MLSKXXZSN;5:KT/@:M*MOX,';?*K7? 3RK@^N_1[+.$ MGZO'F83X>[GB=+6N\?Q]C57^2A<';P3B>$#C(,Y@R$,B0U?$8![E D8A3P7E M61)&6N7$];J;VN?AP<R^OBQ7_$ES@:N) *ZUUO#NAR:" MK*+KI\T5Q!&1/.AWLHAJ?Y/, &J_*^J=YF,1AE'2?# T6QF%],T\VA"WX5L6 MY*O.\,N6R%6"X-M*Y1C.PCC-\TSM"X19 %&4!:S(<9"S(-$FW+-= M3(UD]XSLB=0?. 9\>35((W'D!AL@JAJ<(N$S8:_D!^_4_Z5[ ZWU5:*R6HC".2428@H51 )$(,,4LB6*0YYB2,8\2T:-.SG5/CWLX50#M? MP&IG/L!;^QT*?%TSR'H;&A,8.L\?!0WQK\W ;CP%>ZXVNC![SH*=MS> -/Z. M)P/F8$1&$ 6[QLK)2(0Y@-I$,,Q%=U=7.VN%E"-2A&E:4)B+-(4HC6-88(%@ MB (:,)3D:4 M2YL9ZRJ/6,=LV6@L5P+\<_"OTN7P?\?@&=?@AS+YWP%>K[Y7 M=?D_G($DN F"YG^[.H?_#LKE;O=Y9QD-4AZ&'*8L8A 5,8%%+BC$'!>(%@&-1&)6]<>9;28399RR M0&_7O%,DK18.8U5E*G'SE>\B_EX_?5O?C;DM\N MEWQU^U35JTX*\5TKCCV+PX@D<9;#)$ZY)/P@AI@D! 81C@0*DY"9"7.8&C"U M(/2S_(-2$M1S9?Y&0MQP(\%T##1W"#PBZWOIOS$=-+;?@,9Z6 DH[0>- S== MV922@B^BE.:0B7G5B%1OOC:5;H.WL@76'PFN426I'4LBMB.0MR M@F.<9I!C%$&$4P9QS L8B 3S/ Y%4D0F%;P/6C>BDQ&*=+-7=N:M Z7=.<<=K4L.VA[W*75.;=.ED=G'[(6.5;WXY9? M..7E#\4!G_EJQ@(1DE 4D B60Y0R @MUO2U%)!-A@6C.J-&,/=?+U&;NSCCY M![O@AMHQYX'4G+W7PN-[%G?V@9V!FYT;M)E+Z7EFVRCO\L5]_OULM5]<3KG5!$% @>"@'C M""<0Y51 @H($XI2@#*4HRG,CH0C-?J>V;NC,!FHD=[<#?DK+P<9TZUMNND.A M1R\> /9,.(ZPM97JU$7*K0;G8*^O(:ZI"\4%U4SMUZWD,#\L6/FC9&L\-Y?! M/'EW:ORB9!WWC#12O3P%1F.CX4I,?,<@AW"X%[>\Z+RMJ.5I@V.*65YTYTC$ M\O)S9E.2\7+V;K$J5R_ORSFO.TG,EQG#,A[ 80H#$H00)44,\UPPF"9!'(0L M2B*L57;O0OM3F[6MB:"Q<:/%JID*$QY&B1%F)EEKIQV,KT4E(V-H-H::;AW=P9*O1C].G@\S^ M+COKW,7J@;M:;C;T&UZJ& M(.Z?^ZYA\[XH;RT%RE2PL;7%S.8^[Q!X!K?3'((XTCVU+9C_H\ 4&S"),OI? M'5U0TT2E]ZK:4!OC75K3].;@^IKN.U:*V0^\^LRKVQ^/S9&?8:6U2^]/;3VC MY)\?WMV#S_)_;R64^)&#]HCSJLIK%^$;WJ=P@9QGIG0#FJEL=B\JMJ+9YQL= M4S*[UZTCP>S^9^U61]OZU:VB$L]R7@A1P#!)9-141#',8Q9"A&4H%:=A'./< MY/3CL/FI3?^M=7;*5D?8Z2V%[!'Q/*WUP3!>!)WWV=$"Z*CQ41<_YQT[7OA< M>,I\![)+BGA?+BF>JUSP=PNF+AK,XB(C). 8%D0D$#&"8,[" &8!Y2B)11RF M6H>6?9U,;?)V=H+6T/:2A32UN7FAOR5Y$=+A?4D70'F>TU88&>U1#H%@M5%Y ML='1=BN'W-K?LAQ\UN[+_$=5L9_E?'Z[8!_D@FWQ6$KR:).C=JFFNUQ;%M&" MARB#"0]3I;Y+(0DS"O,P8T7*DH3DN=F>IID!T]L!V=C?W,]J%04^,#E0I2B; M[-R=4^VU L/-4,/QT8L._&'NF6D.P#Y!]J"ZAM.LZ.N )N?9U$BD5<=OG5"WC5HW M;L#&D>WF6_-(*P&WNZINN)4QE4'0W469BKT3HN'&8=AX?+03NU?4D+R _>?\7FPB^MT*-8CD]YL5"4Q(&$.$XPP6.4UA6,0YBE&8XX"8[2#T M]#:][8*-L4I.['&[FEVMZI*LVSI6JPIP3+\#LEZJRL1+L&R5D@T_M3U#H/GQ MX M7#0J-MN+52FE(B$$,E(4$.59!K% >0(!SP(4!IFFA9S*Y!CYC(M%#Q1&7#'0V*IWH.7[,*)IO698EY:L[O/S^ M4%<_2L;9FY>_R0#KPV*K'W.K]#@;N:Q9+HC(*,X@)8DD&!%AB/,TA@Q')$0Q MQ@CE)M>Z];LV(IL1[GI+RT&C3/7]@IU]U.PRS>>%38\1<%4+5[WCEXMRQ3^6/_C):W7'EZORJ5'N%(T[ ._YL]'Q:Q0?ROWSXG)WJFDC?.-T M^,T6BF,/Z8@KR]8QV'AV>NY\ UKOP+Y[H/-OE,6H2^@=KUZ=F/8JRUV7H%Y: M'SOMP^)^D_P>4<[94FD,?.8_/^'Z'[)C&66W*C1[Q0;D!^Q>O.6"U[7:GERN MEC.<0Y)&$>"8X*1F/]&EO76#*U9?C&EU9[0WH#.G>: MI64G\+/:>=1()2F>89U7@"JW#.X!736._30_ZNCXSB'0&9C]$B^O.BX&E[?& M&I^1;G9Y'B>S*V NL.V]'W95!^-='G.!P\'-,B<-FB=_O:N;4CN;>VWMM0K- M3+!S[T[MZR-MK!:\6B_G+^V)^_%)_<9Z_;RQLY#U?S9"WC=F_JW2F-MEI;PNW MS5Y7R'\L,5$WK)LJ,9][]%-MCIL, 71W]*3;\=C'4(: G#F2,FW!CN?>\N>: MT[(M(_-3 C@A1QD3.8%YE2ZW*J%$:S!$6,\8(7R&RO5J?; MZ>W![EO=S*G]?5C M88H)%S=[(^X@)@'!61%R-,\ M1$AD1FG[@SU.;?'UUF*G2!]>7:YQ")IWHNGPNG.S8V.,@3,N&>IO9"+1=/^4 M171?O*Y6PN=JQ9>RX8\57NPIL'\L%_S#BC\M9PQG(BLR!(N8)! 1E6?#(\DI M(LC5R@WGF5$E>MV.IT8H&[OE@<<4P MUT][:/18R ?@GLG("];6M1IT@7-IZ* +QJ4B#]KO6Y9^^_;T^!_5 M3U4(ZFZQ9/)GJZIO%UN9'"LI:U5E,CDC;H"TN:U.=E,.($*L_TL&=C"U-3^-%=C09M+!P%%)?[&36"&'3W.&08?N%* M$<1[T463>/Y0+S>4;R_8.^8QBG(D\"2%*!9<$A 0D)(XASE1!2\E"!14F M]YM.NS"BF]&JS2[5Q?K.SG_YISP*LW\'O+'7E&1.($T1BX,4AY DO( HR=6_ M6 I%Q@HJ?\P)SF?/S;U:@Q@C[OS!^\;_E@N%FKGA."YJG)Y-9Z%2$1" M0PSC(& 0!7DJ_SJ+#(8,X9 'J?Q>H@[/=W+%/QJ:F\X\9BPMF$L@=;]UUT#C M^?M+B!(%WZ7JXX7:UK M//_*ZQ\EY1%M\0KXCQB:I;'!5?"ZI9VKT^ M1+W)]1K-C)="K^_30:*\P6MF#+RL5S.U_5S-2];\\31G(;>_RN4LC$F@+LN3;>P&6_&D77/4T/,JD'W9L,\\UGKQ6BZWGIFE[H:,H MHC",Y=*?4H(@XC&&!$4(AD&8;N]_@PMUORYHN M^H.BN4;S K7O74GM&_8>BL48 ^9=,%Y++FFW8+=I3VMT6]/5#\ MAG^]X0LN2MGT=[SZLUK/V8W>B<$5Z(J2C/J2U.^AB8QRD0$&0UD1,-3 M!DF4"IB$/,UXA L>"!-ZLS-C:E2W[T5SNW;CAU+C78'&$]"Z K:^- ]^T2Z! M<^7 Z5&@_^'P3(>>1L*8&J\#TA%-6AHQ*F5>!]0Q?5[9FAV5?N&J>B]=<=;L MZG4;&7E(B,B3")(XX1#%-(08<2X#05Q$,CB,DE!K[=?;R]2(<&,T/_P]75,?;!4I M1*@K+71D% M9O#-$PR1%,82]PNEJ)&*,$IYAHF1TKI9]U,C]\Y L+>$J_F\D?]<58!VOH'Y3M^AU;9Z MKLNJ!B\_.]:U MP\T1M1IV/BI_V@%S3)*6K=@Q8<_^Y2?\]ZJ^F^/E4I7;>UL]X7(Q8X1AEH4< M)H@%$.58E:T+<\B1H#F)>93AV$QZP] "DVDXC@K'P*E)XP1HO&B*.H*_6D<, MPUG3@=*C0(_@>^; (9UB<]B->= 2/$=$:-K[J$QH"_)%7+/LH%KE^:N@IVOFQ'= M%2-JM. .W ,;_UR7(_(Z"$YK&?FQ]!4*(7F%_'P5);]=VGUG_H.S1]G:6[XL M'Q>MB%4;LQ5AFK,B#2 A1081XP'$. M@$@848YIQ%!KM+U_J:&H["IV=8,]0 MRRCY(K1Z].P",,_<:H65,44. >&(WRYV,RHY#3E[S"R#SULNQ3K MY4>YTI]'W:$J3U$1X1S#2 1RV8T;[4L>242S"*,TCO)(2]A;HZ^ID4,G(4N6 MO&ZEB%J3972AC ;1[X;KZ!Z4-=?,;K#SO3[>%@F_Z1"[ 1UB'LZR-3!QM>SM MZ6G<)>ZPRR?+68U7S+B#\7+V3D8VJY=W3[Q6K/1'7?U'*GCQ,N.81XQG M.?)7_=2G:VB-MN@//$2,B)5"$C$!4 M",D>$5.FGK_ )[CH&=9S=@XUNGA]8D4^RY M9Y?>XFBP]4*>\8?0,^F-.'H6>8$NP7:62.C$J)$S#UT">9JJZ+1U2XWA'[B< MJW;>5_57/.=?.5W73<[%6TY6G_"J^VD;>6[%GX(B9:DH"IA3I=3"J&+YE$'! M41K&-"YX0(U$AVTMF1JQO]L6L]TMH0S5A:T'18^-1X':,P$K2\'.\!NP=0K* M60256S=@?PW[OEQ2/ ?_Q7$-.A=?O(AY78VN*Y%B:SO&52V^%JX3&>.K&[0] M_3T\8/[,5^]^T?E:R1#]457L9SF?SR(<9;PH*,Q))E?1@H8P1U$(.2HPC6/" M!<]-6%.GTZD1Y%ZR!>Z2+18]Y9OLP=8]4G4+H?>ST9-4%6DQ^&UK,]@8?7EC MT^+$4Q\C9T>7&EV.? :I#\+I8:+!N]=>4WFH*[:FJS^QRH9>O6QS_XY*UFBVDN,",HQ9E9*IZI"=/+Q?MCC97!O*ON][.UOS1- M%#$>"SVJ\HFO9]K:OPG2&0\VUN_RCKO%,'"J[7XM>L[O=&AV_TI7-\S N7Q# MP[ =5V5-3R7WOE3SN8P%U=V/&8\YY@05,$D0ARCG&.($I;#(6))(UL.4&!7= M,NQ_>J'8V:J;^S[\+]!Z ?Y2?H#.$_=+KG25WL&]$"65/;Q?&)?6&6QH:@S6 M& RV%H.-R3=RQE2K1:6KNZ*'8C\O.0?0,PL-8^>ARHXV0%:%=H9;'ZW6CK:C M^^5V]%]ZI2/>C]O2=B$+DXA$3.U=11!E,I3*4:AVMK@(6)ZP*#.ZU.K.M*EQ ME,O#PH^V)0L=COQ(9[Y6X_G_T+FOSE".?_A[@OI4#H _ODY51?> .C\(/NW! M/ GP;:>+W1Z3/31%&M[+_[:#XZ?-/< M&SMY<6J,](!?P(_EP8+DK?QBS*OENI9+EL9X_=VP4YR&=[^N@L@S?9Q!Q\=I M8R\,5GM:IZV-MH=UT9']/:O+#UU;X^H/)<_1W:U+$4WS..!0) )!A(D,0XB$ M"HFPH#AD11AHW6#L[65J,_JPC%!CJ&T=IGTL^R>R,X0\3^@SX%Q=K6H?)=L: M599HO4IEJOX_J2NJ4)T!0;_VU/[+KU1QZHS]E^M,G7O8/##Y5K/;NOZP8-_* MU5R+RT[?FAJ!-4;IQQQ'$ P''/;>>R:G;S5NDC'W%$G5/6I6_BC96DZ\?F", MHHWS&%B%&D=-C19GG'=A/\BX\(1EJN19\=@9SZ,$HS" )*<11*&J>D)B"M,D MX"0/.$AF&8&JF>7PWJ*!+FY]3(]\E 20/AY??FG&BQ-*U0?!YJO1V@ZP'T M3)YG%V%QE4FZ/E.QLWW['7T)*NS_VE;$>VGIVJQ7_J#X) R&L:2 M>Q&1*[LDE%2,&ID82K8%7%5$Y15&/!*["QO/\-X/% M0G_Z@NO.)*:/VQ]91?J">Z="T9<>-%^\[$+;IHJKYN+E\*VIS=9N+=:<56]]K*_5LN5HZ9&6ZZ<=V%_N7+A"?.\C+MR]7);#E>=;:0F6A@]:'Q!4R:&>;'5D%K<^U4Q&TWJ?M M%J4;L?@'7C>+WMWI=X*)B.((0\;#0*U0Q*F%)(VFTP_E(GAJ_6FJ_5F* M.+L;23T>>]WQ\4R .[DM\&EO:%2"9F=_(ZJQ[Y!7P0=_8+O6HG9GX.M(6#L' M^*+RM?N>KKTKHQ3EVDL=:2X7@T1)(F98KA&1Y'',0P'C.$H824)&&+&[*;/M M8VIL?'P#I)'7N^J6S [.X86A Y \4Z(%/E?C7[RA]5@W_PZK'&S]]+V6Q7 B;$@> AIK"@JKI.C M(DJB @N4I M83E%7J8VP?P%(/*G MW13O;WN42:[EWF::ZSULD6K^1UTMEP]U13EG38VOS_SG)US_0\87W_"O]B;* MMQHOENTMVUDDL%R.Q3G,PR* B/,,%B+%D!8DSE"1%)K7WVPZGQHM;"Q71;RY M*J]ID'!MBGL_4_A&TS>!*,O!%DYE.Y#&@\YZ5=-P<^%MSP&/:!MDO7M$?:1D M>,?HF^7+6\+7FT9OVN9XV?66WAXDW=NV8;?=)SMZYO7JY4'^R:SD@E()=CVK M/\K/?#7+ TR(2".89DT=;7[U=C;J-I>/T\8:4 MUCNV&ETJI%*;54HF^FY=U[+9&>)!C GCL,@9@XAB^2\F*.1I5B >MP\ MU6KJ>]@\;?96"7^^^U73A[JDVG?^#M^:VJ1]]XO7M%QRT%BGGSE[A$7_/+T. M!L^3LS$,:.)@E#Q[WF6KY-FCID9+GCWOPG[R[(4G+ _MRT6YXA_5'L5Q$88W M+Y_PWZOZ3MW>;9*UHRP01:Z^K'F20Y0A"G/*!$RP_+@2D>1!CLQ2? QZGU[2 M3VL\:*P')W5'P)L7T'@ [MJK]_TYXE0IH8(6U^3FZ. MF:L#<(.>QSW9-H?DY,C:H@D[BFLJG*N+>37_SA=+V>.'!:V>^,=JJ:*4>_$- M_YK%0<*2-!(PC9((RA4#AJ3@!N6LPPZFMSG3VF=86/P0-+UY;@^$[UW6=G/$ M2PWOLSZ[*LQ]V/BXU;;/.G920OO\4Y;'&]^>'C\MGDLE16RLN7RQ@:E%].V6 M?U?JY=/GAP][TLN&1R!G\=(\#;D6JE$.1LZCY*'6V" D]@A^T^P9NZU;>+DPW.W:AN/S9Q6H0B%0F,0K7_&&<%Q"@B,)3?;5+D. H# MK3(R5KU/C2TVQC>Y/*?[_?N3PG)'P&QP]"(!;Y![9AVG:!O'$E:H.0HUS/H> M-1*Q@N4X4+%KQ%6IZ?MG7N.5_)1]5#]O"US/"$.Q8#&&/"1R,9)P @M2$)CE M*8EY1/,TUY)I,NYY:C2W-1/,FVK'\XVAUU:/OH2\'H]YP=,SAUVH&+U#N+$< M?!Q$V$&=Z &TO%6(OM3O*]>&'H!CN"KT4 -V?*7RT_#R^T-=J0T8]N;E;TMU M$OV^7. %55>DZ:K\T=R?GH6D$%$F4IBF!$/$TQ#F"4:P"%F HS1 "-'9JEKA MN1YAZ7=MQ%A; _Q-,W52V2@+KY7V,'D!8F,SP%NCS=C+8!STZ,L/NI[Y2P'; M;%9OS%;@_J8LES3V.]@:#VZ'83:F,'/$''&80<>CDI@Y(,P8)F3,9>15:(/*9(4+.- M8#,#IK=1O&=_LP#:>K ">QH:YJ+3!H.BQVO^@/;,;1<15J;[V^&Z#C>'6M<& MG8\NA&T.S#F5;(M6;._^K'"YX&PC8;81QL]YC(HH@9BA2 9H$8-YD<>0Y464 MI5& :%R87?XYU\W4EH\;*\%66<].(O\"J'JL=#U4GMG' B6+JT!](#B["W2V MDY$O _4Y>GH;J/=IB_,R]O=OU>=J\<"KS[Q2R7GO%^9G9GV-3&V.2V/7RX9= MP:I2TG#PX=T]^"S_=[_2"'A?5:M%M3(Y2NN%4N,XS16*OH_4S #T<'#BIO6";9[-9?O+]45Y-7++(I%'&+,818) M!E$1I##/: A#P8E(TR@F862RF3/4X=2V<+ZI/K9;S2H"5S'Y4@G!=G;_RS_E M49C]>Z-98%Z2?0!^O:C"):B>">;C$9+O^E&SJ*NN!X6S2NH#W8U<.UW/^=-J MZ9KO66;7_<#E7-UR?E_57_&4RSN*")R0+%U(#)A34;"X$RT3!+SQ3\HD 1$8+" M*$1R! @*8-[LX8\5_+&^ )XQUZ-YGTAZIGUE*MC9>@.VOD!1 MU5!Y(_^;WI^Y>?ZE)6ZN,C1-NQ\WA],2G),L3]MVKKBEVN9FJ/*=G1I+PO,8 MAT4$$TR0_'I@JA*W$AO3*YD&NUSD" +;*YSP.J M1TQ7P^29?5J$6@/;_U%7 MZ^?FB_QUMP3[LEKT*Y%]RP&7_AJ72_4AW/=\]=L MC.3P?I9#$#W/?0?X&>U?:2)CM8,UU/9H>UB:3N[O8NF^XEZT8G.)]#\X>^1_ MX'*A_N.MD)/W"Z=*-*,4)6WV->7BMQ&WX"1 7!20YC)V0'&M#X=P/^:/XTNM]BY28X]K/Y M$QA-T\,6_Q&T/XQ-FXQ&B"VH)EHBUGVX*>"HEJYT%@=9* HB(,JR&"*1)+!( M.(=YI#21B, \T5)?[.UE:DS?& 7X)BW@6<[AY?6E&UM ]0CU:I@\,^-IR<8; MT-CHKUCC 02>"C6V?;QJD<8#-X<*-!X^;!E/'B31?RD?OZ_NQ=^6[6V@&>:D MX%F0P2S"8IY$!C)M??V-C4>.+Z&4RMS827@6OY@M?/4 MB[5FK.4*0=_!T^$-FQOP98.>-+;=H7(8 .F XBJBZ>UKW!!%Q^V3F$/K):-;JU+Z%K?5@:S[8V0]V M#MQ8)!P:HCV\8^L/:-]1M2'&'G(2[;"SVN(U[&JT'5\["/8W@"U;L""JNMD\ MN%W@^8LJU&M,21?>GQSYU'6UX-5Z>9B;N[';@&LN :;!*@ZP\LT?_3#YH(L! M4.R(X5*CXU' @%L'DWWH6?-I_:UFMW7]=EVWM00U)_/A6U.;PM(T^6.K0+NQ M47_>'B$R/%OMP? \1[_5F#77M4WP,)J3YUVWFHE'38TV_\Z[L#_K+CQA7I/^ MG5P\K%YN&9.#O+R3_[ROOU4_%[,(AUG&8P[S-,@@HED!"Y[&,!,B#2DND BU M5+9[^IC:%&W-!)V=-T!9*G$$RE;]JO27 .V?LXY@\OV!M4'(J"[] 96=>DO MM3E:7?H!I_;KT@\]>IV4YMUBR6KV?HX?;70T=V]/;>:>RD/>58ME*0'2+3#= M@]3PQ_9ZD'QOV/7@ _Y2QGH0SCQ%XFK5S+TF7T4R\]2E2WJ99YZT+(5!OW.V MGO-[T=6R_\*?58+UXO'#0E3U4_/]?_/2_7*WH N# J4%%5#^(X0(A0DD""50 M,,H%3W$L/^%F>B:6EIA,@W&$353.>GLEK=J>T91M6@O#*VQ80<-R?/2. T; MW#/U;#Q0J5Z=F6#K!-CSXD8).VV>^.N;NE\ O,B>7(FIJ\(=EE:,6]/C.JA. MRGUVLQULC =[UNN1I>E0]).C1X ]D^$4L&45 M;?)SVY]> >,# R:/M?;GQ1*Q]G.B7FZ^$6$8)WM5S Y)F7+1 RVM4:@L!J6^MBHZ/M:PVYM;^Q-?BL M_<[60\W9JGY:6&UL';P\M9E[L&^C+.6RUR>E'&:^JW6(DOZFEC5 8^YI'6#C M94?K+ Q7;6@=MCCZ?M99A\YM9YU_T&XWZU/UHSGR^[!X]VO%%XRSA[IB:[KZ M$ZOSP-7++:7U&L^_5/.Y# R4!;,09T6UB_;'&RE;>;67];$TW5N2U&1&]O2O/*'NFEXWUJEC"QG[0.0 V M'H#.!?"7<@)T7CCN=MWBE M=9?LXLM3"U_VS /*/M-\EV-LAH.6JV'QS"KGLE^T4;+(@KF Q!7),,QS>C')QD#PW%IX;;FF8Y#U @^GP'G?$3Y;GFD+Y,, D ZJ,ET QULU MIN/^7KD*TP7WAZLO77K1OEQ)5^6ZN=JZO%VOOE>UDMN8105-. LXI!'&$&%$ M(1%%!@M.1%S$.,_U-BTU^II:"'%8?KVU%NS,-:\^<@EC/6IQA)QG4K$%S:J" MR <#LN%7.II]-H@ RZ?*P0R](H;N=V="N.A)N,L$HS$12X@2SE69]L4%HR% MD.=%C% >)A1I9?.:=CPU.GFW7)5/,AQDX#TNZ^:FF6&0H@TY$QEB'#-(4A9# MA B!A**Z3B#_?T-4]R+&>J3M SG?!U+#(KK^1'.'\/$D MEGNQVU<5R1T"8T@<=_!].^97]-6P5WN(?KM@>\KNGV2 NJXYNU]\4?W5JJS> M@GVN%O7FQT:7]V.YX!]6_&DY$SD2@G(&4QPF$!&Y]"\R^8V(>"1HG*,D($8J M)TZMF]HW9/?EN-EDEJ@-^/UR!QL707..W'G5/+7O9J,8M 1_*4]!XZIA?2JW M?P1Z9/IJ0^N9<5]E5(VIV@OZCOCS/"$,9UDNXUA,U!EL#$E 0QC%:<;D]X)F MJ=$'PK#_J7T"=N;#QGYPFFSXE[+;D,]-1T5W.]0;UMXW1Z^%V6)[U HL9YNE M9KV/O'5J!0)&%:9@$89'QP.R(V(>9$SQ5WGFI2I76&S\;??FM M2K'\C?J9*D'RY\Y==:5P=\<3;WW]-\/]2!]_#9I[EZ\\PIX9]6AHMPX"Z>&A MU+SZ=2,V_[ WMK\I7T&Y^!WLU%9W_OK1I/0X(*XV5GV8..XFK$>03S9L??9E M<:EA/N^2Q/9RQ#:5YW7O-O2T,;4X5-H*SF3%&6C:]2+6S[(NP?+-E!=P G^U MIKJZ[J"!AMVMA[Z&Q[O\H.'>P1T(G>=]G-U_PJONIS_+U?=R<;_@_R5#G8/B MBK,HC](H2P.8)EP&E(5![T5SR5SP^E[\457LOO[*ZQ\EY6^K)UPN9CQ$(@NH4,H/6(9-(H"*@-PQZ M,9%S<#U3AB-H(:GKAN,/,_?/2/!QDI@@IG1%!Z& MQ&H>]S0[VF0>=FU_1FL\?:UF\.:.XN=JQ9U=0?L_.F$; WC9]OQTXNH1Q@5SWSE;%<57 M^5^70B6@5(O&B)T0.$^*!">$0H)3=;D[0I)T'>%@V3A4FMX0=SVX>HS\BD/FF:D[SV[ UC>P/X [[V[ MQC^PVT'9=]&K)+RG 7#$[:ZM&Y7S/4%[_"WPU8UE -X5IU?G3KM5U%X*P9N7 MW2,/^$7]IV9]WU;.W*6S+N]7WWG][3M>W#<%-)?_R9V"[*FVJ6(E>\]U.( &"/DQ M:RL9[V$!&C# 2J(!.CAN0 N($GQJ(;G1D:4P7Z&\ZH"Z6N"\CA/CKH]>=:!. MEE>O:XW=E[=)TEW*3MY7]=MJ359B/=^L#FIT+->XOGO[AA;!R-'O-K;U:CLI^/T,4=IO6-[!8PU M90KP_ &7DJSN\',IB6K&<10*'AISL.J1QX.P/+-&SN2;0+VNGE[FZ7_-;L)U8,,CV10M+GRAR*<\[R(("6QI(XP)3#'D?R1I1%.4E5NFYBMSQU9 M-KT%=[M:HON>@=_FS47 S8U/PTN86!\)PDT(W+@TN$-S9OFTJ9* M?,._;D#G'-CW3NW-M_YYN9KI&'-'-.K*JE%IUS&4QS3MNGE;;1#!Y6*(M7W+ M+KN0_@U?<%%*NJ8L)H)S*#"3B\0,88AC58(&B3R(,R&B,#>CZX$>IT?#&X,W M]9%7^)=I@9DAE/7XU"%RGGER"UE'CM+6W5JQ,]?A4E$3&&>"(?V]C:P9HN7Z MJ6R(WFN61S\KO&IVQ^Y%V\'M@IUANFTXD8HDCWD2PR3.%2UM*2Z5&L_/O.G%%I[R!<3:*N@'U-^MQ+ M]-QWIQ/S:%P9A39UL/1/F+U63(4J=: R($FMYLSO,WZ0P:U\CW-CG9/;]BU_7MZ&D];IAC,Y]5/E:)\)GMA MEW8R8XSEC/,8$AID$.$\@WFA9&0Y)7F49%G"L%'&@5:W4]L9^LB7RW\#>&,[ M$%4-:)N/H\X%3;>E-;&/1$:+C&,8)DJS-\,IQ$(5G\\+04)5EY'GL^/>!FG/,]9G(K=@KSM*&P.F,T;OVKO?/@=(+_AU#[GG;[(9T@Y3 M@(R ?/*@1>/'Y8-)>45"3\YJ7[ M97N56P@220+#DL]4R=]$?NX+&N4P2Q!#),I($ID="YG;,+4 8/_6=V0%??\0TSXO\CH/O,R,O0W#%E7MC$)U?M]>WX)6NVAM#=/F: MO7E3MF?H%?W'A^5RS=G;==W>YE31;7/A[ORUE%G,TXB&60-WMX%D3"A*8 M)B0*LXA1$1FE95O8,#7"5-:W]^0%6+:UP!=MAAY5_WD^[Z[._]8Z=?FXPMD@ MZ9ZI>X7>-T>VUT);^S?5UV_.7Q;<;>#< "SDWX0Z6A*\7*UKE_?_[/%T=NYN M;L'(9^_6$)V>O]LW94:7^+EZG'W$]2/_2K'DY^=5*?]_I[P;D#A'11Q#CBF! MJ(@"6'"Y*LXHI9E@88:$%A_V=3(UPFO,A(V=H#-4C]-ZD>PG+5?X>&:EQD)P M ,VP>K$^1JRBS57/EN9]8W70FV_,E@UF56OKOU[/RCH@M+2KGFRX- RCI.'3 MWG='(4P=ZS>,J/6L;>KV?BWU8VGXVP7[#SYGWZI-O8"[]=-ZWE2*^YLJJ%L] M+I0FO#J3GS&8.TM==V77R$GNCN$\38=WW8$9I3->SMXM5K+I+_RQ5$FIB]5G^?<_BREG M<<(R&.<"269&!.:<)5#PF(91@2,::57GO=3!U BVM1'LC 3*2CV"O0AB/T^Z M@,8SW1FBHDU70Z[WY#;(5UO"D?_8\ABR%W-K-^\#GSQ)M/JWK^C==/ M2R6B=_J"DD?KF%JU&> \3"%!W"XJMC'<9NCE_NXX-2Y@A^7'K7;.?FP MH'5#NGA^5ST]58MV8_KPFOVIKMM>JNE,9)0@A&-8)#2"*$U"2 J5JA"(C*4H MQ;E9/N+U)DV-.?[DY>/WIG;E#U[C1]Z)K:G/WZ):M(JAK7XH>%016*M7CY?+ M]9/\!?_%:UHN=^=VS>YC9;K9XF"D]799QAT_S]RVYPQHO>F.\$Z43-Z6\W6S MF?)N.[@#AWP.\[_<8>YH>\6!0:/NJ[@#\'A#Q6'+HUT2^UG-!,69$"B%!2=* MB"!$D,3RQQCE7*0ACI/ 4)S*R@X3*ACM@ECJ_8*8' ]LO4.JF=^O>9RV,_J M5:^&[7!\O8MATH:I7PO;P>3@4MA>8Q;+U$UQ68.B=OOO3"VLW)4B/JY$?&-< MU>X &XU%J24LOE>B%Q%Q6K+NG/=VZ\_]AL9;=)XQ_V"E>>[WUOK;E'.V?"\- M4.=']T+^EV=>KUX>Y,"M;A>-.OBS&K%9'HF$13F5$0>*(1)A ;'@"HP&_0]M9F],1VH@0-+:7RS5_K4>-HHY &689X9#G%$&41!SFN(AA1$4LLE3$86QTP<>995.CQI.\HX\6MWW= MC9L>-[[*:'AF3O>)1VZO1#K'?$J)1^-K)SF'TTOBT16:2BH5XFV72?RPN9C] M%J_XC%":4*7$B0GF$*&0PIP',0S", \CE*,XU,X\.MO#U#AV8V17ADK=!P?* M3OWDH_- ]I.E$WA\DYXI,D8)2+W>6V4@G6]QM!2D7H?V4I(ZC(;%>:!SU-;6*_J>JZ^JFJ M)8!J >9*(DA=_VMLM5\_'H)KOEJTAFS4M6%C92..VP_758O LU!X6/(=]O-J M"[RS[O8MY\Z_8+X5W.QNT=4:S^+N_G:V MT7OF5-*F4=ZR-BFGB7,UB>/TS:G1Q,8V@^C_ B3#$_\Z-#Q/\W-9RGK@&,WH MRQA8S=\SS8TV6R^[LC\W>YXRGXD/G-=_U-7ZN;EN7R_?+XR_Y3U-3&UN*E-! M8ROHC%5*Y-5J49E,U3[,AN>L([A\Q_$]2'GX+&N 8C6;^]H=;5IK.+<_OW4> MMQ1+I;3= >3L+7^N.2V;&$S^>\Z;0F$+MI]$Q*C#MEH>I1GA^D&;+UJ!N@PO6ZLXV_7@+O2M71EUKC*EX[!/-'&=-V^'>^W M6S_JG&=;FHL6&<%YD<,TH1PBEB>P2$,"L< BI!@CS(3)=NYI%U.+_?8+S]L6 M0#L#I!Y-7@>/[_T8,V2,*>NR\X[(YTP'H]+(90>/":'G2,$*SG/'4["K"A9Y,_H['N6RP-;3Y M!%?*U/_/<)I? %5SKE\/E/<-V'V$VJK4@TIFYM.^'P=7<_]"+^,20+^K)RPP M\+CUZNY(='M?FGO'/(V\[&['(J8H181EL,@C&0F$1 8!$4(P8''.0YX1$FKM MSEYGQM2BA8OZ\\9%,NQ&17OUY1EK_VLM ^W_3@8;.-U^XU.IS;=>TM-Z%6^LQ\ O6#&-:R>:<(!HN8R] 80N=*=U^ER7*%Y M Q!.E.5-WK6CI$V9XOO%F7M4N^.5) LR$@099 D+NR,T6LC0@\0)HV&<9#2R M.$+3ZWVB!V1-W6\Y>5BY?*Z6\MM;":7HPWM47ZX9 CU:0.+[_? M+MB'1EJKD=!I2["O9ASSN"B25(9/2(9/##%8D(#!((D"CFB *#&Z9JG1Y]2B MIYW)@$J;S=A(!V,]*G*,G&<>V@--F=OL->\9K.XT-B:[8QX#?!S1CDZ/HW*. M 03'A&/RJGFBX>=J\64]YV% DE!)J-9/BQ5[/\>/NFF&%QN8&EE(0Z&R%"A3 M87B0_ZID9,N%BJ?TTPTO(]?/&LY \\P3>GB!OY39CM(-!V&Q2C:\W.IHJ8:# MCNTG&@X_[%P\KU$BF"4XB'.<8R@C![4-PU*8TZ* 29&).,RB@(K$F4Y>T^7T M3JE;388[7-@2QL14\ M*F--R6$89EVB< J==]+HK+T!6_@:@V^:"\J5 !NC75*(-D+.Z&2XQY&I11N" M4YK1?]56NFY9/C:KT=OE?W#VV!P@+5=U(\/2Y8AFE"&"PPPF2::*J+,<%D6 M(,Z#-&=10@4W*J*NT>?4-D!V)@.\!)W18&>UJ>[<,.AZ!.082L\$-(2BAXQ= M X"<";L-]SBR9)LV!*=B;/JO6F;X[F7&O:W69"76\]/\N3]KN?ZZ%V(Y$Y33 MH A26+ X@RAB6-)0*,,?P5)<,!X49II-AOU/C9=N&6N.09> ?EF] XT,EA,-$7COL7&7P&O8^;NJN'30G M.;N6S=BQWKNGYWGUPOD7WERD_%AB4LX;P)_!=$02I@G@@" MHQCA2#"N:MC:VP M;HT%>]9Z.*K6AL81+0WW-RH1:;M_3#WZ+]JJ4GU8L*;LLY$@5??2U'A!O_KU MJ?_#A\O6KGN>RF>$IVY4&G_YHV1K/'=4_?HB E?(3FU:&EEQZLB!4[&IXP?L M/N3-54>E+%?S[_(K5?[@[#RLNM%H>5WAYP\]$1*4$QSE.Y MB%&):$%*("YH D.:,IKA/$^07,Y4*SS7^\Q?:8_19-]:Y>_/OKW'2_?] ;_- MFS10CNN%4K U"P.N'2^](&'$4?#,.^T '+BR$;)LTW&W6\?2I1O0.752%+/U MRUVHX0A@1X'(M=:,&J8X@NXXB''5K.4N=KG$CX^U2NN7':C-\1]\L>9'%Y % MX8*%.(=IFF"(,*40TQ3!6&1Y6 2"D,RHLI16KU.+G_:,EBN"NC49,+S"AGO8 M6I!K[F*[!M+W/O:!O>W!68NCS]O<1BBYVLS6ZG/<[6P3&$XVM(U>MKS 2;]S MME;W&XZKE^SJFGS<7B1$F< T#S/(>(8@$CB#F!5"_DMP6O <%Z'1502CWB=' M3OW%A%0%O&LN=AH-C!YU>8/;^U'<<-DF3Q<^;1!S=?/3J.]QKX#:P')R%]2J MD2N3E22G4KDF6]=[WWV2A!D*D%"*=F-SB- M;9A:\*0V8IH:P:9W.!H\#G;!>C1C9]3AZ'+KW/FFN[WLH5!5.KBD8>0Q0I#T0N8,:I7/:B(((Y M8QR&81P$.$LC0;6.,$]:GMKTWAH'E'7Z"JZ'V:%(;$0M07HH]R-&5#^M4/V.YV*@L@9( QT1,Z];5D^IU4Z4_]/22K^ MP'.E=G:[VNCR_">>K_DL2(J(HH1*LL*JW&&$88'C F:T"'".LR MC'*AM'J= M6I"QU?!3"HB [^PVK*VCA;@>)3G'T?<>Q@;"YA][)M\ O-II035F.ZS#8X*2 MJZH\6GV.6Z/'!(:3BCU&+UO>[KV8A:!61Y_PJOM)[>V6B_L%_R^.Z_>XK-LI M0^0@Y 4*U/)&5;"0_%3D!86,$1HSEB"4&VJ=7&?0]&*NMVO>'(0T(M,_Z7C=">J0V'NJ>V4XC:^H&*,-;PKL!G6\O[7UAVDH?2+;\*B>8C-LVOVYJ MQ]\ Y3:0[CN\..P$>5?WB*\S9MQKQ4Z .[EE[*95R[S4547_\84_R\GP'2\Y MD^3_A:_*FK.WLMO%XP.ORXI]_8[EC)DE$4^I*!(8Y0F#J$B5Q$(804)$E/.( MHP(E%EK^)C9HS?OQ%?T;XT"]]4&R0&NO83*JR6CHT:QS<$>J.J+,!GMV-PS9 M60Y:TT%K^R#4YMFH%IBY2D8UZ7K<7%0+4$Y246W:L".V3[C^!V^N$^WX=+L3 M%$9AAH)(P((5&*( M0[D"SS,C6>-F3#\Z@#BBF]ZN1J47':>/Z43K'3/ZP,_5X^QV_;A>KB182:>[ MAG& &$X93%!60(35QIA2O.,"R?5F07G M,3NSK8^-8)H[0/*0#TN.(]9_^2_ M&@G?1VT[$(8%Z#308!5M]-&:O!Y_J!QT,Q%TM/FOU_N6\-0C#8N%890T3';^ MI5&HJ]?>#5?U/^0B+;&KK.TJ(_%L,44PUZG^[,+^U^U3RS\UJ4M?9;^=*IH01HQBE(!J8AD M.!1S#/-$KJ82'"4)$XS%26&:6GC:S=0X9Y==K^5_;#9O[]6JYP@LU[C,:TC03&8:I*OV*PH1#N4JBD*0T M1%F$TI1SLT,Z0PNF=RJW<0#@U@/ 6M/!LK$=5#OCS;C%=&S2/.%%$*BSTY!# M%"CE=B0'B+" M#QVMGIYDF-2-G-J9?JY6*I\-SX]^-]JHZGU*/(Z5YV_,=OITIH/6=I57V)H- M]NR^ 9U'[KXVEL@Y^@R9]C[J]\D2FN,/EVTSYFOH]]+3:L&_<%K)OE[>_7J6 M?VJ=^,^'IV>U?5C25G#UQ7A%;=7XU$BQ>./=%?9-N!/[SD M]HZ[9X(SAMS#*OPJ#*W6Y'8]CK9"OPJ0_?7Z=0U9'H'*#E_:,Y+WZP4[23Y% M*.!!DJB+0D1&@SFFL!!9 BD+@QQG*8_,TGT'^IL:QS7F@J?&7B"4P89'GP/P M:IY^N@/-]P%H@U=K*FAL]9K.JPF,JX/0@=[&/0O5<_WD.%3S-3LV46KC_+3Z M17>^)1)$HBPBL B3&*(D*F"1! AR1%3UP8!3S$RXI+>WJ3%)8RS G;5F+-(/ MJQZ'. /+,X.T.)VIG..AQI<6)H[(H[^O4:E#R^UCXM![R8N.UR["+Z(416&2 M0*5, %'*,IC+" 1&HLB#,*0LCI!#\:[)+KTZNV_VID>[Q;05.6HOAS7_;:\N MB%-9*5,-01]@>R8C#0$I3_*"IF"-(Q7U2K*#IF 8BD*Y6DL]X!>55[/\5MW2 M_UZ7-7^HJV=>KUX>Y!_5ZG;!U'6I9_7(C/)"X)"%,$"92BZ-$HA31B!CJ?PW M3A@.\TV6O!Z5Z7>N-;\.T^,]T]D=?BZ5WFE3=9"5J[5Q4KP!]'IDY1C.<>AJ M8[2JG-&9#39VWX#&\IOFD[ UWAUAF0/FB+(,.AZ5M,P!.:8MBQ9LB^[*]N*Y2NCZL.B^G-U. &=Q&F."81:JY5$FXPN2$@$Y MC8(\9"(3J58M/ZW>IC;1=\8V&8FP7(!-7&&6G*V'M5X8X0Q!SS1P#7CF=XMU M0'%U=;BWKW%O!NNX?7+Q5^LE2S)I]@AF@B0L8I& *,U49?0XA+A("$PPH7$: MHBAGL4DIP;99(WH8H2+@-]6'E7)4!Y/FA#=VWO?,[O?8?/(>..AJEK:-CCL= M#QPYF7>'OS6/JV]_XIHM[^;5DG^K/BV>2U7^P+">;E\;4_O\FI77[45G.*AV M!8SON=>8"1H[@?RD?BN?FJJ6GSX_?-BK4++T5)%7!R6K\+NWX='"?-=5;O5++&]CHS"Q%/(I9 P57B;,@*6*""PB(@\B.;1;3 @:[.ZD'+4YOO MC7'&5\)/ >N?[%?!X'WIK(F D=;J66^MM%8/6QI-:_6L _M:J^)?>?VCI+R5E5"Y5X^+II4V08=C.861 MTF:-.84(L0#F689@G&(NIW(0)02;+:G]&CPUFFA\@8TS33GNC3>F2W'/PZR[ MFI_.X/D.71X^W'6B.?!-,WK=;C2XK6OY8%.B3L4MM.;RUT!4JMKW<@7V?'*Y M8S .\,XV'3R;._*^Q3C@GVY]C-2OI2H:GXL/"QF_JQ*-7_A2=L7WKFVR I,@ MCS(9"(H$(L$YE/\E@6D211GA<42#Q*@\;V]W4Z-]:1GL3 -+:3DL-Z:#NK7= M5/6L'VT]_G:'H6?V58:"K:6@,_4&[(QU*&2F!8HKZ;+^SL85*]-R_$2>3.\M M"T6A/ZJ*_2SG\R\9K+T#,4\O]$O.9E/,1@^ M ;-VW_-4W7CN,&WDHKM69U>'+8UV6'76@?W3J?,/7'6?Y@M_PN6BE4P65?VD M5BSW9%X^MO%>1(*H($C +"54+B@(@R2+!05,69*11.""$JV%P:4. MIA8L;$TTE5,^!Y[&3L>5D'C?^MQ'PT97^1PL!CL=5\(STD:'*4QF6QT]&/3N M=)Q[;[R-CAZK#_8Y^IZS"[@^+&CUQ+_A7^IZH>1)OJ O'\L%_R#[6^:"OY3!H+'8,"V_ M'VN],,H9@I[)\!KPC ,F+5 [#\J#X@7_AS5:NV M=XFBNQOW"*DRK$D,:4YBB (201+R!/(,1:$@/$I$:K9VT^AU>BNWSFCP8=&$ MI>:)13I8ZU&*8_R\1UDM<%MS]]*1/2D:& #D[+!YN,>13YRU(3@]=M9_]:HJ M?XSS)\[NZSL\GY\M*<IC8W6R/!UDKP5VNGX1[N M>43U(H*K\TA,OZ>]T+@Z)-]OH]1O\J];AY_>/L?MM!O8'__5C45]'Z5 M2VW!AOV7IC9W=_>IE ;!_GVI?S,0;CB 9?@K:XV(YUEZ&0P9@4M3'7UPS[IO MI[EPT-)X(@OG'#A053C[@.6']M>*+V34+*-GMJ:K/[&Z:KIZN:6T7N-Y]Z,, MG3\LEVO.9C3)4QZF"0QYFD*4D0AB(9?U-$<%%JQ($VZ8P&9FP/06\GLR7KBU MV7 =;S@"FE]L;ZCZ_I1WAH/.:JS^ :H+'"X9:FMNI1FVE_W-X^;(6-]XPVVEX<0E!KQ]$A>"-L M0E["S4-507UL;#/Z,&);D;LSW M7I"['S6_Y;@O]#V%8MS]L&B6XAYHQ%Q?]9U<>*]>[MI;YMO\QZ\KO%HO9P5F M/":P_A8 M+143%(A'%,&H()D,?9) DD"$(4%1BI,<)T6&3:H8G.G#B 1&*&FP-1&4C8V& MTC%G0,P(#PL<%U DJD)O@")8)"K(1SA*A B" !GN.EX)X[C72*HC0,%OGNG.EA7,&=RRZ>*.WT/&K' MFN_+1;GB'\L?*B%1!F>/)9GSML[%^_6J*4^E./I_FE/P=ZH4XY)OLW4)*<(0 MLP)&,9/TRI&,L>*<0URDC(0,<<%S,V:XQIP)4@C]SMEZSM7"AB]7Y9.Z>0)$ MXPC >YZT12Z[ \.22=HI1=G4MRZW*%B5J;EJ>/4(:JPA\\QDK1NP\0/L'.EJ M)C=G)(TV4'W +^#'\D#T9W=U4?_\90O'\"F+#1*> M":<7!/!78ZZC]L[[?*3[(*\]^LE^6"+Y== MU+]L,AD#$B4\"'(8B41=#$OERC'A#'(I3=*ML6!C+=B8 M.Y0-:0&U7JSA#$#/3+J;+$/;"/6> -*0"*WA\SW\S M9.QIX,1YUW/_X^OH[UQV\.(L/WW2/,!^+^VM%EP5A?G!ZY>W:_ZMDD'9?Z_Q M7"[(6_'S>_$-_WK#%UR4DDJ>5KK!N$W;4YOQG0]@XP1@ZZ9VY;$?:L-#Z5-M M7#'32+4>B>%U@.]!\+U)X0M_H^7$-2!:+3VL.AQMF7(-'/M+FJO:<:,JMB>9 M]5!7L@^UP[S=#\P)PGE0%#!@1001C6*(0\XAY<7_W]S5[#0,P^#[GB(/L$A= M?]/+)#3$"0D)N*.D24;%6%%;X/5)]E.ZL;5)FX1>=IC6Q/XR?[4=R_8H21=A MR#7[9&CM/\'\+MZP"N M_7M)1'&-QW4=ZSX+12?)%KYNXJ?6G7Q+\CG8RWZX M:[*2:1T$G*4.9=U[_VNO,B58^KJ6J2UB:-BZ5O[T^@I3<\Q4AXJ/',:NFFXU M YQEDE'%S&PNMA\:<]/7'>=K^U7KG;QN(JL7[E$O2KT 9MSW M9?$SASB+4A@Q/^ XHC%"6J.:VXM/C01:]96 %&59?,L:9STOY 0\-2=C*"26 MS?N^V*[A,RO?P2X%(R*BO8CFG(1+BAOR 4Z6=OJ*OZ34^1O\XF^&&>OJLZJ% MOUP^LLW. ZA>\X_CP",LGDC3)(!L@;F(-Y(8$H091(0@DB!*$?=U;+=CKZF9 M\E%44+9EU3/E+FC5+-L08)8-O<'J1$R#3;(TX#!D_ET[.64#!97/R4'ED6%< M3RR3M38YJVX9J0^5-[*)WK[X0H[_KNHF8EXPS&DQ!1G(8TSA&BFPR:CI)D:WS1" BFE'L^,.Q8U)G(&MF6NDM*" M7^'GH%$,BB 82M6:*K/#83BL+S."LB$*'">+4Y(T MLYC9I9]!K1MO\SPIM[ M6\Z.WX@/@BNVG/T 4$L#!!0 ( !9S(UB&AWRSJF8 *S#! 5 87!O M9RTR,#(S,3$R-5]P&ULW+W9DILYDBYXWT^14W,[7HE]:>ON8Y)R:=DH M4QI)U77ZW-"P.$(\Q2!U2(9244\_#L:^B@M^_E!:5RM#$2'"EP\.=\"7?_L? M7T]G/WS!Y6JZF/_[7_A?V5]^P'E:Y.G\Y-__\K>/OX#[R__XCW_YEW_[OP#^ MY\OW;W[X:9'.3G&^_N'5$L,:\P]_3->??EA_PA_^OEC^8_HE_/!N%M9EL3P% M^(_-/WNU^'R^G)Y\6O\@F%!7OW;UT^6_"IE1!9>AI"A A5S Q10A)"4+0X[9 M^O_GY%]9H>]J7Z X:T%EE!#1"TC%,2^L5&C,YD-GT_D__K7^$<,*?R#VYJO- M7__]+Y_6Z\__^N./?_SQQU^_QN7LKXOER8^",?GCU6__Y?+7OS[X_3_DYK>Y M]_['S4^O?W4U?>P7Z6/YC__SMSL[ M2X;/BY._IL7IC_6'/[Y:$!C>A9-*ZN:?KL\_X[__934]_3R[_MZG)99__TO] MA[2DD)P+71?\OV_^\8\W:W]>XHH L^'U#7WC\C/J:KO3@5_7.,]XP=O5"K-% MNO-+LRK9Q?+J7\Y"Q-GFNY.,T\GFDU_$U7H9TGK"&%J"D"%&# -E)8+3:,$' M'G)D-D6G[[)=25X1S1M%K##]]63QY4?ZX!^K*.H7&YELY/%@N0NY[$?WU<[[ M2+\[,59&QZ,B;;L 2A(#3B>$S!T:JW2PS!]$]NW5[E)]6Y\OENF'Q3+CDDS' MU7)AF1[H]BYH+W_CQ\]A21\$Z=-TEJ_^=5DN3EOH:KUH(+D+M1"Y?_F!N"ZX M7&)^Y%*XSHE#C )!,1X@ M2K)^0NJ((>;L0FBB_'L+;X4#T3\.#I%G)Y!XA\OI(O\\SS_1(3SA.B2C=81< MLJ_3&?X M^]EIQ.4DH5+9E 166D4,! ->TU]SBGG^:I%Q8KEG06L)+DD*JJ,F8/LBP:<4 M-$-1!#O,<=B"B*UP8GO'23LY=P&;C^'KZTSBFY;IQ2W%I264ME@66(0BE;PX M#$.V&3*B5\&@S=HT ,P3RV\%%=<[5%K(M@N0O,B95+"Z_,^;Z1SYQ!IDOE#P MQ UW9""3!H\B@8S*L(S&:.4: .21I;<"A^\='(?*M"=@O*(OWRX_+OZ83XKE M6HFL0%;G227B(QJ".H]2":,MBSZV@\7-PMM=7;'O!!5["K0G3&R.QK?+=\O% ME^D\T<8E *M521;INMQ)R/$:ML*M]JZH[ MOLH\2(0CJ_\#IK,E09>+^'&ZGI&UPI"5C1RRJ-8*.8-8"+]:E2*0A2SR8;O^ M_HK;J;_C.\R#1#BR^C\N0\T_^7!^&AG2VKN"Y>X"JD20=GJXE%E:4N!I+S MF?B("F+2$HK)SD6+0N06CQF/K[X=-+J_@FP@VBX@\GI.GT;BF'[!G\(Z7+(U MX>A3,=R#U$F"$HY#<#*0$43.,S+'0HM;ZL=7WPXBW5]$-A!M%Q"IS[C+5V&- M)XOE^41@T I# LM% A4)X5XI3CXQ^4&BD!U4A^7-/;+H=FE3W=]![B_(+G#P MX33,9B_/5M,YKE839[AEF?PBDVP!)6,D47 $F:446? 44XMGBCN+;H>#[F\; M]Q=D%SCX^127)W3D_;I<_+'^]&IQ^CG,SR<82W0F&9"\<%#&53>)>4@QQV1J M*KIM<6(\NOAVN.C^FO%PP7:!CP^?<#:[IEX:RUW)4-PF]\MXB#D;,"XI$H9/ M7A]V[?1PS>W0T/&=XX%B[ ($1/AI3>-8I']\^$1R6[T]6]<*CAI93WAB609N M($L30&'.$+R(H'C!&$MB11QV(?%M&K8#2<>WDXW%W =H2'++,'L]S_CU_\7S MB3%9>"[J6;C)&LP%@@D(7))T4D1'<7@+G-Q==CMH='QS>;@P1T;#BU.7^PNODV3\ M7Z:K%&;_C6'Y"WUG-1&!(N+H"XALR '23(,SA3@2M=H$K4E:'J3_)Q;>#@D= M7V*V$&A7F+BH,[E@(H?@F*AIH"P2$RG77- 00(?"M$UPT?$- M9ANACIW3<'&==H/MJ_(CQUQP3A'1.26*IX,@=--?.?=&H2\6XV'.Y5,K;X>+ MCJ\MFXBT&2S^[<<'ZAEFR MGL((1^&H-K7.3VOPT4IR,A)&KEG,_KF;X!)6<0.!RT4O=AO.UJNK[]QLNUWH MVM>H7*WQ8K4B^=YLIJPQ2:D@J9HZ+*0%EVP X2WSQ@D9TG,7&/MP>9>"<6K' M!T/"E<%I(.Z]30T9R[@X\ RZ2_^EZ;QFPS@B5VD+00ABHP0#3GH.S'N?F5"2 M/5LQN#]J[A$R+G@.T>VC,#E$S%V@Y558?7HQS_4_/_^?L^F7,"-V5B_6K\)R M>3Z=G_Q7F)WA1"GM,PH!O&2LYZVC\,UJ0&9=*2ZH(I][6]D'/5L1U@.:#H+ M8FAMC.@47S'U'DDRTT2NP25[K^=?Z%O5AE\);^)-D9;73<@+>8BA!G_DR8'S MWF09C#3QN9!Z'X!M0=8XW3&&@U=K370!KH2T3^(,5[_C^HJ)I!)31BB()10R M["&!=]&#+-E)XL#;A,WA] @AX_33&!) ATJ[ \A4T,_I5\Z)A8G$G+PCLC%9 M5XNN-#@E/>DW>L;I1T4^]TJ\#U)NKS].=XWA +*W;#O !86V&P'\?;K^].IL MM5Z33/9RA+Y-UCC=.09T M@QIKH@-PO5U_NN3A^J3E(<:"F8$.FCBP%'A$(3-94<&+)"\NQN<*:/?!TD,J MQFGI,1QT#I1S!TBY1WS)V6EOP1O+03%I@/">@3D4F+3RSY=*'!RWC]/*8SA\ M["_=_:&Q6(=9$VB\6RX^XW)]_FX62!SS7&/$S]5[KZ=M(.Z3B C6NTQ1H0ID M$+V'9%SF2-]4V-KG?8Z>'F*G)A<]S83>@VU)Z>ST;%8O[W]"(B)--QJAKV>X M4=R=/9RKIXCJ(= KPGJVHF] WOXZV*1_YC.9A/M M"^KD&;!<:NV#Y.1CEPZ:%.6-ECC6T=TCQ+2 M0V37YD0Z6,P=8.6"_HE$*10&BB>L%Q3:,O+"LHF@:[-\_[A_CA] M& =[E]])D!U$]F^F(4YGT_445^2:;\HG/BUF)/15==/7Y]>B*5SKH$P ;QW! M.I$=C-$X"-YQFV/M>=_Z'-J6MG$C_L'S@@9141 M3UP%7M ?LHB"(DLGG^WE=R#5.U7H4NNYSOM+Z$=:.ZLCBI9S*T3AKY)U+@' MX$" :JN*#K#UV./R%5?GUSP9R20O%J*IG952+."*I4BS)"]CI!_&UH\IV] U M[MWU0 AKKI .0';WEO0!-SS8^DQ9@ O$ZB(D\,03*.^+*S%JSUIG'3U/T;C7 MTP,!JZ$2>H!4O>9XQ/P&(;/3&<'90,2;8L!G(2#'4)P7UHEGYS?L?9^TY_DW MV$WV4"!J(/8.T/,(!]%:S3)+$$/EH$@!(%GI7FD'F4 MDFY<[0&O @Y700=VYXDS^!9#W&N6])8\LO>(N;&%S,)B3@'#<^7B19N036 MAF*UY%RRUJ;K>8JZ<;F'PUA#E70 L/N>X&VC'!WZVEN7B#:@R#$$7Q0)J:BB M='#9RM;5M4]3TXT;/J#Q:J.*#D#UC( LDUH4J4"KF$%QS\"'[&BW)&-#3H[^ MK[7%.NQQ[QA^^H#6JHTJNGA[N=6&[Z)F&*.T4I4,+B=%ME;15YI%VAO%1%N$ M<[EU/N1]&L;N&]%&NP\N+P\0= ?VYT7.FR?R,'L7IOGU_%7X/*4@(&7LM()!8--"[!V@YSVNPW2.^>>PG%,H ML;J3DEZF:;J>H'61K#*'7) L,B=FG(@4OG+!.-+1S&)K('V;JG'CNX$PU5@9 M'<#K%@<;CZ\V'U[B)YROIE^PCF<^Q3>+5MR@8=4C!OG#82E X7=P]7Y-V*528J,!Q,L'>I94H1*?P0O M(P2,%*N0'3;/-I$>(H5SW.AN("@U540'P+H5:KP+R[?+3<9KWD0=[W"YZ;8^ M23E'[[D$SG*XV"N!*P?>Z$#1K\LX9)CW%%GCEAH,'_DU44<')]V#YOTOSM:? M%LOI/S%/3-'&^$*^HA&:6$$+00L#*+QRDF&TMG5EPC/DC%NN,#RB#A)_CTAZ MO5J=$1M6I!B\5F"0U3Q41V MT7-[B$A,(ECT&8RN P0T]U!CVCJF#$T(W$;?^EK\X+DMO/DHN&,#:5\-]-Y] M^SVNSDCWBW+Y'DX_:M:#^]G/;MJ)>WLN&O7COHCJKVNNKC$G,>EHDX28=:+0 MG@?PD9/#4V1!1%N'_#3>G$^02U"^+DZN]8;TOUPO-G(R M!C4Z8"8H4$PIVG&,_LB:1Q8S[8W6U5)[D#GN.TP+Y#R\^1Q65UTK1")$)Z,4ID3;_ ;SUO+C MOK\,@9)]9=O!O=('G,UJEPV/ I-4HS" M*Y*.+)MSN%@($@N(@M&B+#&IP=)_;\@8]RUE" P=*NL.#--F7CVNUE=X+X)1 M3(L1O*GOAEH$<$P2#R9:J:U70;7OU7V'A''?28: R2$R[L*F_+Z8+^Y"_8H5 M'K.RTC'PY(:1><0 L6CRSKR7F0[APE+K1@-/$C/N"\@0P&DC]W[:2=Z8R:LP M8EDL+_,9*(+$U<]?28RDN^D\+,]?DVPW><@U %ULSN^KO35Q M4FCTA@-WQ8!RI=;LT%^CR)J"!*F*'>969!!VQGU[&<8(]J'[+L[<2Q8O=_-+ M\D%K3,,,,4+[%W2IC3VU*>"#"R!<05&RCRRVOMIZ@I1Q'VZ&@]]A,N_C+,;U M+6\S9V.+Q$UD0MXF)U2,I.&<;-ZZ_@X!([_,#'+H[BW@#DS+55[J M57;$R[":IIN>?[PFT.:L]5251PD9]Y6EH:JW =%. M4N_@)OP^$S]-9V<43=Q,&$%#JY*7YK40H'(L=8-)L%8%GX)S3+=N__0-DK:# MTW?UL-)2"5T:I$N&)D7F5%\$0&:1*03P'B+M%K!2"2NXQ!Q:WUL]04I?1ND@ MA6\'IIUDWX%A^CO6@0HD$\)E.,'?STXC+M^6!SDX%U:7]DX$;@>W[^J=;S@%=6'"GF#O!X=44D,4#I2Q=RW+U:+_ML%+3;+Y].6R4VW>KD_H%>NM$\H:TFOHBLH(:%BH#Q#"(4S2$7Y'(26V;6^J=CC7FNXA./A MT/'\==ON0?[B2YC.*IN_+)8?P@P_8#I; M7A1DYO]]MEI?3M&\J K73%GA;(9@9-W>24&4V8#33N4Z1Y/]\%@Z*A\YU &Y]" MUOE%+^1T_G$9YBN2]26O]6^S"\ZO[<%%OL5&#$7D()D$3;Y?[7'L\^?91FYA=N^&_>>+[]\,$PW&\"Q*K9*I7::U M41"2#E R+RQ)&TMIWD9W>_+&;@AW//@-I;..#_2_S9<89K5_RW\N9IM)UI=^ M_]OYK2!X.5W1CWZBO\Y/WN%RNMBX_\84);,K)%L2L))>UY[&J8[M2RQ:R9UO MG8(R !LCWU4/!;DM#_=CZ;_C+;!;Z'L1]W(CDHW@K.:@2FWA[6R!G)Q7UJ!F M_%C WYGXD>^[1X;[L+KNO9/,G5?;2RD,]!;]\-.'>W_^!B?MWYRO5[QI9&2< MJ UC(3"5+GJ?U:0%0)-5CA@T+ZVO@)ZCI\%K?K*!?+ @HM,)X-9NM8%9+M3VN01>DAU=?&(=^^AG0F;M8H0=.U:6?L*.&<,*"-1!AN3+:U/X(X2'(;6]_,Y M#CN(O@.O[^8R=O5Q00?\8IZF,[S#TL?%KM(464HKK8-D(CD%/C+PC#L@;X6S M&$-HGWP_!!_C^H)'1O'H0.C"C/Z$M'::;I1,7\_P\OGBQ6F]V?WGYOL3DS"A M#0F*M/6QPG(ZBU@ S4-0+J WH74VSS9TC6MTQ\?/8F!5=@'0JXHMW-SR4>QV MP8?0*3DKZ< Q08/*-2 SQ4-V@FNNC="^=LKHF>ZOI4FLWG+ MO=JHM6DI19.2>YT*!V%K(TJ&M=PHU!0R(6SAL?#[]8$/+R$/IF+7UW'/,SI!3,4'5D"R8$"5X.L;@(*054:'4>@0MP+I]FN. MV\:O+T@.I*GQS>?U:]6=0??O:^GDVT("KO^=)&;F\+<(^U'74ND;5N2;$]=>.V#NP.H0.IM8L M_R%O)'&%S0<%/TO0Z"-9!L'! M-^&VKTHZ-8JOYU](VHLE[<])CA2MV43BB;560#('P0L+!JWC)H2"NO6@NV<) M>NRS@(VUE&&R=WHIAV2I'UYQSKXVUMZ<@. MY(T^[V4<]+515S^A]$,.7Z2T.".'YETXKV9\8FWF)FE!7JTRU1WAX**6&W$: M1LZ*R:U3];Y)U.CS8<8!WR&JZ=2%(Y:69T3)S6#OB9*2!RPU52584#$*"-9$ M$IS4DBMG(Q^@M?XWZ1I]GLQHF#M$01U?LW4]MG1K#6\,H+DW\YLWHUK=OPJN)3SS4 M^F$0LNY")0OQJPHPDZQC-EK&AC^7=Z%X]($Y8\4K RFU4Q#?O;F_V9_<1^UJ M&JJUD?8G"@Y!A@ R('II"R-GYGC7B'>)&WW^S3C0;*&J+@_XS47]?2'2MILP MVF!*!0,./DU_@MDP M*7,!64H=-DQ!G*OO1QYU"1B*8ZKUQ-[MJ1M_ULXQX#B0MCIHJ/$$9_7Z=/74 MRU-)):>:A&02;3BGB3E1(B16C##I2:QE;JZ(ZYG;SY2)KQ'>:4W%RK*F(NRIII[" (.@A8<$P$$F/[Q/$= MR.NR-'$P2 ZDM@YBF0>[[2)[LUX.W/27F416?+8!P6;-0$F#$-!(,+D._1), MV^;]ZK(N;_#:$O]%M:5I_.WY>GNSQ.A&<]!('CC"NVV M0"&;MPRLD88K(6UDK3W(/4D=]PEQ9(,YA#H[,)[;2W5B?'$Z:@[$HJV5\1X\ MMQ:D\)HE9F**K?W+[:D;]ZGQR-@<2&G]1N"_3.=AGAX7I./&)BLTI%(+@HRG M#5>P@(A1^QR+Y[QU\O?N5';37_4H$7@K=?41@=\Z"-Y,Y[@B(6Z*@B;.&BM] MK)T."FUAFPKX6 QH8\G-<,%+UCKKXDEBNHROF^'@F;-Y?Y5T:PYT5]E<(FQHD3K).UO$M5E M5'P,R!VNHGZ@]^Z:J[I_7J]69R0^O"CCSDXPJ4A*7F?BB#N$Z%$#9TKJ(G2V MS?N1/T-.EY'M8*=G([7T!S2*QFDOG2W3I[#"MW5JZ.EB_F&]2/^84-P=O+<" M@J*(7'&>(&A'?W 3$L^8G!CJ^N]IJKH,6H>&72,E]8>^.GNX2G*>5[>9*ABX M50%!1R8HOM+$7M$*2K9!96:1J>:/(,]2-&XJ['C&[E#E=/?\=FM';1*"'I'A MI'@G%=<.!-_,7F>50-IH,_@G*!P/6A.;,F HG5NZ_;4C9O<>F1,#J2T#FZ3*UOU_^O3]I

7-XD 26ZPYP:[T5(DE#+*>:B^H,Q&0B,):B2,Y)K5O'BL/C=K#(L5/<[J+$ M W'[\[S-G<9U>[BK])5YO@X^7I.,;\2J#?=%*0[1>%7#86(NRPR&H19,)Y&\ M:!TT;DO@RBGB\R.RZ*H34/"/%V?D.LKW&UI&SGO8QAP/#"( ^BI(0*' M'J6X*)L1&)\6,]+FJAK[]7G[D8K/KS+,:,4=.&L_8G'S G!GZ6NT'W]*!"Y M0,CDZ!I6A!2Q]1"FNQ1T,RRQ$18>C*[97]X=1,$W96'TZ\X"8=4'M,?/6OMBS!'6"I3TT_11H#A9[!QBZQ\-/ MB],PG4]0!::0$YL5Q4BDS;UO;U44(ZPPU#N MSJUW^M_P-.)R@KQ@<>A!IKJU:FU-#,Y#]L(:;KE/O/5Y]8"(<2'30+'WG>N# MI-P!3%YD\A9)_&%68X#7\\MHX9(9[RFP<)Q!4CZ"BC9"++(V5+9,2J51E]:G MU+,$C9M+W1X^[:3? 93>XYKD@?GGL)Q3!+NZY"+(C$XJ#R[R0.982XB1.]!1 M.QY,;?S4^EWW<4K&S8IN#YX&\NX -2]2.CL]F]7 =I/'4R5$,2W.5],O>-&S M[I(QJS)G,D8(UI)E9<284W2N"^.-Q"0ERM8/0UL3-^[;_@"&:1"M= "W:Z_Q M#6V=S27;A)F@F(\>O-"JNHK$2U :DF8%NOY@(C>ALLT5/EC\[+WEG\WN0P/!331KOB .8 LG$23@ZR7L@Y, MX9F9C$FIUD6Q#ZGH;8;,@$ Z3 /=(.G.<+%)-$%8Q10$YFN_Z)@@2E8@&*/1 M:%]";/V8>X> WJ; #(>?_>7>17K 4V%#Y6;3C_QC^#KAQ1GAF 4AZ@Q-LVGH MHC,XKPH6C;%]1LHV=/4V[64XD#774@\>5)56+*S82=2KZ1H_X/++-.&%:.K$VI/YYE,V4II$&83V MVH WB<0O,Z_=S0,@4Y$;[BTV[[H\-$^]39T9#O]=H:.#W?+\H55_^/9S96[U M\U=FW?*WX6^[@;; M# S/(=3VO2'SPH$IMI2LO0637291%@'!%$M>3$(C)06JMGV6[];D;8?+/\>K MSD!*ZPZ6&?$4\]OEJS";/;KI?.2BFGRP'+$>!QQ"KNE!2A:R[1RD%BGV]2MAT0 M_Q2/3 .HJA\04LM)0H?8_-,PJ=HV0YK M?XJWIB;JZ ==#Q-%'..%!Q(.9E,+Q1,C5];[.GF'%4FA%OF[?23J_#G>B Y2 M0"?=&Q[)$BF19:F9JF-G:3LDQ\$E&<"PZ+D*67K7.F%^SSP=_N=YQME?!4V! MU+ 8_M:\][ND;E?E?ON?'UR^_B0M[>O2+SLHA-F[Q6KSE' S,R@8YZ-FD#PC M9$2G:@I-)J X9+RV\E#M(Y]OT]4@7?E"MC]-5VFV6)TM\2.)]>6L=NC-KF27 MLH-<^_(JCP4<=QIBH@C"6>FS:MTJ[CEZ.DE$;H621U*3VZBBS_8:MW9Q9>LL MS XT+%>?TM*^/$I9(S-SO-$V M,9?HW&C= >QYB@XU+7^;+R^>9/])CG/X^A+G6*;KU<=/8?WWQ=DLOS[]3*M< M=#RQ'Z>A9[:W0=-\0 M'4%QS=XR&QJH#V>GIV%YOB@?IL1[F:8ZFS>EQ=F\ME=ZMYA-TW0_;VC+3S[8 MD.W#02/C]G"9:R@J4:S$ZDZ+VDQ!*0-!! N9D6N<).->MYJ:@Q.3ER>! M-L9&,3=ME>J>G^=WMY1VRTFX=AQ6CQWL%%4&K G]%!70KN%&@:=X$[A"G3DW M$67KU\?6/(QK"!LA[T%N\YB*[M$\OL>>[DE:8F$*T$6S5P^K@@ZL81#8.AAVX@!M-2CN?MP]IGL5;7F8?8RS.J8 MM@^?L%95E<7R]")7?2]7\-L?V\ /W)'V9A'NE]I8O L$0RUD)FWOTMZDIS#K\T>?/0-]-&8X&@3 4?-024TM>*)@Y96 MYR)]C-C:0#U'S]AQ:AM,/+PM:Z2!/F_+KIW*UW,2UMG&J]S'WCSZ.0<;F&]3 MU\BB_!:6_\!U]7X-7WV_&1*7UV$/?O8FYT^_V [M#\W MC>S3%0$OYOG^>H^<=PJ1N40^-S.Z3N()'APO$HSD3%@C,IU4C??P3@0>:L&V M6NQF-VF7N^T1M0;WU: MP3I\>Q_KMOEW!UNMAZLWLD;U@Q^!!AUZA:+\>#D #&M5NY'U+8@B])2M,MCZ MSNAQ2@Y.R;SSJ3> Y-QCT%F"$(1%966 D+R!Q%!A88IIV]J0/$'*N!:C@?X? MI%TV$'F?-J#FD4XOZH\O+WRG\Y--G[F#;K"W^=@& SUVI+V1@;FU[HM;Z]9' MET=P%P4KC"<).I1(43@=%D%[R V_0&^D"Q0[-)QGM1.&XQFLX;#W6=GT@O?5IZIYHM;+/]?4S M35L.NK'>@L)63M*UBM^6NUTE-@V+7RU6Z]5-WXFK0?$WEPM6)E,\@N'5^:6*)=-1Q*+;>+%@FP.F0( @;DX\^2M=\8/@3M!P\$>G>Y]Y MUQ8CM5 >I&#U^H0KB%EIB,ABLH4%9EHGJ3U)S,AC;EK@X,%0I":"[]-F?,"3 M:@U7?H*Q5_Y M:*9D2>0]:]=X4SU%R\&5=O<^][% 06'1JJA:GN'H#QT,!!D1M!!1TD^L352QT^^?(S'(Z=@)LM,JFV, M69 _(FK& M=08MA:BIU1RB%!),8CX:89-K/KEV*\*^C^3+7=#S2'S66#\]]!1,GS"?S2CD MO,SD7_V^6./JS2+,5[=GFM_8B!M66=9&RF!!H^'U)5* )]:!9U88LHQ"MKZ, M.8#<<:=7' .@Q])E!["]8O"&E1>SV>*/FFO[RV+YB@B:KFL?_'N;,UJ!*L6: M#&V1W!Z6P4=AP4:6A'/&7"_RZFQ9=_>]C2&SD!BD@:1S MG1-/6R1F;S8]/X3(!'_>?+C>EK3U6_6Q"U:>=C ;:J;/ZY_':BSVMU+/?-H@ MU2 #VJ%G<_]M]-(85!!,M*!X*. B*=\Z*S1]P7WYGFI";@547\)T5A7[E]IZ%V6]A73D__RFL[]]B2>,9 M"T*!"UK4MIZ"3HD4(,F0BJ]]MK#U8\HA](Y[MS,8:(^FPBX ^TN8+C M'E[<>7GX#4-U8_+;^?LJX]KDF'[A]T5MEG3QUY=A-;U_6^!0!>V4 !V,K<]0 M";SP%KA+C,?B6V0Q6*>+= MU3"1,PZ&:163"B*%YHV,GR;G>RH%W 4U3WNIAVFDB_/\AAD*4:=K?#/]@@\$ M>-_+SMPY+37Y*R[5ZWT%T3@#KM1Y5]:JK(:[TMF:S''=S3'@.(P&NX+IXCDF M?SE;5Z&>UHRG?UY?X,]7]YUN)YU441O(G-7D)T/7Q@'UWG?5YV;E'0N+^[N?V''Z,P-BB^U0H6!SUZ LME# MB+J +K2CF"A:M1^=L2.-WU.)YB[X>OK<'T!W?9K QTL@#WB7?N[S!BK8'-"V M'5@6)XRWV60+QDH+*E=_D" ).?."3"$+KO6[T+AEFX\KZ$7=12>;%(*7YP]* M^5[4:3B7(X!_K=MM]7I^,MH9'4YIG?JD#PI(#_!'G_JL MI*#:>T3JW45F./?L)UF,X&G-]TM<"1QC@]RL\1ICG5 M9[[:_3@;1@>I*86.MUS+%%*.0J!7H77)W7#3G#8)]5-<7F2PXKOEXF093F]J M)"9)6]ITT0,RY+0AG0;G48'(Q&^TN3#;NO?)MVCJ=]K2#LAX8+Q:*J+'2&_G M0O?+?W" U3ITR>,7]S_'\Y&+_(6/EJ=8"U'5IK\IUGJ_!,*%(IGP.=C69JZ# M(O^)X,HGFVJ;0T'.@*W.@ X:,HNQK"1;II$0&FAM6;^PDA,(8Y!!ML9D9 MBZV;1VQ!UNC7MXTPL!A6(?UC[*=%+7F=L.14J/D8FOR.VJK,@;-"@?9")LVR ML:5UWN16A(V+L^9PV UN>^BF!\!=,D,KOUB_6TSK/1,QBK_A:<0E1<],V$SR MRJEV ^"%@].>#@!A?-293+]M?>OS/$5=0VP?"-P'63M]](6NMU]P>8N15#1+ M204(CM='.:$A%D,BR]XS2P$5FM;)*$\2,VZVZ5$Q=8 6.H#3$YX$A6SX>HVG MJPE#81DJ7VNOZ^A/DE?@3H 56"QY$X2)U@?CMV@:%UR#^5Y-5=$!M+X1#+V> MI]E9KG?9%-?3__+'\'42N+0DI#HIS610P67:1R0_N]F2)%C+6CO[>Y#9I?._ M)TYVF]9[L-+^%#=M#_M '?/2[>G5CW__MJ4DCGP5IU0V6@H/7-823]223G:" MIJCEGYEPB'[9>.7EP]%_R2M*F9[8!6S(+.1M#0=Q@ M[ZP[D?I]7.#M@K &+0]WUF$'Q_^VS+T\O\4H??;F4D$GSJ,+$8+,]9:TU&=M MZ2"AR-&E0%Y6Z^3;0^@=.3G@&(!ZHA7BX-KM ,EW.;B,'DN607'K@=%V!Z6* M 2^R VE(T@F=4(C M:A.R4%.L$:)6 GB4N=C@G+&M:ZV>)6CL<_E0?3^\P&DD_!&15)WW1YK2DN=2 MNZIM^G)>>3&K2\Y +B167>-D6W>)VY:V M<<$VNC/62FL=H?&&E5^7B]5JDF.RT<4$R=4+IY0,1&8%&)^$TYPT4*Y!CKI/JO09G3(*2 M4RT)IM.!-8?65I2-:]6.@[3V*NH!> \X^!UKJ;N1ACD/Z.N(8",YF7LA05+L M4Q*S/JG6[OVCA(S;/64D [:K O9'T6(=9KT\6ESMKG)[5,5!50[-:1CA 6,7 MJ;1JNG*]SDV'\R*U(^@!*XK0F)R#2#R M-Z@I*-6R=;5[P^I.-(1&T3,/'@' MQ?L:><4 (5H-67-FC),AJ]:O,PV/V.%:I1R&BCT/TUV4L;<9_+PIU?^P#LOU M$7VYOR^G:PK#RFHBN4B%%6*R9(JM6$ETCM0F_[$8*6LF=O-YQ#N2.*YW-PKT M]E-/#P[=5NS5QNQ?"/>XFMAZBUB''R/62O+@B#_%$+A306D7ZHB]4>!W0^.X M;N H^-M30;L#T%\ <%X3=C!_;(;#=\O%E^F*5/0(FYM$-"DLAQ)LJ(EH"4+( M''RV0AK,!DWKD://T3/N!*W&^&HF^._&F$TBR22E4#M1U%Q9S2,QQ#UD+$)0 M^,53;IT_TM!GT]\)L 90QH$^V\_SW$GX>AF0W=L[ \6IUXL=/R!]G,\C)]!I M%#D([D"84(V8E.#J*,'(DHK21*-"Z]NI(R70/?;9UQTB;Y2U.)E/_XEYDHSE M)B4!J=1J35$L1.X]V&P-L](J@:UK*G:C<.QG^?9XNF\4!]18!^?O8]P].GSS M8MCFM+9\?K?$+]/%V>JB ][$%>.\4'3.))*KLJ4VC2(_ULI 0960+A\%H[M1 M/79&P#BX'5"S?XK$^LO#3Q_SD-?C'?)ZU$,^6A65T0R8C[[FWYG:!3-!W)0\ M1J5R^DX/^3;3C"2<,=. L'<[VY@J_M<3<)N#85[1R7($MTH&**$')B8#%R)JR/QN7>\'V' M@RYP?E0,MMX&^P/BS[ =;O(+>#!:9+3@C#:@=$%P=18T^5\F<%.RDP/5G3:@ MO@M?^KO>!OL!X7O9 I/LB\^VE@%G0S%Q\+K.U?"U;HTD[K5.LG4UU5:$?>?V M>T_4[ />G538Q8BR@Z5[$0/S2=!T^%@ZBKR5BH)@^BH*"H*#TUH4"L>C:GV] MT8KV[]PP'Q'?K8'PI[H-F=R;2#'P?GVYS/DC MH[]X9$5P,BZ)2P3%& +A*O[3&55M.8)A/;D*0:5P0?BT3++F'8ZF=2Z M(_$69(WK% V.L4;ZZ MD=>+LZA/FVD;O'E-HA$F)^-&>B>H:9HBVYCL)+Y.G M.-[ZUC@YN M7(IQ?>M3OY!0ZT*_+)8?PE5-?3+<6%\+"U3%NL, H=!?@Q:2#MV2<_-NDEN0 M-:Z3W0PC#]J7-E9(![?KC^S?B\Y%1J&QHA8(4*"@N#7@$DDMBAR"L,%@\X*. M)T@9N1-I:Y4OVLN_ QA=-8NN%N%&U)_[B ;0*H)UJ!'UV[8S>>^NUL3KQ^KM>+ M^=5B^7FQ#&M\N9CGJ]Y'5FF=4!@H)A SKI9"*)F@UIP&49S%^_DE3_2:^M9* M(T\P& T BZ&TT8'1O-5'Z=ZY;([H%@2.WK!_XG!Y.5QT \3Y+]X1Y6B>F_K,.LU^MZW!GXB^*$I.HYTBD M/X+F$&1]K_>>._JAR+IYN>^.-';3K[8U7.X7U VINPZP^?S&IO/H/W&6/RY^ M"^OZ*^>OSD[/9J3F+_BW^?*Z9.;7>NX(:ZR2I;:Q9HZV/Q?@9690K":16".X M;GT[T(SX;AK^#8SF<;3]9X%YK=*=>*%$)C<*&"?NE4(-/EH)2)O>)XS*Q]8I MS\V('_=-XSN#^<[:[@#F3POVKD@F3#)FD5F0-B@*$LB?=SP:$(5KE5RH>WE@ M#^,IVL9]01G/LVBBJQZSUIYYP[AW1!S\X"(&?7&Y1^TQGEQT4HZQ6M=D:QOQ MZ"-$:\Y?V^+Y??2T,9Q6SGO:8$86$81@%F$QK M$)@%\V2G.6]]<7D0P1T_T^R"J]T,5TLE=G^BWC!;ZQ.G\[=S_&\,RSN<3U@L MCKC*X&VM2_'"@EQ/8$=R-]=Y$_L[6T"^TK M8OGCI^7B[.33+^0P5^[O:F'"I:@#$ 2(7!*9%D7L%W*1I(]*2V\0?>MJBZ8, MC-PFNWODMT=!EYO@FQ=]P6@ND!>P1E!H6.]"HE%BTTVKF.(3<\T;F@UQ23M< M:^YNH-Q4E\U2VH8WV+^$Z?*_PNSL)@D0BQ>>R0!62T:,)@^1NP2&"\9#$89V M[4C&^0&QXQKBT=WGPY3WO;K.UUQ/N"DE1&<@ZJ1!87'@L_.0.&,VD D0LOD< MC8,H_CY:T^0@L:PAI-HQF'/M%2O< MM^\HWHKX[\-%'@?I;37_'8#^UDVU9$&JQ$J=@U>[8&.=L6(28-"&G"JN&<:C M8GK'5X717>%C0G9/O7UG%1WWRN$.?F&0@[XPW*/V&"\,AM>N(%9"L#93P%.G M!CI&*&-8&^8H+WWKB&#(%X:;';1I$?#B3HN WS#4DJC\=OZ^+KR#4.J:\9?GUU_^YQ271-2G\S?X!6>;)'3%R(.(G(&7J&IC'P^AD(]A M) \I)B$=MJY6VHZRD7/VQX'-4^!MI\.>D'DIQ\UI]I"_R]QTJ21G212W!A5+ B60QTT]T:OTVL!.!G>"T(4*> F%S=?6$Q=?SSV?KU49B_+)V08NB M>0PQ \!;<#-=(IN,0E*U%'GK5 M\"Z13U.2)%9L 1XQA)AH/[+6+_S/D#/N[^1P4.@W:U.C<5Z?#DXR$D4I8:Q*F]C7H3]/3";Q&]>6:Z:LK[%UU MUZLUAI?[DT(U#-PD$,*1KZ%2@BA4 %_K"E7QQ&89#'L/Z1F[6+V5UI^$TX$J MZ !.ORR6.#V9__PU?0KSDWKU^$=8YDNSG)TSTIL,+M;BJ-H9/"@1P!9%&XYI M8U/KYCS/T=,+G [5^OV#L94*.H#3J\7IZ2)/U^=O/U>]7#(1,KDZ?A:OU^[#&#W^$SY=< MJ(C>2I*+S2@)_]P1%]Y T#D+';.1I7U+P\Z=TT^MRDC@QX.O [.1)4E8KXHL.+A=*Y*PP MYG&(EMA/4_3]7Y:T@6%#O76!PAL?Y\:1NB7;%^N;="^;LS+!U_ZYJN8X(@5< MFMSFZ%-R]<&;E_8-:;>G[_L_VULA=""==H#71_F9>&](1"D"&N5J4$?[31D- MWJ 61D1DH74D]"@AXQ;\]X/ P[7TG57_?\2OZ[,P:YRA=_6I0^;I/4KY,;+U M0A'.8\S BJ((1I()BDP7X#D*Z0K]O?D_R?F$]J'/^%J>C(/-], O34JHRP0@J%]8XT'[ZR&%-SFX9GIYN5YPW'3 M<3[?+HA\,J8>5_T=G- /V=@\*DECT&K':SJV(N'6666*61!6HRA*N*1;@_AQ M2CH)IT?&R:*YTKJ$WN4M<%&NQ* -F&0E.;DU9S=&#E(7'LC-M8*U;K?R%"WC MPJ^%GK\)G3V$W@%XKAC _&)UR=.-MW1Y]2]+0I/JX)&D RBN')[-\>)*1%YOIJ/QD3Q330;;,PG.<4;AN'$RMKXE.CC- M;IPLJ4. U$P%'<#I\8POBQ\93:Q#@>*;Z12-@D26C=I=N.D2AT" MH,.%W@%R;GF;UR[HS7N(1(V/GLP1U\MK9 MJX]^J J[PN/OBRJ>,'MQNCB;KR>>=D]2R=1-2@<\Q=FT4\DB9XI[%6K+K^TD@'2#['A\QZY3D/Z:S.AGK[?H3+E]G^L1IF=:M1_XD'?]3 M^NKB!?F 4;+[+'/P,^?!O#5Z][RBX\4\/UCVL6G&:)G-$G2JJ9R:>XB%$ZRR M"J$(*ZUK79BT$X'MAI==+7MAYTV63 54H*-0H%)TX)3TH(5(-COM5&I]F?H$ M*>,:L>'0\O1HLOTUT<&Y^(%TLRG&?7FV(F._6GW DTU*P^9.)B'Q8HJ'+ N% M*]&00^OK7TEJ-BKI1&SMISU+4"_CQ0Y0^7T8-9-_#V"ZH/TR!M()"U/* YUD MM3#(;8JM$[A@'8N.E]A\2,4= D8&2SO%WH?,WE(>>[ KR?W3=(UI?;8,LU^6 MX91"EDMNKHK)G.0V:072)9*+C@&<-1HL)V\PJFR"VFZRZS>7&AD=^^MP,9A MNX+'K[.PNIHPZV0IJG@'UH0Z0C0R<)HQD*A\9DX+5L3NJ+BUPLB#_@8 P[[B MZPH#%T./<747TI8;P^NXJ^)K@D74 F+M$&.3'P/U M!"R>6&#D 71ML-!">!TXFE?^]\W]5.+U^21(P*1J(3$Z\!@%9)^<-,Y%V;S4 M\ $1O8R+;1>='";GCH#R?C&;7;[$39BC_5(;Y;%,H;_B/D,,!'TT+@K!L.3F MS6L>(:./>Y(]%?L$3/:5_ZK,Z)DGLX_+L-\-=OH MI$Z\WHP#C@)EX,&#$)P<[%K9Y:U7P-%QCPRMD*T;_6U/W;BGTE"8:JR5W5'G M+U WQY.:67NX6WLM* RSV>5[[V3SL!85!ZUR(+?,*JBEI.3G,6.D]X:DN)5/ M^]BGCQO>/S_/;]N"<=^:[T5L@STV\U%>F^]Q-\IS,ZK(DU44,?MH"%@^ M0=12$,X01?!!H1PJZCSR<_,OT_ETC6^F7_#!LA=AIG5&*$=Q94AUO&UV IRV MM5>'SD[2QI-:-!;%]M3UX5>WQ]33C])-]=7!Z?@,/R_/?PO_>[%\56^\-X]K M40D6739@F+.@9"0)2ET@<&M,]K7/<_.^:MN3U\L;=EN$W$^"'DA=7=P4/,/< M#6N_A]/K9&#%4&7I(%O/R(=AY,.8%,!$([R/6BC9.E]Z1Q)'KN,>"BS;@_)@ MO74!S%=GJ_7B%)?O\2(47GV:?KYZ!*S9E-FJ>J5?:H-?IVH+FMKO5UKI>4D^ MM+[5>H:<;@%W.!#N9_,WTDD'9_#'9EM1UFTTNRS36^V MT\5R/?WG1>I"4%D9\@T@9UWSL4,B=X0G$(:I4)()1;=. =B=RFZO7HX Q1:* M&S7G: L>MTBQ8MH+(S&"-0Y!H=MD9P2(W!CG2;0I'/%$;I0+-UR?CU$AVUB= MO9M6DNA$\Q"+- IRK//ID#$(EKXJB;PA%C$'UGRZ][,4C3S38%3\[:J0#N*2 M;]PD_/PUS<[R='YRG6AF:SLX35(KMG9)L64S^P-!2G2&8V8Q'OEF\ &-W9[: M;6*50576/R2W,/(\T0ZT(0#'L!G::<$+IH!DJW2H3K17Q\7H=WQN'P6TC94Z M=@'G#;>SK;8H'1R+LKYA.N3_?78Y-&QBT49!DH?"4="!DLAC<2$#[=SBF#8F MYWL&]XD$^89$=7O('P;64777A>5]Y#;BX7GBG9$FZ !9"5,;QGKP7'-@/'!4 MGI4D6L_FV(ZRK6"IOSM8#JB>\0WE=I<.HL3B+..0-YVS@X\U8Q@ARES;Z7F7 M0]K2"+:[^#'?'9(&D_FA%ST?AX'3TV[%1&214)8"N60RS4*1^$0*4"0:'FN3 MHNCV0M33:VX%*OOG %4CR7=X*-)Y_]#F.C116L4 B]KT('+@6#6\EA=,W@?' M6N?C;T/75HASWQWB!E/-GZ0#Z[W'H<&JXL0H57'WN!NE*JY>J+B:T1PRKSZ6 M$.!1"="^!&V%RCFUOF$X:E7<>OGW&^NA%.84Z@"K2E2RKU MODE 8#8!*IZ$MU:&$H[X9/(M>K^GRKE=<+?+PTE3G?;^;O((G^^QYLB1IFMJ MTRJ%V7]C6$YLIB!=905>E5JL*!6$%#3()%4V*)$B^B.^46])=K?Y$XU1ML-3 M]A *_PY1_CN=E1__P-D7_&TQ7W]:331RM"X9R"&0;Q1,@F"]!V2*V^BE%/?[ M#!X9X/>:7#Z^)U6:@CK,Z MADB+8R84/4EHMP\]/4%X'Z5^AP9YPR:!$2?91Z[111 I)JAC B':ZN>%X%DJ M7J;F%PA[DMKMVT]W^-U9L=\I@G]9G"TGQ3J;*V,I%=J?V3"(DF.=MIMYSLQE M=<1$I&!# A4"MA&*K6!7Y'N5&[T[SOQ1::N53)M6 T[6Q9WT=X""08 M9P0X$T@ZPCDME,[.;=<+_@ BOJLKLAV ]&B'Q:&5U,4I?]OFORWWV9M@O5I, M68.0;C/$M;;MU ?= MM^45X6JZ_B6DZ6RZ/K^H!'8YE$CQ.I12+"BM,GA?)[601^DQ>9M%Z]>@)XD9 M>_SHP1BX;R/:B'W$.[_53 M5R\F6D5!6Z-Z2;)VWG$>G,\)+!'LG' VZ.<: ZXP_?5D\>7'RT^\@,;E7VZ0 M<;/>B#!HH[3%01+LX 7IS6)^0I]V6D_<.CU^LQ-L(,^Q9 8B8AW_4@N7<\P4 M&$;ZMI9)QM:^UF-TC/N$V?9,:2;O#C%SU39)LI #(B1?&UBFNH6L($NJ B/+ M&@//K1L!/4[)R+[(P1K^!F3V$'<'H'F/7Q:S+]/YR=T===D8B_'LE-"TI0R2 MZ131@]^\ A7D/DN;>//9TL\2U!>$]M'X8BCQCUT(\Q[3X@LNS__78HY7;+Q< MS/-5C[5")W:H'IPNM7N;-A*<*!&"-YBB-YQO.1'T&PN-?#JU@TASJ79Q;?L& MU^N:LW:!]^O)EMXR2\:79TOB(1<-8C$DGF)2SO2EE:V?7A^C8]S$E@&LR\'" M[N" >LS?>W-=?&%2%(*L(= AKLBWIZ]B$ 9L-MXGCUZ+YB[Q(XTQDH#@Z%V_J%SY[@[ @#"I+26,D M-&2?7-87AMS6N;N'(JD5T0(#;33U*\ )JJ ,<&N4Y1IF*/C-@V$,\ M&__LV?C*C[M;HL%4QBPL*%#^%A4A&0&J5>/%L,:'"^!;_0$CF7WV0&!1$6Z 1 M1-Q0:! )W3E\!)MQ#WGS:=FV*9P;P23VY>-3NU+<6E$0"FQ.G7?!308XX3G( M#<,%) 0R$[HOV7&.XBK?["I1S8;.Q!?*+UI1MZ^@<9N/;C5_;)J5T5>&4*R1 M-(!AWS++0K[..!6(YKFFEB@8>I\8QF'^UT: M'"+J7WQW"XI@#HPB,+?,T$*$+J )L"O/%G-)2^L&H3-Q5WZ_U+'/Q:,:HPTA M_XKGXGG:H T[L10Y)H07$BC&W(YI<@@*CB7(L$6%LDQ1&SK_\JKGXH]+!XRY M%-^?QMEDA"V#&LL" H9RZ4O?M(]Z,\"QYII!0?+@[P,>9.9'.N,.T9C=H'(( M-&)7>OG$2;GLX'GG]N"ND#(K> &EI0!Q+MR>#W,G%2PT$P YA8%M:P@4,(Q*A"S>#@, M7$>P'R&[V.B?K:Y73>M@HYN",BESC;K\:99)_]B?.W62P@)$&>>98:8H^E5V M;E-.!_,Q,%6A9!8;\ MSVW9_Z M[#L_V_?9Y]1J ;,,[N?AIIQ0N\T5&B M-012^EQ_AIU[1@RFP9O\O&H@V%A?)_.E3/$5$$.D?-%C184 M$.I/)M84 .?&*@8M532T"W^(EQ\I##Q$7W9WQP!81,W?=W;:">Q6+)UXW@CU MQZ*Z_FJZ)]@NJPNQ,,T5P=PR;"! !7>GYLR_],&-!$+I(H.8&FQUK\WP^#AQ M7:CYE2:TJ!/PU<]7M?HF&O-%+LKKS9-JPAIAJ=O <\0!D1H!CC)W7H969]3D MG!0PL!7:Y2*N-_5Z]F>B_).H''IQ@T=*A V7#&09A[X!'0."YDXLQ"IW4LVI MM:'K)@??DIJM'N/U]&:TS-/LWGGQS:M[/E!;XNYF Y M)ZC5MJV,C7$">O[5N$VG5&Y7NF@K]<>F0$ C*3A%!!18^Q=2A9,JI)F_3PQ9 MP1DI2.@\U5Y&(IO1Z/JQTZEO*E@):-RYJ6U5WXBE,IWP'MK((9D+MX@%P()G M;JM!$LA",$!Q)H2E66YUZ"82!UB)&\Y+3NM" ): WIV4ZR&Q/J43L:&,,;>^ ME.S:@!,->$&ZQ&*62V7R'(5^Z74ZUY&U.0E7])6Q_Y&U_?V?J[*]?TH--=US M/9??Q/++K2?1_.*O/C4?E^?=?:0KF NMI%_VC,GUM2JNG1>F:6^+>1V"=#;5DYE2@?]#"^MV4U]^S&X6>?.(NVM]C:895P12KGXZF,R84 M//6B.V\R9LZRIHGQ;8Q%)EF! 49.5TA>%*"0W*F.LE0+RBG%/W,R!YQ@)FE! M(09N 5% ("Z T%2!C&*G>T)*&/SYE9\YF:$Z.V-.9@#\"?A*+T.UD!O!'/? MI^5]3PX("N3DB#7AADH_$?4S)Q-8"8[F9(8@DH ZS1(9$T)Q7&CG>2EM 3%* M@ )F B!B9\(DZD CHGR"=BW8&6 M&@8X(L0B)1CJ]VSHS]CX*[L$KXQ]LMI^1?TC#9H4 /JDEF,< 2&Q!="2W+\, MS[,B= )R/R>)6]C ^M!+'0>!DX"*O;^Y753WQER8^J[,!)8BZ--]H>/ D]9*#^&BB5Q46,V4:WCY!^J>O,C_WOH M"A,J,$-N^\TD])EJYTX2R0#2&"%GJ2Q1H9^R>-T9QKVD]'===].5*8&-;[[< MU&^=/!]R4YU$GQ)1(E/<*%L[ZD)V<[1\TA4,+S8:SSS5B/::', M*JYR=QCAUK_%!1$$TB +,N*4(V>%03BXMWV EZF6>RO;_WGE UF;T$3S9=4V MK5AJ_R24:$IUY?06%]8*8'3>M9!CH!"* )D5&D/.)!*AHY&#&(Q[A@ZB+]O6 M;SZ $O ;/BY5W9GPSD^ZJ9;K:9VU;5W*5>NC7)?5KG%_%B&[LK@0S#HGB>62 M ()@#CAF$BC$<)%1JY$*O1:G?KY KW* MD5+(MU?AFOD7'*$%DD )M(%YSA&"(G@=^4 6XY[P7M-\!@$I 1T\6[:E]G,I M[]S15*WJKL?5^^]JL7+^CV^VZ'WFU1K$+W9'Q.ON/YE6RN1NKT"Y[[BHF092 M([^)<)QGJF!N78:NT0C!>-QCT2SZ^OJ )EFA::[7#[UT5Y \I=V?!*C7'#[* M].K-B3,+=+39#/K5W%:U[]KRJ+LF<]J;:P7R+H5-&0+"'<^=)100,@L5I\$O M*Q_@9:IM?+#U:\+> =F,U%PQD4')_:J@&/L>H ((8@FPMLBM+_@K1.C T6%N M(B?^0FC"MA4+)/H?PS1-Z=MSD-@,AF;.4,E!+4(9SKEP6F2([_I$3.&T"!* M%&ULC/!/RF_O-E^L2#9);JFG! 4+2N0)9[MQ)GF<@ MEX8@G0L]0YWA<#83M4!#=.=(]?4L8"7@^U\XB-;Q[U53+DW3/-C8KAQ3<"4( M%^$<92B9.NQYU&%;_8)ADX*BK7G?E$TB MB;&DF7#,%XYYP[A/Y13.0\@-+32!U(2^Q_."@787>J=W+^5 MK5'MJA:+#[6X<%:!Y:B10:LLP=)8 TN0)$Y]1-0AK I6"&,4KA]I/? M?;3BV0B1*\5F4(:QXDM*!S8U-,U+E1:91$;8 EANW2E3( 2D]+.#UE?#%";K MV;7[]%B1*YEFT(OI(HVM(9]$?6TNE' ^VFU;NG\W<^ &2\9\,G/=F9Y3()"O M>:<0<46%RG$_(W%@@,BE-6%T(83P$G TWU:U\\K]2Y=+W=7J;*:!"XIYCA$H M*!%N+AGVW<(E*!16WOBA(GA?SP.L]-(6FJZVA)1TU"+?IF[=))9-M2AU)_^N MSJQSPG/G&RGG=@.:22<-)""0+,M!IF0&A5+:H%[!73?$,TUQGYZTY/#HR=PM MFO68&TCZ$4W._AEL5A;'D%&G[L#)!?O2/P4$]J_M4I-!I6RA1:^HW6 -BGG" M#87I4149(> $]J4OM\;9RJ=#V(,'SJUF4A70QR81(,I"9RU)!HS1SE9R;"$) MG48ZP$I**C,&XRJ\P!/0FX_+CE8WA?>+\N&!WX=.FB3+A':[MF76KRI)09%C M"S3.>$$EY#BSP2O7CC 49^N:38?""3^)VTQ'-O1/CV7VW+GU)L<0(.>I.?=- M"O_&"@:80F^C-:4V>-"_!U^1S]NO'?L/C50"ENS(G,[KRI;MIZIY:INDW-F2 M*<: -8JY90LS?^QDP&##,V8$R57P>SE#&$PB2!Q0/_HKX$2PDK"$7\V=6:[, MNA9NV4WB][+]]G;5M-6-J=>U<9B37//C%A1%L)JN74]5FIWO*O @FH:://NSZL6(OO"LNL&948Y!E1 )2 M6-4].PTRP;'(J-"\F.W \,1&$FF15U"SJ0BD<*NOH]X8]9_7U=U_&:77 ZR; MP'B?]OJIP^'I K07RO2D$/W8?.4PQ (N_+F]+3]3?E'CCOOPC")N[5*.XY2>Q>-"H7A*) M&$-XP9]IOU4Z,%Y;-*-XM^/0VB^-1+ Z=\.V]] MDD@$);_BWRX;78>#:8MD%*=LM/7;E44B0/VK^NN)O[ 6\ #I*+[4*.".RR8R M@(][:GEC?*,N[QO^)A:3E]LQNGV@8U&AZR&5%!9>\W91->:R>F2W:T01;O6= MH-\'QSS^$NPGI63QG G&7NCQ1-%+!+2/2UW>E7HE%EUUW!2@MDC%/90=EWEU M2@"QE])B\<37Z0!/CT6TCV TA [(O.HG@ 32[2]?L D;>1O^.LY\A^5>J^BH M4(*#%?41E8,9_3D#D_'5_;&YKH^%KWMSSA)T/CQ.VBW% X:=3XHZ 77H>#N[ M=<.KLA/%5]_#J[DX^WHQBUJ<'B_MSMC^QF&/PT\$.ZC M!L5LF^7H\\"67%* [G^6NE[<7S]U.#N[::?CMI=JK]T=QD?MF$A2@.S]]UJ= MUZ4*L+Z>2/4")X'4VL[D4T!DSP/9DZ$9^>@V2B"A=E@@*3U,-5H-Y%@L3PHHG0UP M_0KMPTYM0M4C]QD@6DED@,WRI-@B(_S!$:V6YF&F(1*B!TA&*XT?_>Y?N/FZ2_(J\ZUGFILAXP3+=D=".$^0DP0]M_*:K%YW.M?U8UY MZ]_SJN\_B;_FP/[H8/$2YR$UH(\\$U0#-^,_5V)1VE)MN+\4W]^8I;%E.[E8 M8M2 \5+U(=6AKUS34@EGQA9BN6'XX\VM;XWB)B#+1=G>A_'=QHT8KS8@D%(, MDVPZ)["0+MX1LO$*" (C"GS[T)ZQK)YSIM3Z/1*(E7 >@\'Q%;L\^=D+HNU'=0]AOG9FXKNK[R:4C M^RG&@VE;WE7/R<<.)"\6V^R5/?J$]2HB.4PX7O7542BJ87*)#-VYJ0+@]$0E M9DW):5E71R8>O\C'L?0Y"!S;M.)=ZAT(R@$A_*Q5?,V=YF=]XL_ZQ&'8Z/^[ MK+KS^-3E\9)2M#*J8ZMC[V1C [!8/+(59FELDXNWK>\5=]5G[K';A!GA#UB3 MU\1S.M&*U(ZMB#T3C>W4;K@-$W3;I19OVYYVCD\M?_&VNC +X[M>;W1HHQNM.G>L'3TMH]@6]9MO J,?&0V%XC&ZT>IRQUK7TS**OA:K MRZH5BQ!YX&U:TBY"F4:#]&,5B\[$K@3LHGM=CY$AL_NKH/9QH-$XY6ZCO4R3X@G(?0Z MSIY9B) @[J,=KTXU )9'A)6"*7UD-;A!/4@Y7H7I%+MZ2E"Q*RO^7)7MO>^1 MM1:E.][<=+U WY76,6/<;$.A.W"H> 6G(^$>)\K8Q\8M,_-;TVTB71?1;]7" M2?EK&^HD.6RH>+6JHV-W8T29'/Z?3;M^)74NU/<,$*]D-1C6A\66',([0>:Y MD#XR4"_$DXH=C1!C9.3WF!\_\TWP*PSH?!PDMND7]IOYEZYO6] M?XQ>4*<4N!HHO-BK6LC50M2?RJ8-F.H^3+47G"F%LTX**#: NY9E:B3D ,E> MU0HI!;..BR9ZY/_!^(<'\!3M7DBF%,KJ*:P$WAAY=-P_54WH%Y9>TNX%8BH! MK*/BB>[M;'G>4Y??7H*]X$HI '5,++&O.GN'RL\H$&#[Z/7"*Z6 T1&AI!#B M#](>\SFA7@"E%.79)X;H3D@UN53R@48O/%**P6Q-/HTR[\EP#*U7S5(*DR18 MIEHM?W&.RX:Q=Z91==FE80+5J9XFWPO$E (@_446?5_2I>=++ C,[IYF%RK] M?(IZ+V13BH7T%EBJ#34^+IO2B?6R%ETSU6=/';[D?&)WC2/#!&FUT7<: ?IN M[ RUHR C[Z\>)#LE%O9([HUOSC2]X\9>@A$O=Y["XD7TZX@P8LR\J"=US.ULL]MB2,#= #Q-. *LCET%/"N1G,X%8:^AG8X&?C06& MG:W;>G%IZIOFB[VLM=.O,![^$;+1UM P'^&T8*)["IZK$,U(7U**=I-WJ ^W M9_JI0')9MI/=ZQ>DHEW)'0G*"P'$;ARZ6A@$)47>J]'5;6OTAX6XG@3/(9K1 MKML.P^F$2.('%N? [ C9:/=KA\%V6C!)&,".KQ#O]>TA%^UN[1A#N$\0"1G# MR_IFV8:UA<](1KM5.]X4[@HD+4L8"+##5*-=J)UD!Y.#[>' $.[ETOT4X]VA M'6,-#\@C":S>K>J.L0 @/9**=RMV##K;$D@"E@NC5G79EJ8YN[X^NQ/E8G(! M[Q&Z\>Z]C@'LJ&Q^C"SC>;4HE9O >5VI&;.,+X:9(!K!LXS/A]K1D0#I MQOWT)\7B-^3U<]*ACG2GJ2>2D3R*V\L ?D]Y1<^Q[./S<]5N6 T31NX_2B)1 MY8DX'Y'?_!9]\X7_2XK&_/=__!M02P,$% @ %G,C6%#@^O]\!P ?2( M !< !A<&]G+65X,S$Q7S(P,C,Q,3(U+FAT;=U:VW+CN!%]SU<@=F4N59(L MZN*+[''59-9;Y3SL)A-7[6,*))LBRB3!!4#)RM?G-$!=+%D>S>YDUV,_T"+1 M:#2Z#TXW"%[EKBRNKW*2Z?5?KO[:[8H?=-*45#F1&)*.4M%854W%+RG9>]'M MME*?=+TP:IH[,>@/1N(7;>[53(9VIUQ!UTL]5R?A_NK$#W(5ZW1Q?96JF5#I MAR,516?9Z'1(R2E%H_/16 XNSBZRL_%YD@PIBT?_B8[0%>*ACW6+@CX@I5T7(*T6@$HV\>;$I9EB[D[7D^@< M:C=L3^!L,G^2\9]N/M_=_GC[Z>/=[<\_'6+]1?W_]_-HV]0!@^.V(^X6XG-/ M_%L5,9E'(_/+P^9PRG&JV6:8GUT"\K@F\$R)*I*$8Y) M=WCZI\TSZBWG\,>/_M@M@_/>F-UP*W(Y(V%HIF@.9G&YLN+71AK@MEC@>:V- M$[H2/VI3OCF.3ON74;_[+Z$S\;'64R)QPQ"OC;)D.^*V2GJ(U<4KB-7@Q<7J M[](B0HA%N1#WE9X7E$ZI$T+6!BK5,*'2R!080:I*R&HAFLJ9AC #Y Z?1A \ M*4K<&24+D#P^T$@B4Q5B#'#91W3#N '<32;C7959> 2Z13T MJ"HIFA0Z@9N- ': .<7\4R/LC%A&]/8FTN<@*/;=+D!J:*NN,Q$"2'P:[865G VMV:[1[%Y M =#?/"2YK*8D/H*1/C<%)**A M[$;C=_3>=XW&:;@+MXIS9!4 ROH%T]8&;@..V):#!\H>#91A()[G-IHAP?G] MMY=/T>#T!4%4O@\ER.X56R$4W'":3RM?CFB',UXB&WMX%TX],8G52"&9Z<9 M 2ABIJPG'DA1Y?5PX;JFK$W:,U1('^XVFZU#UFDID1L5Z NV6%VHU&_[;!-; ME2II%$] A9SKB;AB38WE/.A7A_5)T].4M@2#L.'SG6I4=BII"LGLBFEY(];Y M%#U"=MXL*O K)A8$ :(_I;^=\%X6G.(#X73P\MU!U>$+_V!P 9 SE3)FI-65 M9(:3%GCC"HN!)$VZ#"I@IF2L"N46G.J>&I8A[N/O0QO0^4ATHT+S1/K03JAN M3 UH69^:DT2;U!O@:[4I5 HV8LCFLFB M\6N7G4Q9AJ)%S> >^T3QL4IP!W!1N'VZ'O&P04?PB U53ZP;M]^"0]A2KJ2) M2[KLRT6XB)?%HE\)K2=@CX\Z#_ *(I_N9Y#@U-W@\(ZL3>J^Y4D$? 5O<)+1 M2=(8#L$&HZ^UOD6BT-;A";^/@A:;0$6[R1?O]IB0 458RUO2KW)I5XF/6<"CCE)/C]X3+74ML%F\IZ+=4V[)=WZW>[U]_#QR2*$*$V8:UJX3G)>\Y H7SP.<@7/OXUU'*W_E5Q;\O6L/=[@EUD MBHZ65N2R%R-MN80N"#2JFDY(@Q8YT#8EP@17^XW7E.+V%\F\3/O[QK ]T)Z4!5,UW,B'-"):?M.TC34@65=:$7A-9YK@,_R$

RMF)/^;Y ;[VW"+^(9&)S4(,.^$$\$MVQ]HY74X& MWG3G=Q*M0 S@D^EB"H6L+4V6/[BJJ0NYF*C*&^([73Y6QP=_,Z9_E WM,9B' M'#(1;+LQ M>/#H^5!N)>O>8+SQS)^EM@__>+CZ<^ WQR.L6G_=.?/;.A3^MLYN,>V/:6M, MF]^JB.5\OUTD6/]W$(;G7?\] ^R?V*\JSIH^2W_*%67BYH&2AK>]XN=0C>Y# MVHEGM&^8(K:^B*BU]><3D_ &<$8[WTBLX>H=WE]WD3$PV[C]7?9]>+#W@XOV M&C[_./&?G?P/4$L#!!0 ( !9S(U@Z0K>W@P< %@D 7 87!O9RUE M>#,Q,E\R,#(S,3$R-2YH=&WM6FMO&[<2_=Y?P3JX>0"2+,F2'[)B(#=U !>X MS6T0M!\OJ.6LEO#NE*B=KJ='O M]@?B9V-O]4S&=J]]3E=+/>/C^#P^#H.,)T8MKL9*SX16KX]T>M%-DC/9I\'P M;"#/NQ?]TX%*A_V3KJ3T8CCX7^\(72$>^SB_R.GU4:'+=D8\_FC0[YP-*W\Y MU\IGHUZW^Z^C('HU3DWI,9Y%__@SJME2YNG.MV6NI^4H3.DH=ETV)R8W=O2L M&_Y=J=0^V&[0F<3?9O,O[M M]8>/-^]NWK[Y>//^AWVLOZC^?#\/'C7UIB7^([W/H.W[CGCO)F2G+9&0]3I= M")])__S9\/QRGTF<8L!**H4%TLXIA7/ZRYCH4B$>H_;)Z=\VT5YG.8>_?O3[ M;NF?=X;LAAN1R1D)2S--^T>]GK MMG\4)A5O*C,E$M>,\(8\@>%(4>+):YB*5"5Y980I0 MG3=1;DN@I(2 *%=CFR$R>ZN?89)N@J2H*!K+>":49AFC-T4V*RV'3# M$T'@R3\'@21272+&#)=U3%N '\31;#?:=9F"2Z37T*/+)*\5= (W&P%L 7.: M^:="V!FQC.0\7T.R08-[,#10KS0K;K%$G4, .#0 2QC.!7L2Z3*1YF;NEB"U M--7.6XF!)+^,=L/*U@;6W-*8+6N?"-P&!P>WC_=B\_S9>;]W=ND:0#7E 1.$ M25.-QQ"U&R$M!7P@WGJ2$\=1$$ YR;7+6)S%"I C$R0_*^V2W+@:_9@VK1,2JY%B%C6UA0)PTTR[P'B0HC+H MX8IYS96;?&LIEP%G31I=8Z75<#$W:O F;'$FURIL.%T]<5II:35/0,=D'S) MR9IJQPDX+$L7LG7@1^,(!F&K&3I5*"EU4N>2:1W3"D:L$SEZQ+)@LYK!KPFQ M()@7_4G]?J8]+!Q/#@?'9YW3LVT<[TU86W#>G^KV1C56PDPK!JMTII3,Z=(! MZ%Q3,H*E54LT =]:3G2N_8*3^V/#\MH*P N8BLOBGNA&31I2QUTSH:JV%3#M M0C&2),:J8$"H3J=4HL;( 6VT4,5KAD50>4?X8FWI"NS]5 "<' Z ET1,,YG7 M@:TXNI2FJ _U#'%QC]1YJUIB#_:-CX^7?@&OZ CF=+' G)C:[[9@G_P@5]+$ MU7/Z^?V.F"SK\K $&T_ G@ W'N )0$X=#N16G!FCN8T*WG4WA5MH>11Z7\"4 MG,]-DM268[^1/-=:7R G&^?QA@\=H<4E4-$:,AZ(7)]2WES;O! OO6'G?/'('Y0 M&[#A$]F A1/%U=IHK=F)R7(3I6NB8IQ]0+#Q":U*AHZ,5J^T$9U.9H@L0A@*R%1._0]9W=0%\P$MA,DT>>?30["DE M]0/<"''N3BUHHX6P4V Z "<<23<(:\4$J,N9R6?$6;"4T^9DW3;D2$65FP6A M=9Z9R(CR'GZ!MZ]2''2V4+#SFO4S;0=U)?@=?!W85'PO47O8A3AIQ8OM'7/Z M:@9>[&5?O K;QX,22;/*Y6*DRS!BZ'39 MZ)H8[TW!ZBYGG'E1L377S&$QQ^;UG7NG&^_=/2+MU7+DIKD3FHZ]VFX;#CNG M_>'.YFZGM[/M4VH'_4[O;#^UQ\'D:#8\XRI9OCXZ.5IV:%;MJ"MZP;-+?9\0 M[5=W++QY-<]K_J$?HPO_>L!W(Z &6/?A[_9E^ IG7]<_#0[#IPL59LSG?6(Y MU7^2\[8=!H*[OJ.DY@VX^ G%J?@O-M>:$UY(L&\S3:EXM^+3][&"W7;T<5B$ MCRSQ!Q^[5,:%FZ=1/&*=T=;G+VNOAX7<77>1$[B^]KN[[/JF9.>W-,W?^&7/ MMD&(ED?3I,V!VPY*3!(M+S2"?H'@5>U/%\E[AQU#E. MDRCJQ6DW#?[T&JB*RTL=I=<9/6GDC#M+:OP/.G[KN%OH\)XE>CGP7/>GAEUZ M.DP%U^A/HGYY69K9,J;I@W9(QA9\8$-JE*JU.!:9D(,]U_Y"(W%2DK-L/?@P M9SE5<$GOX5KDA']H*L*5HZAD:;E0L;\I8D)X]O:^A'R,=C+&:1T"AHV@)P]+ M%C$-@=_RGB/>#)S(!<:N13'P>FAV WN,R:;R.X$?3Z[G%^<7X]'\8GH)5S?7 MLYO1Y1SFTU2O(O1[\(S?LNT

-R" Z.QO]?S?3<@1TXS&*\DTP^ )3V#R$"\)7U"9U84R.EXRF:!@=:79'89JF+$90&+PQ M7,76!'RF68H7Q4JJ%4%M+<#KE4%6W6ANCL,J;M.1)B*2B,*\DS;U-A<:0E7. M9D1&A%/E3!\RNH91;&M@"-5$.=$0$866,.A\#;=CD]%4#X*C>APS;A(R<,R _DZL// .ZR"^O?OG>3EJ!1V3ASG6I.J%=)5A M8\3(ALR0\9&@DOZU8I*:78,RQ9J5755SX(!@.TCPN@?)X6.5GSC]R.>JU%X_ MZ& Y^Z&AYO^@I/Z;+"GC.(]R8J%5@K573:J6,$QZ;YV@P8=:TF2ZX:I65S! X_*Q/]6*VM+8*_1^G MJ[]3L4K*[D*ZKB64)E%&:VDD9$*E@U S4B@ZJ"_"A*DB(^L!X]:C50HK6Y'0 M6N3&7'AGIFM,LNIU;PEVXVD*W[!:ZK9-M67#< MZO?]5\5NRWM5]B6S703D]G8RV[:02]B8&(5%/VD$C5JAXNG +Q[ >[X_-M1] MF9LR+=^^H]TGDNSO=8Y#9?^WWJ^/!*JR\H6 71/NCDFJ"&8/$06&+3*60!WO M>\K@5K[PL+?3CN0K)?8]Y>Y7PG&/NH; [A<[_RHC;3N*MH;N9P[?&T/PQ?F] M$,J.^H&D&3&UVCK1/]'7CCKW285$R.&5?EWEM=//JY\'JO_R8T7;?B3Y!U!+ M P04 " 67[$-4PYF8F,[K\2!F32$*32#!>2;@Z'E%\!IP<-W@][4:]#HJ2=INU^N[=/TBZ-@FX:T;!+$_I' MV$!77%[Z:+/)V$$CY\);,9M_T([\7J)K<5+2#=G.=,PRF[AG.9 M$_&NJ8G0GF:*I^5"S?]BB GAN]@3))NI;P1^/#F?GQR?C$?SD^DIG%VF MQS#_:0*ST?F/H]/)S)O^]O/D=QB-Y]82!<&+]L)^\>5W;?N3]9P(2*00+#%< M"KCF9@5FQ>##FB@D.=O .2ND,B!3&!5RR1A,+/N%XIKI)IR(Q(<=Z[&]U8^B M(![+O"!BXZ[">!AZG&;,LF1L&HAE\Q^)4G#,X4TYS:VX=-,5YQEL(Q%T0DG&0P35-(W=+MKW5Z<SUQ80@:>'=C?2*4[X6Y=Q-=/_Y"7KM]J6Q[FV)-J;Z3K M##=*@FK(K#AO!:O8GVNNF#U%:-NL6;G+:@WL$-P>"L+.#MV][?*=QF_U7;4Z MW&^UL9W[L97F_Z"ET:ML*1;*[#O3GJ%/;>V>WV[UGS4' M?OBL[7-A.X'?ZD8O"KOG()>PD1F-73]HM!JU0R74053<0/CPP&RU^YBO MOZ6#4B7M7JS=]]-;[:UX*D(^4VM@*WTA/Y6XW -%@17+C%.H2WU+Y#TE#)_\ M_LGIY L1_9:X?$\$GE\WT')GR?:_8F3/C:5/#+U'S^^%U&ZT#Q3+B&W9DR?Z M.\FZT1;IBPH +1W 1 " M 2L! 0!A<&]G+3(P,C,Q,3(U+GAS9%!+ 0(4 Q0 ( !9S(UB31]2-\18 M &'7 5 " >4+ 0!A<&]G+3(P,C,Q,3(U7V-A;"YX;6Q0 M2P$"% ,4 " 6&UL4$L! A0#% @ %G,C6()-?<&:P M& L( !4 ( !]$L! &%P;V#,Q,5\R,#(S,3$R-2YH=&U0 M2P$"% ,4 " 6P( M87!O9RUE>#,Q,E\R,#(S,3$R-2YH=&U02P$"% ,4 " 68S=#,R,5\R,#(S,3$R-2YH M=&U02P$"% ,4 " 6#,R,E\R,#(S,3$R-2YH=&U02P4& H "@"> @